7.4. Configuración de dominios de conmutación
Un dominio de conmutación es un subconjunto con nombre de nodos de clúster elegibles para ejecutar un servicio de clúster en caso de una falla de nodo. Un dominio de conmutación puede tener las siguientes características:
- Sin restricciones — Le permite especificar que un subconjunto de miembros se prefiera, pero que el servicio de clúster asignado a este dominio pueda ejecutarse en cualquier miembro disponible.
- Restringido — Le permite restringir los miembros que pueden ejecutar un servicio de clúster particular. Si ninguno de los miembros en un dominio de conmutación restringido está disponible, el servicio de clúster no puede iniciarse (ya sea en forma manual o por el software de clúster).
- Desordenado — Cuando el servicio de clúster se asigna a un dominio de conmutación desordenado, el miembro en el que se ejecuta el servicio de clúster es elegido entre los miembros de dominio de conmutación sin ningún orden de prioridad.
- Ordenado — Le permite especificar un orden de preferencia entre los miembros de un dominio de conmutación. Los dominios de conmutación seleccionan el nodo con el número de prioridad inferior en primer lugar. Es decir, el nodo en un dominio de conmutación con un número de prioridad de "1" especifica la máxima prioridad, y por lo tanto, es el nodo preferido en un dominio de conmutación. Después de ese nodo, el siguiente nodo preferido sería el nodo con el siguiente número de prioridad más alto y así sucesivamente.
- Recuperación — Le permite especificar si un servicio en el dominio de conmutación debe recuperar al nodo que originalmente estaba ejecutándose antes de que ese nodo falle. La configuración de esta característica es útil en circunstancias donde un nodo repetidamente falla y hace parte de un dominio de conmutación ordenado. En esas circunstancias, si un nodo es el nodo preferido en un dominio de conmutación, es posible que un servicio se conmute o se recupere repetidas veces entre el nodo preferido y otro nodo, lo cual repercute gravemente en el rendimiento.
Nota
La funcionalidad de recuperación de fallos se aplica únicamente si la configuración de conmutación ordenada está configurada.
Nota
El cambio de una configuración de dominio de conmutación no se efectúa en servicios que se están ejecutando.
Nota
Los dominios de conmutación no se requieren para operación.
Por defecto, los dominios de conmutación son desordenados y sin restricciones.
En un clúster con varios miembros, si utiliza un dominio de conmutación restringido puede minimizar la labor de configuración del clúster para ejecutar un servicio de clúster (como
httpd
), el cual requiere que establezca la configuración idéntica en todos los miembros que ejecuten el servicio de clúster. En lugar de configurar todo el clúster para que ejecute el servicio de clúster, únicamente configure los miembros del dominio de conmutación restringido asociados con el servicio de clúster.
Nota
Para configurar a un miembro preferido, puede crear un dominio de conmutación sin restricciones que consta de un único miembro del clúster. Al hacer esto, el servicio de clúster se ejecutará en ese miembro del clúster principalmente (el miembro preferido), pero permitirá que el servicio de clúster recupere fallas de cualquiera de los otros miembros.
Para configurar un dominio de conmutación, use los siguientes procedimientos:
- Abra
/etc/cluster/cluster.conf
en cualquier nodo en el clúster. - Añada la siguiente sección de estructura dentro del elemento
rm
para cada dominio de conmutación que se va a utilizar:<failoverdomains> <failoverdomain name="" nofailback="" ordered="" restricted=""> <failoverdomainnode name="" priority=""/> <failoverdomainnode name="" priority=""/> <failoverdomainnode name="" priority=""/> </failoverdomain> </failoverdomains>
Nota
El número de atributosfailoverdomainnode
depende del número de nodos en el dominio de conmutación. La estructura de la secciónfailoverdomain
en el texto anterior muestra tres elementosfailoverdomainnode
(sin nombres de nodos especificados), lo cual significa que hay tres nodos en el dominio de conmutación. - En la sección
failoverdomain
, proporcione los valores para los elementos y atributos. Para obtener descripciones de los elementos y atributos, consulte la sección failoverdomain del esquema de cluster anotado. El esquema de cluster anotado está disponible en/usr/share/doc/cman-X.Y.ZZ/cluster_conf.html
(por ejemplo,/usr/share/doc/cman-3.0.12/cluster_conf.html
) en cualquiera de los nodos de cluster. Para ver un ejemplo de una secciónfailoverdomains
, consulte el Ejemplo 7.8, “Un dominio de conmutación de fallas paracluster.conf
”. - Actualice el atributo
config_version
aumentando su valor (por ejemplo, cambiar deconfig_version="2"
aconfig_version="3">
). - Guarde
/etc/cluster/cluster.conf
. - (Opcional) Valide el archivo con el esquema de cluster (
cluster.rng
) al ejecutar el comandoccs_config_validate
. Por ejemplo:[root@example-01 ~]#
ccs_config_validate
Configuration validates - Ejecute el comando
cman_tool version -r
para propagar la configuración al resto de nodos de clúster.
El Ejemplo 7.8, “Un dominio de conmutación de fallas para
cluster.conf
” muestra una configuración con un dominio de conmutación ordenado, sin restricciones.
Ejemplo 7.8. Un dominio de conmutación de fallas para cluster.conf
<cluster name="mycluster" config_version="3"> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> <method name="APC"> <device name="apc" port="1"/> </method> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> <method name="APC"> <device name="apc" port="2"/> </method> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> <method name="APC"> <device name="apc" port="3"/> </method> </fence> </clusternode> </clusternodes> <fencedevices> <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="apc" passwd="password_example"/> </fencedevices> <rm> <failoverdomains> <failoverdomain name="example_pri" nofailback="0" ordered="1" restricted="0"> <failoverdomainnode name="node-01.example.com" priority="1"/> <failoverdomainnode name="node-02.example.com" priority="2"/> <failoverdomainnode name="node-03.example.com" priority="3"/> </failoverdomain> </failoverdomains> </rm> </cluster>
La sección
failoverdomains
contiene una sección failoverdomain
para cada dominio de conmutación en el cluster. Este ejemplo tiene un dominio de conmutación . En la línea failoverdomain
, el nombre (name
) se especifica como example_pri
. Además, especifica sin recuperación (failback="0"
), esa conmutación es ordenada (ordered="1"
), y ese dominio de conmutación es sin restricciones (restricted="0"
).