Como Configurar Alta Disponibilidade de Interfaces de Rede com Bonding no Linux
Quando falamos de infraestrutura, um dos pré-requisitos é se pensar em alta disponibilidade, seja ela de:
- Máquinas Virtuais
 - Storages
 - Máquinas Físicas
 - Links de Internet
 - E etc.
 
Nesse post vou explicar como configurar um Bonding no Linux.
O Bonding, é uma técnica utilizada para fazer a alta disponibilidade de interfaces de rede, sendo assim podemos ter duas ou mais interfaces vinculadas a um único IP e fazer um Load Balance através das interfaces de modo que o tráfego de rede fica dividido entre elas.
Todas as configurações abaixo foram feitas em um CentOS 7.
O primeiro passo é acessar o diretório: /etc/sysconfig/network-scripts/
Dentro dele vamos criar um arquivo assim: ifcfg-bond0
DEVICE=bond0 IPADDR=10.2.0.202 NETMASK=255.0.0.0 BOOTPROTO=none ONBOOT=yes BONDING_OPTS="mode=0 miimon=100"
Agora dentro desse mesmo diretório temos os arquivos das placas de rede:
- ifcfg-enp11s0
 - ifcfg-enp21s0
 
Deixe os arquivos da seguinte forma:
DEVICE=enp11s0 ONBOOT=yes MASTER=bond0 SLAVE=yes BOOTPROTO=none
DEVICE=enp21s0 ONBOOT=yes MASTER=bond0 SLAVE=yes BOOTPROTO=none
Agora use o comando nmcli con reload e veja que as interfaces já estão funcionando.
Os modos de configuração do Bonding, podem ser encontrados diretamente na documentação do kernel do linux.
Uma breve lista dos modos segue abaixo:
- balance-rr or 0
 - active-backup or
 - balance-xor or 2
 - broadcast or 3
 - 802.3ad or 4
 - balance-tlb or 5
 - balance-alb or 6
 
Referência:
 https://www.kernel.org/doc/Documentation/networking/bonding.txt?

 
 
 





