Configurar un bonding en Proxmox

Cuando realizamos la instalación de Proxmox, el instalador configura un bridge con el nombre vmbr0, conectado a la primera interfaz de red.

Por ejemplo:

auto lo
iface lo inet loopback

iface eth0 inet manual

auto vmbr0
iface vmbr0 inet static
        address  172.19.144.2
        netmask  255.255.254.0
        gateway  172.19.144.1
        broadcast  172.19.145.255
        network 172.19.144.0
        bridge_ports eth0
        bridge_stp off
        bridge_fd 0

        dns-nameservers 172.19.144.3 172.19.144.2 208.67.222.222
        dns-search valledeljerte3
up iptables-restore < /etc/network/iptables

Los bridges son como switches implementados mediante software, de manera que:

  • Todas las máquinas virtuales pueden compartir un solo puente.
  • Podemos crear múltiples puentes para separar dominios de red.
  • Cada host puede tener hasta 4094 puentes.

Para configurar un bridge en linux, es necesario tener instalado el paquete bridge-utils. Éste paquete ya viene instalado en Proxmox. Si queréis configurar bridges en Debian o Ubuntu, tendréis que instalarlo:

apt update && apt -y install bridge-utils

Es importante no confundir bridging con bonding porque son dos cosas completamente diferentes.

El bonding nos permite unir dos o más interfaces de red físicos para aumentar el ancho de banda o la redundancia.

El modo bridge de Proxmox permite que cada uno de los sistemas invitados tenga una o varias interfaces de red virtuales conectadas al bridge. El efecto que se consigue es como si la tarjeta de red de cada máquina virtual, se encontrara directamente conectada a un switch de nuestra LAN. Ese papel de switch lo estaría desempeñando el anfitrión donde hemos instalado Proxmox VE.

Lo que vamos a hacer en este post es configurar un bonding en Proxmox con las interfaces de red físicas y, sobre el bonding, crearemos un bridge. De este modo, todas las máquinas virtuales aprovecharán el bonding.

Antes de nada, es importante decir que a cada una de las interfaces de red que forman el bonding se le llama slave.

Al configurar el bonding tendremos que elegir cual de los diferentes modos vamos a usar, de entre todos los disponibles:

  • mode=0 (roundrobin): Es el modo por defecto. En este caso se transmiten los paquetes en orden secuencial y de forma rotativa por las diferentes interfaces de red. Este modo de funcionamiento permite distribuir la carga y nos proporciona tolerancia a fallos
  • mode=1 (activo-pasivo): Si utilizamos este modo, tan sólo tendremos activo un slave en concreto, de manera que, en el momento que éste falle, se pasará a usar el otro. Este modo de funcionamiento nos ofrece tolerancia a fallos.
  • mode=2 (xor policy): Este modo selecciona un interfaz para transmitir los paquetes en función del resultado de una operación XOR entre las direcciones MAC de origen y destino. Este modo nos proporciona balanceo de carga y garantizamos que para un mismo origen/destino se usa la misma interfaz.
  • mode=3 (broadcast): Transmite por todas las interfaces slave. Este modo nos ofrece tolerancia a fallos.
  • mode=4 (802.3ad):  En este modo se crean grupos de agregación de interfaces en los que se comparten parámetros de configuración como la velocidad y el modo duplex. Ésto nos proporciona alta disponibilidad y un aumento de la velocidad. Este modo requiere que el switch tenga soporte LACP.
  • mode=5 (balance-tlb): Este modo transmite balanceando la carga entre los slave en función de la carga de cada slave. En el caso que uno falle, la MAC salta a otro slave.
  • mode=6 (balance-alb): En este modo se realiza balanceo de carga tanto en el envío como en la recepción.

En nuestro caso, contamos con un Switch TP Link TL-SG2424 que tiene soporte para static LAG y LACP (Link Aggregation Control Protocol). Así que configuraremos usaremos el modo 4 de bonding.

Este contenido sólo se encuentra disponible para miembros con una suscripción activa. Suscríbete para ver este contenido. Puedes hacer login desde el menú ACCESO.

Si no disponéis de un switch con soporte LACP, podéis utilizar otros modos de bonding.

Un sysadmin no puede conformarse con que su sistema funcione. Debe optimizar para mejorar el rendimiento de los recursos con los que cuenta. No tiene mucho sentido contar con medios y no aprovecharlos. Configurar un bonding es una tarea relativamente sencilla.

Be the first to comment

Por favor acceder para comentar.