具有多个 VLAN 的 openvswitch

具有多个 VLAN 的 openvswitch

我在设置方面遇到了问题。我们目前使用 vmware+vsphere,正在切换到 kvm。

因此,我们需要使用 openvswitch 进行类似类型的设置。因此我们的设置将类似于

kvm host ip: 10.130.1.11

然后我们有像这样的 VLAN

lb: 10.130.2.0/24
web: 10.130.3.0/24

因此,我们希望拥有一个 kvm 主机,上面同时有 lb 和 web vms。我不想为连接到主机的每个 vlan 给桥接接口一个 ip。我想要一个像 vmware 所做的设置,其中他们的交换机似乎只是将流量路由到 vms,而 vms 正在标记自己的流量。

任何指点或提示都很好..谢谢!

答案1

有多种方法可以实现您的设置,但我将添加其中一种推荐的方法。使用 openvswitch

Openvswitch 是一个多层虚拟交换机,旨在实现网络自动化(来自其源站点)

http://openvswitch.org/download/ (这就是您下载软件包的地方)

我参考了以下安装和设置 openvswitch 的教程

http://blog.scottlowe.org/2012/08/17/installing-kvm-and-open-vswitch-on-ubuntu/

或者

https://n40lab.wordpress.com/2015/06/28/centos-7-installing-openvswitch-2-3-2-lts/

如果 VM 主机的接口处于中继模式,则可以执行以下操作。

您可以设置单个 OV 桥(当然这会有一个 IP,以及未标记/本机 VLAN)。

然后你可能需要设置VIRSH网络。像这样

<network>
<name>ovs-network2</name>
<forward mode='bridge'/>
<bridge name='br0'/>
<virtualport type='openvswitch'/>
<portgroup name='vlan-a'>
    <vlan>
      <tag id='1'/> 
    </vlan>
   </portgroup>
   <portgroup name='vlan-b' default='yes'>
   </portgroup>
 </network>

在我上面的例子中,vlan-a 用于标记流量,而 vlan-b 则未标记

定义/启动 virsh 网络后,您可能需要按以下顺序更改虚拟机的 XML 设置

<interface type='network'>
  <mac address='blah blah'/>
  <source network='ovs-network2' portgroup='vlan-a'/>
</inteface>

你可能还有其他设置,例如 virtio、addresstype

上述示例可能有助于您避免为每个标记的 VLAN 网桥设置多个 IP 地址。以下是一些值得参考的优秀参考资料。

http://blog.scottlowe.org/2012/11/07/using-vlans-with-ovs-and-libvirt/

这是另一篇进行类似设置的文章

https://www.netflask.net/transparent-vlan-tagging-libvirt-ovs/

我希望这有帮助! :)

答案2

您在这里使用 libvirt 吗?如果是这样,文档中有一个执行此操作的示例:http://libvirt.org/formatnetwork.html#elementVlanTag

相关内容