3.4. Servicios multipuertos y adición del equilibrador de carga
Los enrutadores en cualquier topología requieren configuración adicional cuando crean servicios multipuertos de adición del equilibrador de carga. Los servicios multipuertos pueden crearse artificialmente con marcas de cortafuegos para vincularlas protocolos diferentes pero relacionados, tales como HTTP (puerto 80) y HTTPS (puerto 443), o cuando la adición del equilibrador de carga se utiliza con verdaderos protocolos multipuertos, tales como FTP. En cualquier caso, el enrutador LVS usa marcas de cortafuegos para reconocer que los paquetes destinados a diferentes puertos, pero que soportan la misma marca de cortafuegos, deben manejarse de forma idéntica. También cuando se combinan con persistencia, las marcas de cortafuegos garantizan que conexiones desde la máquina cliente sean dirigidas al mismo host, siempre y cuando las conexiones ocurran dentro del tiempo especificado por el parámetro de persistencia. Para obtener más información, sobre asignación de persistencia a un servidor virtual, consulte la Sección 4.6.1, “La subsección VIRTUAL SERVER”.
Infortunadamente, el mecanismo utilizado para balancear cargas en servidores reales — IPVS — puede reconocer las marcas de cortafuegos asignadas a un paquete, pero no puede autoasignarse marcas de cortafuegos. La tarea de asignación de cortafuegos debe realizarse por el filtro de paquetes de red,
iptables
, por fuera de Piranha Configuration Tool.
3.4.1. Asignación de marcas de cortafuegos
Para asignar marcas de cortafuegos a un paquete destinado para un puerto determinado, el administrador debe usar
iptables
.
Esta sección muestra a manera de ejemplo, cómo vincular HTTP y HTTPS; no obstante FTP es otro protocolo de multipuertos comúnmente en clúster. Si se utiliza una adición del equilibrador de carga para servicios FTP, consulte la Sección 3.5, “Configuración de FTP” para obtener información sobre configuración.
La regla básica para recordar cómo usar marcas de cortafuegos es que cada protocolo que use una marca de cortafuegos en Piranha Configuration Tool debe ser una regla conmensurada de
iptables
para paquetes de red.
Antes de crear reglas de filtraje de paquetes de redes, asegúrese de que no ya haya reglas. Para ello, abra el indicador de shell, ingrese como root y escriba:
/sbin/service iptables status
Si
iptables
no se está ejecutando, el indicador reaparecerá instantáneamente.
Si
iptables
está activo, muestra un conjunto de reglas. Si las reglas están presentes, escriba este comando:
/sbin/service iptables stop
Si las reglas que ya existen son importantes, revise el contenido de
/etc/sysconfig/iptables
y copie las reglas que valen la pena salvar antes de proceder.
Las reglas a continuación, asignan la misma marca de cortafuegos, 80, para tráfico entrante destinado a la dirección IP flotante, n.n.n.n, en los puertos 80 y 443.
/sbin/iptables -t mangle -A PREROUTING -p tcp -d n.n.n.n/32 -m multiport --dports 80,443 -j MARK --set-mark 80
Para obtener instrucciones sobre cómo asignar el VIP a la interfaz de red pública, consulte la Sección 4.6.1, “La subsección VIRTUAL SERVER”. También observe que debe ingresar como root y cargar el módulo para
iptables
antes de proporcionar reglas por primera vez.
En los comandos anteriores
iptables
, n.n.n.n debe remplazarse por la dirección IP flotante para sus servidores virtuales. Estos comandos asignan el tráfico dirigido a VIP en los puertos en la marca de cortafuegos apropiados a 80, lo cual a su vez, es reconocido por IPVS y reenviado de forma apropiada.
Aviso
Los comandos anteriores tomarán efecto inmediatamente, pero no persisten a través de un reinicio del sistema. Para asegurase de que los parámetros de filtro de paquetes de red sean restaurados tras el reinicio, consulte la Sección 3.6, “Guardado de parámetros de filtraje de paquetes de red”