Libvirt Openvswitch

Aus xinux.net
Zur Navigation springen Zur Suche springen

Openswitch integration

/etc/network/interfaces

auto lo
iface lo inet loopback

auto vmbr0
allow-ovs vmbr0
iface vmbr0 inet manual
  ovs_type OVSBridge
  ovs_ports ens5 vlan1
  mtu 9000

auto ens5
iface ens5 inet manual
 ovs_bridge vmbr0
 ovs_type OVSPort
 ovs_options tag=1 vlan_mode=native-untagged trunks=2,252
 pre-up ovs-vsctl add-port vmbr0 ens5
 pre-up ovs-vsctl del-port vmbr0 ens5


allow-vmbr0 vlan1
iface vlan1 inet static
  ovs_type OVSIntPort
  ovs_bridge vmbr0
  ovs_options tag=1
  ovs_extra set interface ${IFACE} external-ids:iface-id=$(hostname -s)-${IFACE}-vif
  address 10.81.1.97
  netmask 255.255.0.0
  gateway 10.81.0.1
  dns-nameservers 10.80.0.2 10.80.0.3
  dns-search xinux.lan
  mtu 1500

ovs-network.xml

<network connections='1'>
  <name>ovs-network</name>
   <forward mode='bridge'/>
  <bridge name='vmbr0'/>
  <virtualport type='openvswitch'/>
  <portgroup name='vlan1'>
    <vlan>
      <tag id='1'/>
    </vlan>
  </portgroup>
  <portgroup name='vlan2'>
    <vlan>
      <tag id='2'/>
    </vlan>
  </portgroup>
  <portgroup name='vlan252'>
    <vlan>
      <tag id='252'/>
    </vlan>
  </portgroup>
  <portgroup name='vlan-all'>
    <vlan trunk='yes'>
      <tag id='1'/>
      <tag id='2'/>
      <tag id='252'/>
    </vlan>
  </portgroup>
</network>

Aktivieren

  • virsh net-define openswitch.xml
  • virsh net-start ovs-network
  • virsh net-autostart ovs-network
  • virsh net-list --all

XML Interface in der VM

<interface type='network'>
  <mac address='52:54:00:ce:c8:d1'/>
  <source network='ovs-network' portgroup='vlan1'/>
  <target dev='veth0-lulu'/>
  <model type='rtl8139'/>
  <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>