El bonding de red, o agregación de enlaces, es una técnica que permite combinar varias interfaces de red en un solo enlace lógico, ofreciendo redundancia, balanceo de carga y mayor ancho de banda. En esta guía, te mostraremos cómo configurar bonding en AlmaLinux y cómo solucionar problemas comunes.
¿Por qué usar Bonding de Red?
El bonding es útil en servidores que requieren alta disponibilidad y tolerancia a fallos. Con la agregación de enlaces, puedes:
- Redundancia: Si una interfaz falla, otra tomará su lugar sin interrumpir el servicio.
- Balanceo de carga: Repartir el tráfico de red entre varias interfaces para mejorar el rendimiento.
Requisitos Previos
- Servidor con AlmaLinux instalado.
- Múltiples interfaces de red físicas (al menos dos).
- Acceso de administrador (root) o privilegios de sudo.
Paso 1: Verifica las Interfaces de Red
Antes de configurar el bonding, es importante asegurarse de que las interfaces de red estén activas.
ip a
Verifica que las interfaces que deseas utilizar estén en estado UP. Por ejemplo:
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 ...
3: eno2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 ...
Paso 2: Instala el Paquete de Bonding (si es necesario)
En algunos casos, el controlador de bonding ya está disponible. Si no lo está, puedes instalarlo con:
dnf install iputils
Paso 3: Configura el Bonding
Edita o crea los archivos de configuración para las interfaces involucradas en /etc/sysconfig/network-scripts/.
Archivo de configuración para bond0:
vi /etc/sysconfig/network-scripts/ifcfg-bond0
Añade la siguiente configuración:
DEVICE=bond0
NAME=bond0
TYPE=Bond
BONDING_MASTER=yes
IPADDR=MIIP
PREFIX=24
BONDING_OPTS="mode=active-backup miimon=100"
ONBOOT=yes
BOOTPROTO=none
Archivos de configuración para las interfaces esclavas (eno1 y eno2):
vi /etc/sysconfig/network-scripts/ifcfg-eno1
Contenido:
DEVICE=eno1
ONBOOT=yes
MASTER=bond0
SLAVE=yes
BOOTPROTO=none
Repite lo mismo para eno2:
vi /etc/sysconfig/network-scripts/ifcfg-eno2
Paso 4: Reinicia el Servicio de Red
Después de configurar las interfaces, reinicia el servicio de red:
systemctl restart NetworkManager
Paso 5: Verifica el Estado del Bonding
Puedes comprobar el estado del bonding con el siguiente comando:
cat /proc/net/bonding/bond0
Deberías ver algo como esto:
Ethernet Channel Bonding Driver: v3.7.1
Bonding Mode: fault-tolerance (active-backup)
MII Status: up
Slave Interface: eno1
MII Status: up
Slave Interface: eno2
MII Status: up
Paso 6: Prueba la Conectividad
Prueba la conectividad para asegurarte de que el bonding está funcionando correctamente:
ping 8.8.8.8
Paso 7: Simula un Fallo para Probar el Failover
Desconecta una de las interfaces para probar la tolerancia a fallos:
ip link set eno1 down
Revisa el estado del bonding nuevamente:
cat /proc/net/bonding/bond0
Deberías ver que eno2 ha asumido el tráfico.
Para volver a subir la interfaz:
ip link set eno1 up