Problemas de configuração do teste de ligação do OpenVSwitch LACP

1

Eu quero testar a ligação do LACP em ovs. Eu tenho 3 computadores Ubuntu.

Usando 2 deles como um openvswitch e um deles como host.

O primeiro ubuntu (chame de switch1) tem três NICs (2 deles usb / eth converter)

  • 02: 00.0 Controlador de rede: Intel Corporation Centrino Wireless-N 1000 [Pico Condor]
  • 85: 00.0 Controlador Ethernet: Marvell Technology Group Ltd. 88E8072 Controlador Gigabit Ethernet PCI-E (rev 10)

O segundo ubuntu (chame de switch2) tem 2 NIC, um deles é usb / eth converter (mesmo com Marvell Tech acima)

O terceiro Ubuntu (chamar-lhe host) será host conectado ao switch1 e tem uma interface de interface Ethernet incorporada.

Eu quero vincular (lacp = active) eth0 end eth1 no switch 1 e no switch 2. E conecte a eth0 do switch1 à eth0 do switch2 com um cabo. E conecte o eth1 também.

Eu fiz toda a configuração. No switch1:

sudo ovs-vsctl add-br br0
sudo ovs-vsctl add-bond br0 bond0 eth0 eth1 lacp=active bond_mode=balance-tcp
sudo ovs-vsctl add-port br0 eth2
sudo ovs-vsctl show
72a6ecb7-8ad9-4c6e-b727-503207e3844c
    Bridge "br0"
        fail_mode: standalone
        Port "eth2"
            Interface "eth2"
        Port "bond0"
            Interface "eth0"
            Interface "eth1"
        Port "br0"
            Interface "br0"
                type: internal

Minha primeira pergunta é por que minhas interfaces estão desabilitadas por vínculo?

sudo ovs-appctl bond/show bond0
---- bond0 ----
bond_mode: balance-tcp
bond may use recirculation: yes, Recirc-ID : 2
bond-hash-basis: 0
updelay: 0 ms
downdelay: 0 ms
next rebalance: 7634 ms
lacp_status: configured
active slave mac: 00:00:00:00:00:00(none)

slave eth0: disabled
    may_enable: false

slave eth1: disabled
    may_enable: false

Eu fiz a mesma configuração de ovs no Switch2. E conectado switch1 e 2. para testar a conectividade de ligação eu planejei enviar um ping do host para qualquer lugar, colocar uma regra para switch1 que qualquer coisa vem para a porta eth2 deve ser espelhado para bond0 no switch1.

sudo ovs-vsctl -- set Bridge br0 mirrors=@m -- --id=@bond0 get Port bond0 -- --id=@eth2 get Port eth2 -- --id=@m create Mirror name=mymirror select-dst-port=@eth2 select-src-port=@eth2 output-port=@bond0

depois disso quando eu verificar o espelho

sudo ovs-vsctl list Mirror
_uuid               : 9bb76b24-d169-4a9c-ab00-ef0bd1df91e6
external_ids        : {}
name                : mymirror
output_port         : []
output_vlan         : []
select_all          : false
select_dst_port     : [04e085fc-3b4d-448f-b8cc-6d4fd2038381]
select_src_port     : [04e085fc-3b4d-448f-b8cc-6d4fd2038381]
select_vlan         : []
statistics          : {tx_bytes=212272, tx_packets=1112}

Eu começo a enviar ping do host para alternar 1 com ping -I eth0 anywhere.com e ouça no switch1 com sudo tcpdump -i eth2 Eu posso ver mensagens arp de hosts

... 17:00:49.293446 ARP, Request who-has s3-website-us-west-1.amazonaws.com tell 192.168.50.51, length 46 ...

Mas quando eu tento ouvir eth0 ou eth1 no Switch1, nada vem dessas portas. Não consigo escutar a porta bond0 com o tcpdump, mas posso verificar meus espelhos.

sudo ovs-vsctl list Mirror
_uuid               : 9bb76b24-d169-4a9c-ab00-ef0bd1df91e6
external_ids        : {}
name                : mymirror
output_port         : []
output_vlan         : []
select_all          : false
select_dst_port     : [04e085fc-3b4d-448f-b8cc-6d4fd2038381]
select_src_port     : [04e085fc-3b4d-448f-b8cc-6d4fd2038381]
select_vlan         : []
statistics          : {tx_bytes=212272, tx_packets=1112}

Eu posso ver que existem alguns bytes tx / rx, então eu espero que do meu switch1 envie tudo que vem da eth2 para o switch2 via bond0. Mas quando eu verificar interfaces switch2 com tcpdump, não vejo nada passar por switch2.

Aqui surge a minha segunda pergunta, existe alguma maneira de ouvir pacotes no bond0 (para ambos os switches)?

E minha última pergunta, eu suponho quando eu espelhar o tráfego eth2 para bond0 como porta de saída no switch1, ele deve encaminhar pacotes para switch2; há algo de errado com essa configuração, devo colocar algumas regras com o ovs-ofctl?

    
por Kürşat Kobya 05.01.2016 / 16:16

0 respostas