Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

7.2. Creación de un archivo de configuración de clúster básico

Siempre y cuando el hardware de clúster, Red Hat Enterprise Linux y el software de adición de alta disponibilidad estén instalados, podrá crear un archivo de configuración de clúster (/etc/cluster/cluster.conf) y empezar a ejecutar la adición de alta disponibilidad. Como punto de partida únicamente, esta sección describe cómo crear un archivo de configuración de clúster de esqueleto sin cercado, dominios de conmutación y servicios de alta disponibilidad. Las siguientes secciones describen cómo configurar esas partes del archivo de configuración.

Importante

Este no es solamente un paso interno para crear un archivo de configuración de clúster; el archivo resultante no tiene ningún cercado y no se considera una configuración compatible.
Los siguientes pasos describen cómo crear y configurar un archivo de configuración de clúster de estructura. Por último, el archivo de configuración para su clúster variará según el número de nodos, el tipo de valla, el tipo, el número de servicios de alta disponibilidad y otros requerimientos específicos.
  1. En cualquier nodo en el clúster, cree /etc/cluster/cluster.conf, mediante la plantilla del ejemplo en Ejemplo 7.1, “Muestra de cluster.conf: Configuración básica”.
  2. (Opcional) Si está configurando un clúster de dos nodos, puede adicionar la línea al archivo de configuración para que un nodo único pueda mantener cuórum (por ejemplo, si un nodo falla):
    <cman two_node="1" expected_votes="1"/>
    Cuando añada o retire la opción two_node del archivo cluster.conf, debe reiniciar el clúster para que el cambio se efectúe al actualizar la configuración. Para obtener información sobre cómo actualizar y configurar un clúster, consulte la Sección 8.4, “Cómo actualizar una configuración”. Para ver un ejemplo de especificación de la opción two_node, consulte el Ejemplo 7.2, “Muestra de cluster.conf: Configuración básica de dos nodos”.
  3. Especifique el nombre de clúster y el número de versión de configuración mediante los atributos de cluster: name y config_version (consulte el Ejemplo 7.1, “Muestra de cluster.conf: Configuración básica” o Ejemplo 7.2, “Muestra de cluster.conf: Configuración básica de dos nodos”).
  4. En la sección clusternodes, especifique el nombre de nodos y el ID de nodo de cada nodo mediante los atributos de clusternode: name y nodeid.
  5. Guarde /etc/cluster/cluster.conf.
  6. Valide el archivo con el esquema de clúster (cluster.rng) mediante el comando ccs_config_validate. Por ejemplo:
    [root@example-01 ~]# ccs_config_validate 
    Configuration validates
    
  7. Propague el archivo de configuración a /etc/cluster/ en cada nodo de clúster. Por ejemplo, puede propagar el archivo a otros nodos de clúster mediante el comando scp.

    Nota

    La propagación del archivo de configuración de clúster es necesaria de esta manera la primera vez que se cree el clúster. Una vez que el clúster esté instalado y ejecutándose, el archivo de configuración de clúster puede propagarse con cman_tool version -r. Se puede usar el comando scp para propagar un archivo de configuración actualizado; sin embargo, el software de clúster debe detenerse en todos los nodos mientras use el comando scp. Además, debe ejecutar ccs_config_validate si propaga un archivo de configuración actualizado a través de scp.

    Nota

    Aunque hay otros elementos y atributos presentes en el archivo de configuración de muestra, por ejemplo, fence y fencedevices, no hay necesidad de poblarlos ahora. Procedimientos posteriores en este capítulo proporcionan información acerca de cómo especificar otros elementos y atributos.
  8. Inicie el clúster. En cada nodo de clúster ejecute el siguiente comando:
    service cman start
    Por ejemplo:
    [root@example-01 ~]# service cman start
    Starting cluster: 
       Checking Network Manager...                             [  OK  ]
       Global setup...                                         [  OK  ]
       Loading kernel modules...                               [  OK  ]
       Mounting configfs...                                    [  OK  ]
       Starting cman...                                        [  OK  ]
       Waiting for quorum...                                   [  OK  ]
       Starting fenced...                                      [  OK  ]
       Starting dlm_controld...                                [  OK  ]
       Starting gfs_controld...                                [  OK  ]
       Unfencing self...                                       [  OK  ]
       Joining fence domain...                                 [  OK  ]
    
  9. En cualquier nodo de clúster, ejecute cman_tool nodes para verificar los nodos que funcionan como miembros en el clúster (representado como "M" en la columna de estatus, "Sts"). Por ejemplo:
    [root@example-01 ~]# cman_tool nodes
    Node  Sts   Inc   Joined               Name
       1   M    548   2010-09-28 10:52:21  node-01.example.com
       2   M    548   2010-09-28 10:52:21  node-02.example.com
       3   M    544   2010-09-28 10:52:21  node-03.example.com
    
  10. Si el clúster está ejecutándose, prosiga a la Sección 7.3, “Configuración de vallas”.

Ejemplos de configuración básica

Ejemplo 7.1, “Muestra de cluster.conf: Configuración básica” y Ejemplo 7.2, “Muestra de cluster.conf: Configuración básica de dos nodos” (para un clúster de dos nodos) cada uno proporciona una muestra básica de un archivo de configuración de clúster como un punto de inicio. Los procedimientos siguientes en este capítulo proporcionan información sobre configuración de cercado y servicios de alta disponibilidad.

Ejemplo 7.1. Muestra de cluster.conf: Configuración básica


<cluster name="mycluster" config_version="2">
   <clusternodes>
     <clusternode name="node-01.example.com" nodeid="1">
         <fence>
         </fence>
     </clusternode>
     <clusternode name="node-02.example.com" nodeid="2">
         <fence>
         </fence>
     </clusternode>
     <clusternode name="node-03.example.com" nodeid="3">
         <fence>
         </fence>
     </clusternode>
   </clusternodes>
   <fencedevices>
   </fencedevices>
   <rm>
   </rm>
</cluster>

Ejemplo 7.2. Muestra de cluster.conf: Configuración básica de dos nodos


<cluster name="mycluster" config_version="2">
   <cman two_node="1" expected_votes="1"/>
   <clusternodes>
     <clusternode name="node-01.example.com" nodeid="1">
         <fence>
         </fence>
     </clusternode>
     <clusternode name="node-02.example.com" nodeid="2">
         <fence>
         </fence>
     </clusternode>
   </clusternodes>
   <fencedevices>
   </fencedevices>
   <rm>
   </rm>
</cluster>

El valor de consenso para totem en un clúster de dos nodos

Si crea un clúster de dos nodos y no tiene la intención de añadir más nodos al clúster, omita el valor consensus en la pestaña totem en el archivo cluster.conf para que el valor de consensus se calcule automáticamente. Cuando el valor de consensus se calcula de esa forma, se aplican las siguientes reglas:
  • Si hay dos nodos o menos, el valor de consensus será (símbolo * 0.2), con un techo de 2.000 ms y un piso de 200 ms.
  • Si hay tres o más nodos, el valor de consensus será (símbolo + 2.000 ms)
Si permite que la herramienta cman configure su tiempo de espera de consenso en esta forma, entonces al mover de dos a tres (o más) nodos para más tarde, deberá reiniciar el clúster, ya que el tiempo de expiración necesitará cambiar a un valor mayor basado en el tiempo de espera del símbolo.
Si está configurando un clúster de dos nodos e intenta actualizar en el futuro a más de dos nodos, sobrescriba el tiempo de espera del consenso para que el reinicio del clúster no se necesite al pasar de dos a tres nodos (o más). Esto puede realizarse en cluster.conf así:

<totem token="X" consensus="X + 2000" />

Observe que el lector de configuración no calcula X + 2.000 de forma automática. Se debe utilizar un valor de entero en lugar de una ecuación.
La ventaja de usar el espacio de tiempo optimizado de consenso para clúster de dos nodos es que el tiempo de conmutación total se reduce en el caso de dos nodos, ya que el consenso no es una función del tiempo de espera del símbolo.
Observe que para autodetectar dos nodos en cman, el número de nodos físicos es lo que importa y no la presencia de la directiva de two_node=1 en el archivo cluster.conf.