Назад | Перейти на главную страницу

Как восстановить узел кластера Галера

Я использую кластер Galera с тремя узлами и несколькими мастерами под MariaDB.

Один из узлов вышел из строя из-за аппаратного сбоя (node3), и по какой-то причине это также привело к сбою одного из исправных узлов (node2). Итак, у меня остался один работающий узел (node1), который на данный момент является наиболее продвинутым в кластере.

Я жду, когда моя хостинговая компания исправит третий узел, но пока что не могу перезапустить второй узел. При попытке перезапуска я получаю следующие ошибки из xtrabackup-v2 программа при попытке передачи состояния:

[Warning] WSREP: 1.0 (node1): State transfer to 0.0 (node2) failed: -2 (No such file or directory)
  [ERROR] WSREP: gcs/src/gcs_group.cpp:gcs_group_handle_join_msg():737: Will never receive state. Need to abort.

Это будет продолжаться бесконечно, пока я не остановлю службу mysqld. Я понятия не имею, к чему относится (Нет такого файла или каталога).

Разбившийся узел grastate.dat выглядит так:

version: 2.1
uuid:    00000000-0000-0000-0000-000000000000
seqno:   -1
safe_to_bootstrap: 0

Что я могу сделать, чтобы перезапустить отказавший узел?


Обновление 1:

Я очистил каталог данных, но узел по-прежнему не присоединяется к кластеру. Ошибка файла кажется уместной, но она не помогает мне понять, в чем проблема.

State transfer to 0.0 (node2) failed: -2 (No such file or directory)


Обновление 2:

Я нашел дополнительную информацию об ошибке на донорском узле:

SREP_SST: [ERROR] innobackupex not in path: /usr/sbin:/sbin:/usr/ etc..

Делать which innobackupex показывает, что эта программа отсутствует.

Решено.

Разбившийся узел был настроен на использование другого метода SST для узла-донора. Раньше он использовал Percona xtrabackup, и по ошибке или по глупости конфиги устарели.