Назад | Перейти на главную страницу

Openstack - Связь между экземплярами на 2 отдельных узлах

У меня следующая настройка: 1 x узел управления (узел A) 2 x вычислительных узла (узлы B и C) 1 x узел тома (узел D)

Соответствующие конфигурации: VlanManager multi_host = true

Узел B [eth0 = 192.168.6.102; br100 = 10.1.0.6] Узел C [eth0 = 192.168.6.103; br100 = 10.1.0.4]

Я могу пинговать между экземплярами на одном узле, но не с экземплярами в разных узлах. Если я запускаю "brctl br100 eth0", экземпляры могут пинговать между узлами, но я теряю связь на eth0 (192.168.6.102/192.168.6.103)

Что мне нужно изменить, чтобы иметь возможность пинговать экземпляры между узлами, сохраняя при этом нормальное соединение на eth0?

Мне кажется, что вы хотите запускать свои узлы с помощью единого физического сетевого интерфейса. То, что вы видите, это нормально, потому что когда вы порабощаете eth0 физический интерфейс к br100 мосту, вы должны назначить IP-адреса самому мосту, а не физическому интерфейсу.

Eсть хороший пример в руководстве OpenStack, но оно не охватывает случай, когда ваш узел обрабатывает две разные IP-сети на одном физическом интерфейсе. Вы можете сделать это, добавив адрес в br100. Подытоживая соответствующие части:

  1. В /etc/nova/nova.conf на узле B у вас будет что-то вроде:

    my_ip=10.1.0.6
    public_interface=br100
    vlan_interface=eth0
    flat_network_bridge=br100
    flat_interface=eth0
    
  2. В /etc/network/interfaces на узле B у вас будет что-то вроде:

    auto br100
    iface br100 inet static
        bridge_ports eth0
        bridge_stp off
        bridge_maxwait 0
        bridge_fd 0
        address 192.168.6.102
        netmask 255.255.255.0
        network 192.168.6.0
        broadcast 192.168.6.255
        gateway 192.168.6.xxx
    
    auto br100:1
    iface br100:1 inet static
        address 10.1.0.6
        netmask 255.255.255.0
        broadcast 10.1.0.255
    

Я считаю, что это должно работать правильно.