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

Engenheiro de Dados: nova oportunidade em TI

Profissões tendem a desaparecer e surgir com outras roupagens em um mundo onde a quantidade de conhecimento cresce exponencialmente. Embora esse fenômeno cause crises em algumas áreas, ele pode ser

Infraestrutura

Primeiros passos com PromQL

Nesse post vamos falar sobre o PromQL, que nada mais é do que uma linguagem de consulta do Prometheus, ela nos possibilita selecionar e agregar dados de séries temporais em

DevOps

Crie, versione e compartilhe sua infraestrutura através de Códigos com Ansible Galaxy!

O termo IaC – Infrastructure as Code – dá nome aos processos de provisionamento de infraestrutura tecnológica (principalmente em Cloud Computing) através de códigos, viabilizando o versionamento e a colaboração