KVM 和 VZ 之间的 Proxmox 专用网络

KVM 和 VZ 之间的 Proxmox 专用网络

抱歉问了这个最终变得微不足道的问题,但我已经为此奋斗了一天多的时间,但到目前为止还无法自己解决这个问题。

情况

Proxmox 主机运行一组 openvz 节点。
每个节点都有一个来自 /28 子网的公共 IP,以及一个用于节点<>节点和节点<>主机网络的内部 IP。到目前为止,一切都运行正常。

现在我必须添加一个基于 KVM 的 Windows 实例,该实例应该可以从内部网络访问。我正在寻找有关如何配置网络设置(主机和 KVM)的建议

目前/etc/network/interfaces包含:

# loopback
auto lo
iface lo inet loopback

# eth0
auto  eth0
iface eth0 inet static
  address       xxx.xxx.77.119
  broadcast     xxx.xxx.77.127
  netmask       255.255.255.255
  gateway       xxx.xxx.77.97
  pointopoint   xxx.xxx.77.97

# default route subnet access
up route add -net xxx.xxx.77.96 netmask 255.255.255.224 gw xxx.xxx.77.97 eth0 

内部 IP 已通过 Proxmox/vzctl 分配,位于10.0.0.0/24子网中:

  • nde01 > 10.0.0.1
  • nde02 > 10.0.0.2
  • ETC

在我的情况下,有问题的 KVM 实例是 node12,因此它应该具有 IP 10.0.0.12。并且它应该能够与其他节点和主机通信。据我所知,解决方案是vmbr0在主机上添加网桥,但具体应该如何配置呢?KVM 节点的相应设置是什么。

我确实尝试了几十种组合,但都没有成功......

KVM 节点本身的网络接口似乎安装正确,确实使用了 virtio 驱动程序,而且看起来不错。(接口本身,而不是 TCP/IP 配置)

任何帮助都将非常感激!

附加答案是如何让 KVM 实例通过 NAT 访问互联网。但是有了内部网络,我已经非常高兴了!

答案1

在 proxmox 上,可以使用虚拟接口在 VM 或容器或任何其他设备之间创建 VLAN。由于没有物理链接,它不会离开服务器。

只需在 /etc/network/interface 中输入类似

auto vmbr2
iface vmbr2 inet manual
    bridge_ports dummy0
    bridge_stp off
    bridge_fd 0
    pre-up modprobe dummy numdummies=4

并使用 vmbr2 满足所有仅需要内部网络的节点的内部需求。顺便说一下,它将在重启后持续存在......

答案2

我认为这个任务的最佳解决方案是 OpenvSwitch。你可以按照我的手册安装它:http://www.stableit.ru/2013/11/openvswitch-19-centos-6.html

您需要创建 OpenvSwitch 桥: ovs-vsctl add-br private_switch

使用本手册将 KVM VM 连接到它http://libvirt.org/formatnetwork.html(CTRL+F 虚拟开关)。

之后,你应该使用以下命令将 veth(不是 venet)接口添加到 OpenVZ VE:vzctlset 1111 --netif_add ct1111 --save

接下来您需要手动配置它: vzctl exec 1111 "ifconfig ct1111 192.168.1.1/24 up"

接下来您应该使用以下命令将 OpenVZ veth 接口添加到 OpenVswitch: ovs-vsctl add-port private_switch veth1111.1111

这会起作用。但是每次 VZ ct 重新启动时,您都需要重新配置交换机和 IP 地址。为了解决这个问题,您将使用我的脚本进行 OpenvSwitch 和 OpenVZ 集成:https://bugzilla.openvz.org/show_bug.cgi?id=2896(如果您对我的脚本写一些带有反馈的评论就好了!)。

相关内容