Red Hat Training

A Red Hat training course is available for RHEL 8

11.2. Limitación del descubrimiento de recursos a un subconjunto de nodos

Antes de que Pacemaker inicie un recurso en cualquier lugar, primero ejecuta una operación de monitorización única (a menudo denominada "sondeo") en cada nodo, para saber si el recurso ya se está ejecutando. Este proceso de descubrimiento de recursos puede dar lugar a errores en los nodos que no pueden ejecutar el monitor.

Al configurar una restricción de ubicación en un nodo, puede utilizar la opción resource-discovery del comando pcs constraint location para indicar una preferencia sobre si Pacemaker debe realizar el descubrimiento de recursos en este nodo para el recurso especificado. Limitar el descubrimiento de recursos a un subconjunto de nodos en los que el recurso puede ejecutarse físicamente puede aumentar significativamente el rendimiento cuando hay un gran conjunto de nodos. Cuando pacemaker_remote está en uso para ampliar el número de nodos en el rango de cientos de nodos, esta opción debe ser considerada.

El siguiente comando muestra el formato para especificar la opción resource-discovery del comando pcs constraint location. En este comando, un valor positivo para score corresponde a una restricción de ubicación básica que configura un recurso para preferir un nodo, mientras que un valor negativo para score corresponde a una restricción de ubicación básica que configura un recurso para evitar un nodo. Al igual que con las restricciones de ubicación básicas, también puedes utilizar expresiones regulares para los recursos con estas restricciones.

pcs constraint location add id rsc node score [resource-discovery=option]

Tabla 11.2, “Parámetros de restricción de descubrimiento de recursos” resume los significados de los parámetros básicos para configurar las restricciones para el descubrimiento de recursos.

Tabla 11.2. Parámetros de restricción de descubrimiento de recursos

Campo

Descripción

id

Un nombre elegido por el usuario para la propia restricción.

rsc

Un nombre de recurso

node

El nombre de un nodo

score

Valor entero para indicar el grado de preferencia para que el recurso dado prefiera o evite el nodo dado. Un valor positivo para la puntuación corresponde a una restricción de ubicación básica que configura un recurso para preferir un nodo, mientras que un valor negativo para la puntuación corresponde a una restricción de ubicación básica que configura un recurso para evitar un nodo.

Un valor de INFINITY para score indica que el recurso preferirá ese nodo si el nodo está disponible, pero no impide que el recurso se ejecute en otro nodo si el nodo especificado no está disponible. Un valor de -INFINITY para score indica que el recurso nunca se ejecutará en ese nodo, incluso si no hay otro nodo disponible.

Una puntuación numérica (es decir, no INFINITY o -INFINITY) significa que la restricción es opcional, y se respetará a menos que algún otro factor la supere. Por ejemplo, si el recurso ya está colocado en un nodo diferente y su puntuación en resource-stickiness es mayor que la de una restricción de ubicación en prefers, el recurso se dejará donde está.

resource-discovery opciones

* always - Realiza siempre el descubrimiento de recursos para el recurso especificado en este nodo. Este es el valor predeterminado de resource-discovery para una restricción de ubicación de recursos.

* never - No realizar nunca el descubrimiento de recursos para el recurso especificado en este nodo.

* exclusive - Realiza el descubrimiento de recursos para el recurso especificado sólo en este nodo (y otros nodos marcados de forma similar como exclusive). Las restricciones de ubicación múltiples que utilizan el descubrimiento de exclusive para el mismo recurso a través de diferentes nodos crean un subconjunto de nodos en los que resource-discovery es exclusivo. Si un recurso está marcado para el descubrimiento de exclusive en uno o más nodos, ese recurso sólo se puede colocar dentro de ese subconjunto de nodos.

Aviso

Configurar resource-discovery como never o exclusive elimina la capacidad de Pacemaker de detectar y detener las instancias no deseadas de un servicio que se ejecuta donde no debe estar. Depende del administrador del sistema asegurarse de que el servicio nunca pueda estar activo en los nodos sin descubrimiento de recursos (por ejemplo, dejando desinstalado el software correspondiente).