Bonding Debian Linux: mudanças entre as edições

De ISPUP!
Ir para navegação Ir para pesquisar
Sem resumo de edição
Sem resumo de edição
 
Linha 22: Linha 22:
         bond-xmit-hash-policy layer2+3
         bond-xmit-hash-policy layer2+3
         address 199.18.0.10/27
         address 199.18.0.10/27
== Verificando o LACP se está funcionando ==
Vamos necessitar de um reboot e para sabermos se ficou ok olharemos o '''/proc''' e veremos algo parecido com o que está abaixo, checando os status das interfaces. No exemplo abaixo a porta '''enp1s0f1''' está down e por isso necessita ser checada:
Vamos necessitar de um reboot e para sabermos se ficou ok olharemos o '''/proc''' e veremos algo parecido com o que está abaixo, checando os status das interfaces. No exemplo abaixo a porta '''enp1s0f1''' está down e por isso necessita ser checada:
  # cat /proc/net/bonding/bond0
  # cat /proc/net/bonding/bond0
Linha 100: Linha 102:
     port number: 1
     port number: 1
     port state: 1
     port state: 1
== Checando o tráfego se está balanceado ==
Não esqueça de conferir o tráfego se está balanceado. Podemos usar o pacotes bmon e olhar as interfaces e corrigir se algo estiver errado. O problema acima é porque não existe um '''cordão óptico''' ligando a interface '''enp1s0f1''' no '''switch''':
Não esqueça de conferir o tráfego se está balanceado. Podemos usar o pacotes bmon e olhar as interfaces e corrigir se algo estiver errado. O problema acima é porque não existe um '''cordão óptico''' ligando a interface '''enp1s0f1''' no '''switch''':
  # apt install bmon
  # apt install bmon
Linha 107: Linha 111:
[[Arquivo:Bmon bonding.png|nenhum|miniaturadaimagem|748x748px]]
[[Arquivo:Bmon bonding.png|nenhum|miniaturadaimagem|748x748px]]
Se estiver tudo OK verá um tráfego balanceado.
Se estiver tudo OK verá um tráfego balanceado.
== Um exemplo de configuração no Mikrotik ==
Abaixo a imagem da configuração de Bonding que costumo usar nos equipamentos Mikrotik:
[[Arquivo:Bonding mikrotik.png|nenhum|miniaturadaimagem|457x457px]]
Essa documentação foi útil? Compartilhe, divulgue e ajude outras pessoas. Meus contatos podem ser vistos [[Sobre mim|aqui]].
__INDEXAR__
__INDEXAR__
[[Categoria:Dicas Técnicas]]
__FORCARTDC__

Edição atual tal como às 20h51min de 1 de janeiro de 2023


Introdução

Nessa dica darei um exemplo de bonding ou como conhecemos como LACP (Link Aggregation Control Protocol), em um Debian. Em outras distribuições GNU/Linux pode ser diferente mas o conceito é o mesmo e pode te servir como comparação.

Primeiro precisamos instalar um pacote essencial e configurar o módulo:

# apt install ifenslave
# modprobe bonding
# echo "bonding" >> /etc/modules

Sem os passos acima, seu LACP não subirá. Outro detalhe é que com a configuração que mostrarei, funcionou muito bem com diversos vendors como Huawei, Cisco e Mikrotik. Importante sempre checar se o balanceamento ficou OK.

Pegarei como exemplo uma interface Intel X520-SR2 que possui 2 portas de 10Gbps ópticas sfp+ nomeadas como enp1s0f0 e enp1s0f1.

auto bond0
iface bond0 inet static
        bond-slaves enp1s0f0 enp1s0f1
        bond_mode 802.3ad
        bond-ad_select bandwidth
        bond_miimon 100
        bond_downdelay 200
        bond_updelay 200
        bond-lacp-rate 1
        bond-xmit-hash-policy layer2+3
        address 199.18.0.10/27

Verificando o LACP se está funcionando

Vamos necessitar de um reboot e para sabermos se ficou ok olharemos o /proc e veremos algo parecido com o que está abaixo, checando os status das interfaces. No exemplo abaixo a porta enp1s0f1 está down e por isso necessita ser checada:

# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v5.10.0-19-amd64

Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer2+3 (2)
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 200
Down Delay (ms): 200
Peer Notification Delay (ms): 0

802.3ad info
LACP rate: fast
Min links: 0
Aggregator selection policy (ad_select): bandwidth
System priority: 65535
System MAC address: 8c:dc:d4:af:c2:dc
Active Aggregator Info:
        Aggregator ID: 1
        Number of ports: 1
        Actor Key: 15
        Partner Key: 3649
        Partner Mac Address: f4:de:af:69:c3:40

Slave Interface: enp1s0f0
MII Status: up
Speed: 10000 Mbps
Duplex: full
Link Failure Count: 1
Permanent HW addr: 8c:dc:d4:af:c2:dc
Slave queue ID: 0
Aggregator ID: 1
Actor Churn State: none
Partner Churn State: none
Actor Churned Count: 1
Partner Churned Count: 1
details actor lacp pdu:
    system priority: 65535
    system mac address: 8c:dc:d4:af:c2:dc
    port key: 15
    port priority: 255
    port number: 1
    port state: 63
details partner lacp pdu:
    system priority: 32768
    system mac address: f4:de:af:69:c3:40
    oper key: 3649
    port priority: 32768
    port number: 11
    port state: 61

Slave Interface: enp1s0f1
MII Status: down
Speed: Unknown
Duplex: Unknown
Link Failure Count: 0
Permanent HW addr: 8c:dc:d4:af:c2:dd
Slave queue ID: 0
Aggregator ID: 2
Actor Churn State: churned
Partner Churn State: churned
Actor Churned Count: 1
Partner Churned Count: 1
details actor lacp pdu:
    system priority: 65535
    system mac address: 8c:dc:d4:af:c2:dc
    port key: 0
    port priority: 255
    port number: 2
    port state: 71
details partner lacp pdu:
    system priority: 65535
    system mac address: 00:00:00:00:00:00
    oper key: 1
    port priority: 255
    port number: 1
    port state: 1

Checando o tráfego se está balanceado

Não esqueça de conferir o tráfego se está balanceado. Podemos usar o pacotes bmon e olhar as interfaces e corrigir se algo estiver errado. O problema acima é porque não existe um cordão óptico ligando a interface enp1s0f1 no switch:

# apt install bmon
# bmon -b -p bond0,enp1s0f0,enp1s0f1

Repare na imagem abaixo que uma das interfaces do bonding está fora e por isso não há tráfego:

Se estiver tudo OK verá um tráfego balanceado.

Um exemplo de configuração no Mikrotik

Abaixo a imagem da configuração de Bonding que costumo usar nos equipamentos Mikrotik:

Essa documentação foi útil? Compartilhe, divulgue e ajude outras pessoas. Meus contatos podem ser vistos aqui.