Configurar network bonding no CentOS/RHEL 6

Network bonding é a agregação de duas ou mais placas de rede em uma interface de bond. Também conhecido como NIC Teaming, provê balanceamento de carga e/ou tolerância a falhas.

Segue o procedimento para configurar o bonding de rede no CentOS/RHEL 6; neste caso, temos duas placas de rede (eth0 e eth1) e criaremos a interface de bond bond0:

  1. Crie o arquivo da interface de bond (/etc/sysconfig/network-scripts/ifcfg-bond0); no arquivo, configure IPADDR, NETMASK e GATEWAY (opcional):
    DEVICE=bond0
    IPADDR=192.168.1.9
    NETMASK=255.255.255.0
    GATEWAY=192.168.1.1
    TYPE=Bond
    ONBOOT=yes
    NM_CONTROLLED=no
    BOOTPROTO=static
  2. Edite os arquivos das interfaces eth0 (/etc/sysconfig/network-scripts/ifcfg-eth0) e eth1 (/etc/sysconfig/network-scripts/ifcfg-eth1); configure MASTER e SLAVE; não configure IPADDR, NETMASK e GATEWAY:
    DEVICE=eth0
    TYPE=Ethernet
    ONBOOT=yes
    NM_CONTROLLED=no
    MASTER=bond0
    SLAVE=yes
    
    DEVICE=eth1
    TYPE=Ethernet
    ONBOOT=yes
    NM_CONTROLLED=no
    MASTER=bond0
    SLAVE=yes
  3. Crie o arquivo de bond (/etc/modprobe.d/bonding.conf):
    alias bond0 bonding
    options bond0 mode=0 miimon=100

    Seguem os valores possíveis para mode:

    ValorModeDescrição
    0balance-rrRound-robin policy: padrão, provê balanceamento de carga e tolerância a falhas.
    1active-backupActive-backup policy: provê tolerância a falhas.
    2balance-xorXOR policy: provê balanceamento de carga e tolerância a falhas.
    3broadcastBroadcast policy: provê tolerância a falhas.
    4802.3adAgregação de link dinâmico IEEE 802.3ad.
    5balance-tlbAdaptive transmit load balancing: provê balanceamento de carga.
    6balance-albAdaptive load balancing: provê balanceamento de carga.

  4. Reinicie o servidor.

Para verificar o estado da interface de bond, execute:

cat /proc/net/bonding/bond0

IP
35.172.217.174