9.4. Arresti inaspettati del demone del cluster

RGManager presenta un processo watchdog in grado di riavviare l'host se il processo rgmanager principale fallisce inaspettatamente. Tale processo causa l'isolamento del nodo, così facendo rgmanager sarà in grado di ripristinare il servizio su un altro host. Quando il demone watchdog rileva l'arresto inaspettato del processo rgmanager, esso eseguirà il riavvio del nodo. A tal punto il nodo isolato verrà rilevato ed espulso dai nodi attivi del cluster.
Il numero più basso di process ID (PID) rappresenta il processo watchdog che si verifica se il processo figlio relativo (il processo con un PID più elevato) si arresta inaspettatamente. La cattura del processo con un PID più elevato usando gcore può aiutarvi nel processo di troubleshooting di un demone.
Installare i pacchetti necessari per catturare e visualizzare il core ed assicurarsi che sia il rgmanager che rgmanager-debuginfo abbiano la stessa versione, in caso contrario il core dell'applicazione catturata potrebbe risultare instabile.
$ yum -y --enablerepo=rhel-debuginfo install gdb rgmanager-debuginfo

9.4.1. Cattura di rgmanager Core durante l'esecuzione

Durante l'esecuzione sono presenti due processi rgmanager. Sarà necessario catturare il core per il processo rgmanager con il PID più alto.
Di seguito viene riportato un output d'esempio del comando ps il quale mostra due processi per rgmanager.

$ ps aux | grep rgmanager | grep -v grep 

root    22482  0.0  0.5  23544  5136 ?        S<Ls Dec01   0:00 rgmanager 
root    22483  0.0  0.2  78372  2060 ?        S<l  Dec01   0:47 rgmanager 

Nel seguente esempio il programma pidof determina automaticamente il pid con il numero più alto il quale rappresenta il pid appropriato per creare il core. Il comando completo cattura il core dell'applicazione per il processo 22483 con il numero più alto di PID.
$ gcore -o /tmp/rgmanager-$(date '+%F_%s').core $(pidof -s rgmanager)