使用 KVM 和 libvirt 的持久网络配置

使用 KVM 和 libvirt 的持久网络配置

我们的环境将使用 kickstart 动态设置一个 KVM 主机(很简单)。

困难的部分是处理网络配置并保持 VLAN 配置(以及可能的网桥/主机配置)在重启后持久。

我们有一个动态环境,我希望能够像使用典型交换机一样配置虚拟交换机端口,其中配置在重新启动后仍然存在(可能自动添加到配置文件中)

又名:
cisco:交换机端口模式访问;交换机端口访问 vlan 4
brocade:vlan 4;未标记 e 0/1/2

我不太确定这里的“正确”决定是什么,openvswitch 是否是我正在寻找的,或者它是否可以使用 linux 桥接器和 libvirt 来完成。我很迷茫,很难找到可用的。我知道 OpenStack 可以做到这一点,但对我来说,了解 OpenStack 如何做到这一点会更有趣,这样我们就可以实现它的部分

所以我的问题是:在 KVM 上保留 vlan/网络配置的最佳/最简单的方法是什么?

答案1

这很简单。通常,你会在主机上使用桥接,桥接充当虚拟机和物理网卡插入的虚拟交换机:

网络 -> 主机 NIC -> BRIDGE <- VM

使用 VLAN 后,情况会变得稍微复杂一些:

网络(中继端口)-> 主机 NIC -> 标记 IF -> BRIDGE <- VM

所有这些都是在ifcfgRHEL 主机上的脚本中进行管理的,例如 ifcfg-eth0(主机 NIC);ifcfg-eth0.100(标记 IF);ifcfg-br100(在标记接口之上工作的桥接接口,传输标记流量)。

如果您需要多个 VLAN,只需添加更多 ifcfg-eth0.tagNumber 接口,并在每个接口上构建一个桥,以供需要在标记网络上插入的虚拟机使用。

希望这有意义,它真的很简单。

编辑:

  • 如果您只想在交换机上设置一个标签,那也没问题,只需标记端口上的流量,然后使用网桥。由于到达 NIC 的所有内容都将被标记,因此网桥将按原样将流量中继到虚拟机
  • 对于每个 VLAN,您只需创建一个网桥,然后将虚拟机插入该网桥即可访问标记流量。如果您要使用的 VLAN 数量很少,只需创建所有这些 VLAN IF 和网桥,然后将虚拟机动态插入您需要的任何网桥+VLAN,而无需触及主机配置

相关内容