Como configurar Active-Backup para interfaces de red en RHEL7

por


Publicado en: mayo 22, 2018



En este artículo explicaremos como configurar Active-Backup para interfaces de red en RHEL7.

La finalidad de utilizar Active-Backup es proporcionar redundancia en caso de fallo de alguna interfaz de red (NIC), se mantiene solo una interfaz activa mientras las otras simplemente esperan una falla para ser activadas automáticamente y en cuestión de milisegundos como respaldo, este proceso también es llamado mecanismo de Fail Over.

Es importante mencionar que para esta configuración podemos utilizar bonding o teaming, ambas opciones realizan la misma función, no obstante, teaming es compatible con todas las características más nuevas y comunes de controladores, por esta razón y en mi preferencia utilizaré teaming para nuestro laboratorio de ejemplo.

Interfaces de Red (NIC´s)


Necesitaremos 2 interfaces de red (NIC´s), en nuestro caso serán las interfaces enp0s8 y enp0s9:

[[email protected] ~]# nmcli device status
DEVICE      TYPE      STATE         CONNECTION
virbr0      bridge    connected     virbr0
enp0s8      ethernet  disconnected  --
enp0s9      ethernet  disconnected  --
lo          loopback  unmanaged     --
virbr0-nic  tun       unmanaged     --

Creación de la Interfaz Virtual


Procedemos a crear la interfaz virtual maestra con el nombre que deseamos, en nuestro caso será “team1”.

[[email protected] ~]# nmcli connection add type team con-name team1 ifname team1 config '{"runner": {"name": "activebackup"}}'
Connection 'team1' (7ef52bd0-f1b9-4d78-899f-ff41cb4ff520) successfully added.

Dirección IP, Gateway y DNS


Configuramos la dirección IP, Gateway y DNS para la interfaz virtual team1.

[[email protected] ~]# nmcli connection modify team1 ipv4.addresses 192.168.2.200/24 ipv4.gateway 192.168.2.1 ipv4.dns 8.8.8.8
[[email protected] ~]# nmcli connection modify team1 ipv4.method manual
[[email protected] ~]# nmcli connection modify team1 connection.autoconnect yes

Ligar las Interfaces Esclavas a la Interfaz Maestra


Procedemos a ligar las interfaces esclavas enp0s8 y enp0s9, a la interfaz maestra con los nombres que deseamos, en nuestro caso team1-port1 y team1-port2, como se muestra a continuación:

[email protected] ~]# nmcli connection add type team-slave con-name team1-port1 ifname enp0s8 master team1
Connection 'team1-port1' (af9c2414-945f-489b-b21c-f64852418c05) successfully added.
[[email protected] ~]# nmcli connection add type team-slave con-name team1-port2 ifname enp0s9 master team1
Connection 'team1-port2' (bd31a3cd-55b6-4bf5-ba76-ce7218a806ce) successfully added.

Habilitar la Interfaz Virtual team1


Habilitamos la interfaz virtual team1, esta misma reconocerá y levantará los esclavos ligados a ella:

[[email protected] ~]# nmcli connection up team1
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/12)

Verificar la Configuración


Finalmente verificamos la configuración con el comando teamdctl:

[[email protected] ~]# teamdctl team1 state view
setup:
  runner: activebackup
ports:
  enp0s8
    link watches:
      link summary: up
      instance[link_watch_0]:
        name: ethtool
        link: up
        down count: 0
  enp0s9
    link watches:
      link summary: up
      instance[link_watch_0]:
        name: ethtool
        link: up
        down count: 0
runner:
  active port: enp0s8

Con esta configuración podemos observar que la interfaz activa es enp0s8, la interfaz enp0s9 esta activa, pero en espera para entrar en funcionamiento en caso de fallo.

Verificar el Resultado


Ahora procedemos a probar nuestra configuración desactivando la interfaz activa enp0s8 y automáticamente la interfaz enp0s9 cumplirá la función de respaldo quedando activa, este proceso se lleva a cabo en cuestión de milisegundos.

[[email protected] ~]# nmcli connection down team1-port1
Connection 'team1-port1' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/13)
[[email protected] ~]# teamdctl team1 state view
setup:
  runner: activebackup
ports:
  enp0s9
    link watches:
      link summary: up
      instance[link_watch_0]:
        name: ethtool
        link: up
        down count: 0
runner:
  active port: enp0s9

Esperamos que este artículo les sea de utilidad.

Autor del Artículo

Álvaro Campos Castro

Álvaro Campos Castro

System Administrator.

  • Ingeniero en Sistemas de Información. UNA.
  • Red Hat Certified System Administrator (RHCSA®)
  • Red Hat Certified Engineer (RHCE®)