7.3. Desplazamiento de recursos debido a cambios de conectividad

La configuración del clúster para desplazar recursos cuando la conectividad externa se pierde es un proceso de dos pasos:
  1. Agregue el recurso ping al clúster. El recurso ping usa la herramienta con el mismo nombre para probar si una lista de máquinas (especificadas por el nombre de host DNS o dirección IPv4/IPv6) se puede contactar y usa también los resultados para mantener un atributo de nodo denominado pingd.
  2. Configure una restricción de sitio para el recurso que desplazará el recurso a un nodo diferente cuando se pierda la conectividad.
Tabla 5.1, “Propiedades de recursos” describe las propiedades que puede establecer para un recurso ping .

Tabla 7.1. Propiedades de un recurso ping

CampoDescripción
dampen
El tiempo de de espera (dampening) para que se presenten otros cambios. Esto evita que un recurso rebote contra el clúster cuando los nodos notan la pérdida de conectividad en tiempos poco diferentes.
multiplier
El número de nodos ping conectados se multiplica por el valor de un puntaje. Sirve cuando hay múltiples nodos ping configurados.
host_list
Las máquinas a contactar para determinar el estatus de conectividad actual. Los valores permitidos incluyen los nombres de hosts DNS, las direcciones IPv4 e IPv6.
El siguiente comando de ejemplo crea un recurso ping que verifica conectividad a www.example.com. En la práctica, usted verificaría la conectividad de su puerta de enlace de red/enrutador. Configure el recurso ping como un clon para que el recurso se ejecute en todos los nodos de clúster.
# pcs resource create ping ocf:pacemaker:ping dampen=5s multiplier=1000 host_list=www.example.com --clone
El siguiente ejemplo configura la regla de restricciones para el recurso existente denominado Webserver. Esta acción hará que el recurso Webserver se desplace a un host que pueda contactar a www.example.com si el host que está ejecutándose actualmente no puede contactar a www.example.com.
# pcs constraint location Webserver rule score=-INFINITY pingd lt 1 or not_defined pingd