9.4. Сбой rgmanager

RGManager включает специальный процесс, осуществляющий перезагрузку узла в случае сбоя rgmanager. Это, в свою очередь, начнет процедуру изоляции узла и возобновит работу службы на новом узле. Остальные узлы в кластере воспримут перезагрузку узла как его выход из состава кластера.
Процесс наблюдения имеет меньший идентификатор PID и реагирует на сбои дочерних процессов с более высокими PID. Дополнительно можно сохранить состояние памяти дочернего процесса (с помощью gcore), что может помочь в определении причины сбоя.
Для этого надо предварительно установить необходимые пакеты и убедиться, что версии rgmanager и rgmanager-debuginfo совпадают.
$ yum -y --enablerepo=rhel-debuginfo install gdb rgmanager-debuginfo

9.4.1. Сохранение состояния памяти rgmanager

При запуске rgmanager автоматически запускается два процесса — следует сохранить состояние процесса с более высоким PID.
Пример вывода ps с двумя процессами 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 

В следующем примере pidof определит более высокий PID. В результате выполнения приведенной команды будет сохранено состояние памяти процесса с PID 22483.
$ gcore -o /tmp/rgmanager-$(date '+%F_%s').core $(pidof -s rgmanager)