Búsqueda de sitios web

Cómo instalar y configurar la vinculación o formación de equipos de red en RHEL/CentOS 7 - Parte 11


Cuando un administrador del sistema desea aumentar el ancho de banda disponible y proporcionar redundancia y equilibrio de carga para las transferencias de datos, una característica del núcleo conocida como unión de red permite realizar el trabajo de una manera rentable.

Lea más sobre cómo aumentar o limitar el ancho de banda en Linux

En palabras simples, vincular significa agregar dos o más interfaces de red físicas (llamadas esclavas) en una única interfaz lógica (llamada maestra). Si una NIC (Tarjeta de interfaz de red) específica experimenta un problema, las comunicaciones no se ven afectadas significativamente siempre que las demás permanezcan activas.

Lea más sobre la vinculación de redes en sistemas Linux aquí:

  1. Equipos de red o NiC Bondin en RHEL/CentOS 6/5
  2. Vinculación o formación de equipos de NIC de red en sistemas basados en Debian
  3. Cómo configurar la vinculación o formación de equipos de red en Ubuntu

Habilitación y configuración de vínculos o equipos de red

De forma predeterminada, el módulo del kernel de vinculación no está habilitado. Por lo tanto, necesitaremos cargarlo y asegurarnos de que sea persistente en todos los arranques. Cuando se usa con la opción --first-time, modprobe nos alertará si falla la carga del módulo:

modprobe --first-time bonding

El comando anterior cargará el módulo de vinculación para la sesión actual. Para garantizar la persistencia, cree un archivo .conf dentro de /etc/modules-load.d con un nombre descriptivo, como /etc/modules-load .d/bonding.conf:

echo "# Load the bonding kernel module at boot" > /etc/modules-load.d/bonding.conf
echo "bonding" >> /etc/modules-load.d/bonding.conf

Ahora reinicie su servidor y una vez que se reinicie, asegúrese de que el módulo de vinculación se cargue automáticamente, como se ve en la Fig. 1:

En este artículo usaremos 3 interfaces (enp0s3, enp0s8 y enp0s9) para crear un vínculo, convenientemente llamado bond0.

Para crear bond0, podemos usar nmtui, la interfaz de texto para controlar NetworkManager. Cuando se invoca sin argumentos desde la línea de comando, nmtui muestra una interfaz de texto que le permite editar una conexión existente, activar una conexión o configurar el nombre de host del sistema.

Elija Editar conexión –> Agregar –> Vincular como se ilustra en la Fig. 2:

En la pantalla Editar conexión, agregue las interfaces esclavas (enp0s3, enp0s8 y enp0s9 en nuestro caso) y asígneles un nombre descriptivo (perfil) (por ejemplo, NIC #1, NIC #2 y NIC #3, respectivamente).

Además, deberá configurar un nombre y un dispositivo para el bono (TecmintBond y bond0 en la Fig. 3, respectivamente) y una dirección IP para bond0, ingrese una dirección de puerta de enlace y las IP de los servidores DNS.

Tenga en cuenta que no necesita ingresar la dirección MAC de cada interfaz ya que nmtui lo hará por usted. Puede dejar todas las demás configuraciones como predeterminadas. Consulte la Fig. 3 para obtener más detalles.

Cuando haya terminado, vaya a la parte inferior de la pantalla y elija Aceptar (consulte la Fig. 4):

Y tu estas listo. Ahora puede salir de la interfaz de texto y regresar a la línea de comando, donde habilitará la interfaz recién creada usando el comando ip:

ip link set dev bond0 up

Después de eso, puede ver que bond0 está ARRIBA y tiene asignado 192.168.0.200, como se ve en la Fig. 5:

ip addr show bond0

Prueba de vinculación o formación de equipos de red en Linux

Para verificar que bond0 realmente funciona, puede hacer ping a su dirección IP desde otra máquina o, lo que es aún mejor, observar la tabla de la interfaz del kernel en tiempo real (bueno, el tiempo de actualización en segundos viene dado por el opción -n) para ver cómo se distribuye el tráfico de red entre las tres interfaces de red, como se muestra en la Fig. 6.

La opción -d se utiliza para resaltar los cambios cuando ocurren:

watch -d -n1 netstat -i

Es importante señalar que existen varios modos de vinculación, cada uno con sus características distintivas. Están documentados en la sección 4.5 de la guía de administración de red de Red Hat Enterprise Linux 7. Dependiendo de tus necesidades elegirás uno u otro.

En nuestra configuración actual, elegimos el modo Round-robin (ver Fig. 3), que garantiza que los paquetes se transmitan comenzando con el primer esclavo en orden secuencial, terminando con el último esclavo y comenzando con el primero otra vez.

La alternativa Round-robin también se denomina modo 0 y proporciona equilibrio de carga y tolerancia a fallos. Para cambiar el modo de vinculación, puede utilizar nmtui como se explicó anteriormente (consulte también la Fig. 7):

Si lo cambiamos a Copia de seguridad activa, se nos pedirá que elijamos un esclavo que será la única interfaz activa en un momento determinado. Si dicha tarjeta falla, uno de los esclavos restantes ocupará su lugar y se activará.

Elijamos enp0s3 como esclavo principal, bajemos y volvamos a subir bond0, reiniciemos la red y mostremos la tabla de interfaz del kernel (ver Fig. 8).

Tenga en cuenta que las transferencias de datos (TX-OK y RX-OK) ahora se realizan únicamente a través de enp0s3:

ip link set dev bond0 down
ip link set dev bond0 up
systemctl restart network

Alternativamente, puede ver el vínculo como lo ve el núcleo (ver Fig. 9):

cat /proc/net/bonding/bond0

Resumen

En este capítulo hemos analizado cómo instalar y configurar la vinculación en Red Hat Enterprise Linux 7 (también funciona en CentOS 7 y Fedora 22+ ) para aumentar el ancho de banda junto con el equilibrio de carga y la redundancia para las transferencias de datos.

A medida que se tome el tiempo para explorar otros modos de vinculación, llegará a dominar los conceptos y la práctica relacionados con este tema de la certificación.

Si tiene preguntas sobre este artículo o sugerencias para compartir con el resto de la comunidad, no dude en hacérnoslo saber mediante el formulario de comentarios a continuación.