Además veremos la configuración específica de los switches.
Primer servidor con Ubuntu 12.04, vamos a configurar dos bondings y un bridge con 6 interfaces en total (eth0 hasta eth5).
El esquema de conexión es el siguiente:
Necesitamos tener instalados algunos paquetes:
# aptitude install bridge-utils ifenslave-2.6
Modificamos el fichero /etc/network/interfaces:
auto br0
iface br0 inet static
address 192.168.164.21
netmask 255.255.255.0
network 192.168.164.0
broadcast 192.168.164.255
gateway 192.168.164.1
# # dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 192.168.100.182 192.168.100.189 192.168.100.183
dns-search rubensalazar.net
bridge_ports eth0 eth1
bridge_fd 9
bridge_hello 2
bridge_maxage 12
bridge_stp on
Reiniciamos el servicio de red:
# /etc/init.d/networking restart
Podemos comprobar si ha funcionado :
# brctl showLa configuración en los switches es idéntica en los dos, con un show run vemos la configuración de esa interfaz:
bridge name bridge id STP enabled interfaces
br0 8000.001b78976e50 yes eth0
eth1
interface GigabitEthernet0/6
switchport access vlan 7
switchport mode access
spanning-tree portfast
Pasamos a configurar los bondings, añadimos en el fichero /etc/network/interfaces:
auto bond0iface bond0 inet staticslaves eth2 eth3bond_mode 4bond_miimon 100bond_updelay 200bond_downdelay 200address 10.0.1.21netmask 255.255.255.0auto bond1iface bond1 inet staticslaves eth4 eth5bond_mode 4bond_miimon 100bond_updelay 200bond_downdelay 200address 10.0.2.21netmask 255.255.255.0auto eth2iface eth2 inet manualbond-master bond0
auto eth3iface eth3 inet manualbond-master bond0auto eth4iface eth4 inet manualbond-master bond1auto eth5iface eth5 inet manualbond-master bond1
El modo 4 indica el tipo de bonding que configuramos, podéis encontrar más información en:
http://en.wikipedia.org/wiki/Link_Aggregation_Control_Protocol#Link_Aggregation_Control_Protocol
http://systemadmin.es/2009/04/los-modos-de-bonding
Volvemos a reiniciar el servicio de red y comprobamos que funcionan:
# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer2 (0)
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 200
Down Delay (ms): 200
802.3ad info
LACP rate: slow
Min links: 0
Aggregator selection policy (ad_select): stable
Active Aggregator Info:
Aggregator ID: 1
Number of ports: 2
Actor Key: 17
Partner Key: 2
Partner Mac Address: 00:19:e8:e8:02:00
Slave Interface: eth2
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 00:26:55:d8:b5:99
Aggregator ID: 1
Slave queue ID: 0
Slave Interface: eth3
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 00:26:55:d8:b5:9b
Aggregator ID: 1
Slave queue ID: 0
# cat /proc/net/bonding/bond1
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer2 (0)
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 200
Down Delay (ms): 200
802.3ad info
LACP rate: slow
Min links: 0
Aggregator selection policy (ad_select): stable
Active Aggregator Info:
Aggregator ID: 1
Number of ports: 2
Actor Key: 17
Partner Key: 2
Partner Mac Address: 00:1e:14:db:05:80
Slave Interface: eth4
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 00:26:55:d8:b5:98
Aggregator ID: 1
Slave queue ID: 0
Slave Interface: eth5
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 00:26:55:d8:b5:9a
Aggregator ID: 1
Slave queue ID: 0
La configuración de los switches es más compleja, definimos dos port channels, uno por cada red:
interface Port-channel1
switchport access vlan 8
switchport mode access
spanning-tree portfast
!
interface Port-channel2
switchport access vlan 9
switchport mode access
spanning-tree portfast
interface GigabitEthernet0/7
switchport access vlan 8
switchport mode access
channel-group 1 mode active
spanning-tree portfast
!
interface GigabitEthernet0/8
switchport access vlan 8
switchport mode access
channel-group 1 mode active
spanning-tree portfast
!
interface GigabitEthernet0/9
switchport access vlan 9
switchport mode access
channel-group 2 mode active
spanning-tree portfast
!
interface GigabitEthernet0/10
switchport access vlan 9
switchport mode access
channel-group 2 mode active
spanning-tree portfast
Hola Rubén!
ResponderEliminarEstoy mirando el tema del bonding, pero no consiguo que termine de arrancar el bond master. Me aparece el mensaje "Waiting for bond master bond0 to be ready"
y si miro el fichero de /proc/net/bonding/bond0 veo que dice "Mii Status: down"
Tienes alguna idea de qué puede estar mal?
Gracias!
Hola.
ResponderEliminarSaca el resultado de: ifconfig -a
Las interfaces que forman parte de bond0 aparecen en la salida del comando.
Si tienes diferencias entra la salida con la opción -a y sin ella es que hay interfaces que no están configuradas o activas.
¿La configuración de los switches la has comprobado?.
Saludos.
Hola Rubén, al final lo he solucionado reiniciando :)
ResponderEliminarHe comprovado que el:
sudo /etc/init.d/networking restart
No arrancaba correctamente el bounding... he dejado un post con mi configuración:
http://www.poveravoce.net/blog/?p=184
Muchas gracias!
Hola Bro, Saludos y gracias por la info, yo solo tengo 2 eth y una wlan y quisiera hacer un bounding entre las 3 o por lo menos las 2 eth, Grax de nuevo man.
ResponderEliminarHola.
ResponderEliminarPara bonding con LACP no podrás hacerlo con las dos eth y la wlan, fíjate en la configuración necesaria en los switches.
Sino quieres LACP puedes hacer un bridge de todas las interfaces. De todos modos no te lo recomiendo, mejor las eth por un lado y la wifi por otro.
La configuración es como describe el artículo.
Saludos.
Hola espero me puedas ayudar por favor he estado queriendo configurar el bonding en ubuntu 12.04 pero por alguna razon no funciona del todo, lo que busco es sumar 2 anchos de banda (1 de 4 megas y otro de 15), por alguna razon no lo logro hacer ya intente algunas configuraciones pero sin exito, esta es la unica que ha servido pero solo veo que un eth trabaja y el de bond0 me podrias orientar en que estoy haciendo mal? un router tiene la ip 192.168.8.254 y el otro 192.168.7.254 ojala me pudieras ayudar que ya no encuentro forma, muchas gracias de antemano
ResponderEliminareste es el archivo /etc/network/interfaces
#auto lo
#iface lo inet loopback
auto eth1
iface eth1 inet manual
bond-master bond0
auto eth0
iface eth0 inet manual
bond-master bond0
auto bond0
iface bond0 inet static
address 192.168.8.177
netmask 255.255.255.0
gateway 192.168.8.254
dns-nameservers 192.168.8.254
bond-mode 802.3ad
bond-miimon 100
bond-lacp_rate 1
bond-slaves none
y el archivo gedit /etc/resolvconf/resolv.conf.d/head
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 192.168.8.254
nameserver 192.168.7.254
Hola.
Eliminar¿Qué resultado te da?:
cat /proc/net/bonding/bond0
ifconfig -a
También puede probar a hacer ping desde una interfaz en concreto con el parámetro -I, prueba con las dos interfaces y pon el resultado de estos comandos.
Saludos.
hola Ru, constantemente estoy revisando tu blog, ya que tienes mucha informacion de excelente calidad, referente a virtualizacion, xen y similares.
ResponderEliminartengo muchas dudas,actualmente soy novata con esto de la virtualizacion, que modo de bonding consideras el mas efectivo para balancear 6 tarjetas de red?
quiero balancear las 6 tarjetas y conectarlas a un bridge, sera eso posible, o necesito mas bridges?
Hola.
EliminarSi es posible tener un bridge con seis interfaces pero me parece que no es lo que necesitas exactamente.
¿Buscas agregar sus anchos de banda o buscas redundancia?, ¿Todas las tarjetas se conectan al mismo switch o a más de uno?, ¿el switch esta correctamente configurado?.
Una aproximación:
Primero crear un bonding con las seis interfaces, los tipos de bonding disponibles son (aunque no se que rendimiento buscas, me parece excesivo poner las seis interfaces en el mismo bonding):
0 - balance-rr
1 - active-backup
2 - balance-xor
3 - broadcast
4 - 802.3ad (LACP)
5 - balance-tlb
6 - balance-alb
Segundo crear un bridge, la primera interfaz que formará parte del bridge será el bonding, después las máquinas virtuales de xen agregarán sus interfaces a este bridge.
Espero haberte dado algunas pistas útiles.
Saludos.
Hola Ruben
ResponderEliminarEspero estes bien , te queria consultar es posible crear un bonding (activo-pasivo) , sobre un un bonding lacp , te comento tengo un lacp de 2 Gbps configurado en mi servidor , pero ambas interfaces estan en el mismo switch y quiero tener otro bonding lacp 2 Gbps conectado al switch 2 de respaldo , pero que el servidor sea quien determine por que bonding enviar la información.( por ejemplo si es que se cae un switch)