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

Несколько сетей на интерфейс в OpenStack в Hetzner

Я пытаюсь запустить небольшую установку OpenStack на нескольких серверах, размещенных в hetzner.de, в настоящее время я развертываю базовую установку на двух серверах.

Все серверы работают под управлением Ubuntu, они подключены друг к другу через локальную сеть, работающую в сети 172.16.0.x. Вот содержимое / etc / network / interfaces на одном из серверов:

auto eth1
iface eth1 inet static
    address 172.16.0.1
    broadcast 172.16.0.255
    netmask 255.255.255.0

Первый сервер - это контроллер, который подключен к общедоступному Интернету через eth0 (на него указывает один IP-адрес, сервер настраивается с помощью DHCP). Второй сервер - это всего лишь сетевой узел, и я не могу правильно настроить на нем нейтрон.

Второй сервер также имеет два интерфейса, eth1 (LAN) работает нормально, но eth0 не разрешает доступ в Интернет. Я считаю, что это может быть проблема с маршрутизацией. Есть блок / 28, указывающий на eth0 + один IP, который можно настроить с помощью DHCP. Вот содержимое / etc / network / interfaces на нейтронном узле:

auto eth0
iface eth0 inet manual

Судя по тому, что я читал, это должно быть руководство, чтобы нейтрон мог его настроить. Я следовал руководству по установке Ubuntu с официального сайта OpenStack. Вот результат ovs-vsctl show:

╰─➤  ovs-vsctl show
d57fbedc-d9c8-4102-9edf-0b8defa49d98
    Bridge br-int
        fail_mode: secure
        Port br-int
            Interface br-int
                type: internal
        Port int-br-ex
            Interface int-br-ex
                type: patch
                options: {peer=phy-br-ex}
        Port "qr-72448652-b4"
            tag: 1
            Interface "qr-72448652-b4"
                type: internal
        Port patch-tun
            Interface patch-tun
                type: patch
                options: {peer=patch-int}
        Port "tapfb4cc7c2-ec"
            tag: 1
            Interface "tapfb4cc7c2-ec"
                type: internal
    Bridge br-ex
        Port "eth0"
            Interface "eth0"
        Port phy-br-ex
            Interface phy-br-ex
                type: patch
                options: {peer=int-br-ex}
        Port "qg-bc735ff4-fe"
            Interface "qg-bc735ff4-fe"
                type: internal
        Port br-ex
            Interface br-ex
                type: internal
    Bridge br-tun
        Port patch-int
            Interface patch-int
                type: patch
                options: {peer=patch-tun}
        Port "gre-ac100003"
            Interface "gre-ac100003"
                type: gre
                options: {df_default="true", in_key=flow, local_ip="172.16.0.2", out_key=flow, remote_ip="172.16.0.3"}
        Port br-tun
            Interface br-tun
                type: internal
    ovs_version: "2.0.2"

Я побежал ovs-vsctl add-br br-ex и ovs-vsctl add-port br-ex eth0. Затем я выполнил эту команду, чтобы добавить эту сеть в нейтрон:

neutron subnet-create ext-net --name ext-subnet --allocation-pool start=x.x.x.193,end=x.x.x.206 --disable-dhcp --gateway x.x.x.193 x.x.x.192/28

Вот вывод маршрута -n на сетевом узле.

╭─route -n                                                                                                   127 ↵
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.8.0.0        172.16.0.1      255.255.255.0   UG    0      0        0 eth1
x.x.x.192       0.0.0.0         255.255.255.240 U     0      0        0 br-ex
172.16.0.0      0.0.0.0         255.255.255.0   U     0      0        0 eth1

Очевидно, что маршрутизация недействительна, но я не уверен, как она должна выглядеть. Есть какие-нибудь советы, как мне заставить работать сеть?