Como visto em Arquitetura básica, uma interface BOND serve para alta disponibilidade, pois associamos duas ou mais interfaces em uma (BOND), que irá distribuir a carga, será tolerante a falhas e até aumentar a banda, pois irá proporcionar o paralelismo.
Para criar interfaces Em servidores Linux devemos seguir os seguintes passos (eu testei no Redhat 6, CentOS e Oracle Linux):
vi /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0 IPADDR=192.168.1.60 NETWORK=192.168.1.0 NETMASK=255.255.255.0 USERCTL=no BOOTPROTO=none ONBOOT=yes TYPE=BOND
* Os IPs acima são apenas como exemplo, devem ser da mesma família dos IP do servidor e das demais configurações que já está usando.
** Se reiniciarmos o Linux, esta interface irá ser iniciada. Note que até o momento só criamos uma interface virtual.
vi /etc/sysconfig/network-scripts/ifcfg-eth0
Para simular o Exalogic, configurei as seguintes interfaces net0 e eth0, então tenho os arquivos
ifcfg-eth0 e ifcfg-net0.
MASTER=bond0
e SLAVE=yes
). O meu arquivo ficou assim:# Intel Corporation 82540EM Gigabit Ethernet Controller
DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
HWADDR=08:00:27:23:41:0f
TYPE=Ethernet
NETMASK=255.255.255.0
IPADDR=192.168.1.50
GATEWAY=192.168.1.1
USERCTL=no
IPV6INIT=no
PEERDNS=yes
MASTER=bond0
SLAVE=yes
Faça o mesmo com as demais interfaces (deixando a bond0 como MASTER e adicionando a opção SLAVE=yes).
vi /etc/modprobe.conf
alias bond0 bonding
options bond0 mode=1 miimon=100
Onde as opções de mode são:
mode=0 (Balance Round Robin)
mode=1 (Active backup)
mode=2 (Balance XOR)
mode=3 (Broadcast)
mode=4 (802.3ad)
mode=5 (Balance TLB)
mode=6 (Balance ALB)
* Tem um artigo (em Inglês) que explica bem estes modos: http://unixfoo.blogspot.com.br/2008/02/network-bonding-part-ii-modes-of.html.
** Se alguém tiver dificuldades em entender, entre em contato que eu tento traduzir para o Português.
modprobe bonding
service network restart
Shutting down interface bond0: [ OK ]
Shutting down interface bond1: [ OK ]
Shutting down interface ilom: [ OK ]
Shutting down loopback interface: [ OK ]
Bringing up loopback interface: [ OK ]
Bringing up interface bond0: [ OK ]
Bringing up interface bond1: [ OK ]
Bringing up interface ilom: [ OK ]
Bringing up interface net0: [ OK ]
* As mensagens acima pode variar de acordo com as interfaces configuradas no servidor.
cat /proc/net/bonding/bond0
Bonding Mode: load balancing (round-robin) MII Status: up MII Polling Interval (ms): 100 Up Delay (ms): 200 Down Delay (ms): 200 Slave Interface: eth0 MII Status: up Link Failure Count: 0 Permanent HW addr: 10:ee:25:c8:fa:00 Slave Interface: eth1 MII Status: up Link Failure Count: 0 Permanent HW addr: 10:ee:25:c8:fa:18
Agora o seu Linux tem uma interface Virtual, com uma ou mais interfaces amarradas (bonding).