RedHat Cluster: comandos básicos

redhat logoEstos son los comandos básicos para controlar un RedHat Cluster (RHCS) desde línea de comandos. Ver el estado del Cluster, modificar y replicar configuraciones, arrancar/parar/reiniciar/mover recursos y servicios, etc.

Ver el estado del Cluster

El comando clustat permite ver el estado del cluster. Se ejecuta como root y muestra los nodos activos del cluster, el estado general del cluster, si hay quorum y el estado de los servicios junto con el nodo en el que se están ejecutando:

# clustat

Cluster Status for clstr-app @ Tue Jul 29 01:23:53 2014

Member Status: Quorate

 Member Name                                   ID   Status
 ------ ----                                   ---- ------
 nodo1                                         1 Online, Local, rgmanager
 nodo2                                         2 Online, rgmanager
 /dev/block/8:32                               0 Online, Quorum Disk

 Service Name                Owner (Last)          State
 ------- ----                ----- ------          -----

 service:ftpd                nodo1                 started
 service:httpd               nodo2                 started

Modificar, verificar y replicar configuración

Los pasos para realizar un cambio en la configuración del cluster (archivo /etc/cluster/cluster.conf) son los siguientes:

Aumentar el número de versión:

<cluster config_version="2" name="clstr-app">

Validar la configuración para descartar errores:

# ccs_config_validate

Y replicar al resto de nodos:

# cman_tool version -r

Iniciar, parar y reiniciar servicios

Para controlar los servicios del cluster usamos el comando clusvcadm:

Iniciar un servicio:

# clusvcadm -e httpd

Local machine trying to enable service:httpd...Success
service:httpd is now running on nodo1

Parar un servicio:

# clusvcadm -d httpd

Local machine disabling service:httpd...Success

Reiniciar un servicio:

# clusvcadm -R httpd

Mover un servicio a otro nodo del Cluster

También con el comando clusvcadm, lo que hace es parar el servicio en el nodo activo y arrancarlo en el nodo de destino. Por ejemplo, para mover al «nodo2» el servicio httpd:

# clusvcadm -r httpd -m nodo2

Member nodo1 trying to enable service:httpd...Success
service:httpd is now running on nodo2

Arrancar y parar el cluster de forma ordenada

Para sacar un nodo del cluster, lo primero que hacemos es mover todos los servicios que tenga activos a otro nodo del cluster y después parar por orden los procesos correspondientes:

# clusvcadm -r INSTANCIA -m NODO # Mover todas las instancias que estén corriendo al otro nodo
# service rgmanager stop # Paramos el gestor de recursos
# service gfs2 stop # paramos GFS si usamos estos FS
# service clvmd stop # Paramos LVM en cluster)
# service cman stop # paramos cman

Y para añadir un nodo al cluster, sería a la inversa:

# service cman start
# service clvmd start
# service gfs2 start
# service rgmanager start

Con estos comandos básicos podéis gestionar de forma eficiente la RHCS (Red Hat Cluster Suite) desde línea de comandos.