Múltiplas redes por interface no OpenStack em Hetzner

1

Estou tentando executar uma pequena instalação do OpenStack em alguns servidores hospedados no hetzner.de, atualmente estou implantando uma configuração básica em dois servidores.

Todos os servidores estão executando o Ubuntu, eles estão conectados uns aos outros usando uma rede local, rodando na rede 172.16.0.x. Aqui está o conteúdo de / etc / network / interfaces em um dos servidores:

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

Primeiro servidor é um controlador, que está conectado à internet pública através da eth0 (um endereço IP está apontando para ele, o servidor é configurado usando DHCP). O segundo servidor é apenas um nó de rede e não consigo configurar corretamente o nêutron.

O segundo servidor também possui duas interfaces, a eth1 (a LAN) funciona corretamente, mas a eth0 não permite acesso à internet. Eu acredito que pode ser um problema de roteamento. Há um bloco / 28 apontando para eth0 + um único IP, que pode ser configurado usando o DHCP. Aqui está o conteúdo de / etc / network / interfaces no nó de nêutrons:

auto eth0
iface eth0 inet manual

Pelo que eu li, tem que ser manual para deixar o nêutron configurá-lo. Eu segui o guia de configuração do Ubuntu no site oficial do OpenStack. Aqui está a saída de 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"

Eu corri ovs-vsctl add-br br-ex e ovs-vsctl add-port br-ex eth0 . Então eu corri este comando para adicionar essa rede ao nêutron:

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

Aqui está a saída da rota -n no nó de rede.

╭─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

O roteamento é claramente inválido, mas não sei como deve ser. Alguma dica de como eu deveria fazer a rede funcionar?

    
por Piotr Zduniak 20.03.2015 / 17:01

0 respostas