VPN en Rocks Cluster Distribution: ¿por qué y para quién?
Rocks Cluster Distribution está diseñada para construir y gestionar clústeres HPC, partiendo de CentOS/RHEL 7 y adaptando sus propios “rolls” (paquetes especializados) para todo, desde el head node hasta los compute nodes. Su gestor de paquetes es yum (o dnf en versiones más recientes), y normalmente no cuenta con entorno de escritorio en los nodos de cálculo en el head node puede haber ligeros entornos como Xfce o acceso Web (Open OnDemand). Los usuarios son administradores de sistemas e investigadores que requieren robustez, bajo overhead y configuraciones repetibles vía scripts y automatización.
En un entorno así, una VPN ha de cumplir requisitos de rendimiento (latencia mínima), facilidad de despliegue en múltiples nodos, integración con systemd y repositorios RPM, y ser lo suficientemente ligera para no interferir con la interconexión MPI o InfiniBand.
Las VPNs más aptas para tu clúster Rocks
- OpenVPN: muy estable, disponible en EPEL, bien documentada, fácil de integrar con systemd y scripts de arranque en head node y nodos de login.
- WireGuard: inclusión en kernel en backports (ELRepo), ultra ligera, baja latencia, gestión de peers mediante ficheros de configuración sencillos.
- Tinc: VPN en modo malla (mesh), ideal para topologías distribuidas, auto-descubrimiento de nodos y cifrado punto a punto, útil en clústeres con nodos repartidos en diferentes centros.
Comparativa de características
| VPN | Protocolo/Capa | Integración RPM | Rendimiento | Enlace de documentación |
|---|---|---|---|---|
| OpenVPN | TLS/SSL (UDP/TCP) | Paquete openvpn en EPEL | Muy bueno (aunque ligero overhead por TLS) | Guía oficial |
| WireGuard | Kernel module (UDP) | kmod-wireguard y wireguard-tools en ELRepo | Excelente (código mínimo y optimizado) | Quickstart |
| Tinc | Mesh VPN (UDP/TCP) | Paquete tinc en EPEL/CentOS | Bueno en mallas complejas | Documentación |
Guías de instalación y configuración
1. OpenVPN
Sobre el head node y cualquier nodo de acceso (login node):
# Habilitar repositorio EPEL yum install -y epel-release # Instalar OpenVPN y easy-rsa yum install -y openvpn easy-rsa # Copiar plantillas y generar PKI cp -r /usr/share/easy-rsa/ /etc/openvpn/ cd /etc/openvpn/easy-rsa ./easyrsa init-pki ./easyrsa build-ca nopass ./easyrsa gen-req server nopass ./easyrsa sign-req server server # Generar parámetros Diffie-Hellman ./easyrsa gen-dh # Crear fichero de configuración /etc/openvpn/server.conf cat > /etc/openvpn/server.confEn los nodos de usuario, generar creds, copiar .ovpn y arrancar con
openvpn --config cliente.ovpn, o bien configurar otro systemd unit.2. WireGuard
Se recomienda usar ELRepo para kernel-backports:
# Instalar ELRepo yum install -y https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm # Instalar módulo y herramientas yum install -y kmod-wireguard wireguard-tools # Cargar módulo modprobe wireguard # Generar claves en el head node mkdir -p /etc/wireguard cd /etc/wireguard wg genkey tee server_priv.key wg pubkey > server_pub.key # Configuración básica /etc/wireguard/wg0.conf cat > /etc/wireguard/wg0.conf AllowedIPs = 10.0.0.2/32 EOF # Ajustar permisos chmod 600 /etc/wireguard/ # Iniciar interfaz wg-quick up wg0 # Habilitar en arranque systemctl enable wg-quick@wg0En cada nodo cliente, generar su par de claves, copiar la sección [Peer] dentro de la conf del servidor y lanzar wg-quick con su propia IP (ej. 10.0.0.2/32).
![]()
3. Tinc
Ideal para mallas de nodos sin un único punto de fallo:
# Instalar tinc yum install -y epel-release yum install -y tinc # Directorio de configuración mkdir -p /etc/tinc/cluster/{hosts,links-up} # Generar clave para este nodo tincd -n cluster -K4096 # /etc/tinc/cluster/tinc.conf cat > /etc/tinc/cluster/tinc.conf /etc/tinc/cluster/hosts/nodo01 /etc/tinc/cluster/links-upLos demás nodos “nodo02”, “nodo03” siguen el mismo patrón, intercambiando los ficheros de hosts y claves.
Conclusión
Cada VPN aporta sus ventajas: OpenVPN es la opción más universal y sencilla de desplegar desde EPEL WireGuard ofrece un rendimiento sobresaliente con poco overhead, ideal para tráfico interno MPI y Tinc brilla en mallas complejas con múltiples nodos sin punto único de fallo. Según tu topología de clúster y necesidades de latencia, elige la que mejor encaje y automatiza el despliegue con Ansible o tu herramienta favorita de roll de Rocks.


Deja una respuesta