Я пытаюсь запустить выпуск Pike OpenStack Kolla с Open vSwitch на виртуальной машине как часть среды test / dev. Я чувствую, что упускаю что-то очевидное, но я просто понимаю это.
На виртуальной машине откройте vSwitch в контейнере докера.
Версия как на виртуальной машине, так и на хосте:
openvswitch-switch/xenial-updates,now 2.8.1-0ubuntu0.17.10.2~cloud0 amd64 [installed]
Я создаю мост, используя:
ovs-vsctl add-br br-ex
ovs-vsctl add-port br-ex ens3
ip addr flush ens3
Я запускаю те же команды на голом сервере, и он отлично работает. В виртуальной машине MAC-адрес для br-ex не соответствует MAC-адресу сетевой карты. MAC-адреса совпадают на экземпляре с голым металлом.
Если я удалю мост ovs-vsctl del-br
, трафик будет нормально проходить через интерфейс ens3.
Пока мост активен, ovs-system указана как возможность на nic.
ovs-vsctl show
<snip>
Bridge br-ex
Port "ens3"
Interface "ens3"
Port br-ex
Interface br-ex
type: internal
Основное различие, которое я вижу, заключается в том, что Ens3 в виртуальной машине использует драйвер net-virtio. Я не понимаю, почему это имеет значение.
Ubuntu 16.04.4 - это операционная система как для хоста, так и для виртуальной машины. Использование типичных вычислительных узлов KVM, QUEMU и libvirt.