Linux Bonding: Alta Disponibilidade em Interfaces de Rede

Linux Bonding: Alta Disponibilidade em Interfaces de Rede

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?

CURSOSCONSULTORIA    CONTATO

Anterior Log de Linux com o SystemD/Journald
Próxima Vagas de emprego - 4Linux

About author

Alisson Machado
Alisson Machado 19 posts

Alisson Menezes, atua como Gerente de T.I, 9 anos de experiência em projetos FOSS (Free and Open Source Software) e Python. Formação em Análise de Sistemas pela FMU e cursando MBA em BigData pela FIA, possui certificações LPI1, LPI2 e SUSE CLA, LPI DevOps e Exim - DevOps Professional. Autor dos cursos Python Fundamentals, Python for Sysadmins, MongoDB for Developers/DBAs, DevSecOps, Co-Autor do Infraestrutura Ágil e Docker da 4Linux e palestrantes em eventos como FISL, TDC e Python Brasil. É entusiasta das mais diversas áreas em T.I como Segurança, Bancos de dados NoSQL, DataScience mas tem como foco DevOps e Automação.

View all posts by this author →

Você pode gostar também

Infraestrutura

Instalação de uma Wiki em ambiente corporativo

Em ambientes corporativos, onde vários projetos são elaborados, algumas informações são muito importantes e muito específicas aos diretamente envolvidos, como configurações de ambiente e opções dos parâmetros. Neste contexto, a

Desenvolvimento

Instalação do Cuda 9 em distribuições Linux baseadas no Ubuntu

Se você deseja trabalhar com algoritmos de Machine Learning, provavelmente precisará usar processamento paralelo para acelerar os resultados dos seus algoritmos. Muitos frameworks como por exemplo, o TensorFlow, já possuem

Infraestrutura

Inventário de rede com OCS Inventory

O OCS Inventory é um software de gerência para inventários de dispositivos em rede, com ele é possível registrar todas as características de um computador incluindo: Versão do sistema operacional;