Перейти к основному контенту

Действия по восстановлению работы кластера при выходе из строя одного из узлов ЦОД2

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

Выход из строя ЦОД2

При выходе из строя ЦОД2 все компоненты остаются в активном режиме работы на ЦОД1. В данном случае требуется восстановить согласованность данных и восстановить работу системы на ЦОД2. Потребуется полная остановка и запуск системы на обоих ЦОД. Для этого нужно выполнить следующие действия:
1. Восстановить связь между узлами кластера.
2. В отдельной сессии SSH на сервере wislaserver07 под пользователем wisla запустить программу установки.
3. В разделе «Maintenance» -> «wiSLA management» остановить wiSLA на всех серверах:

Stop_all

4. В разделе «Maintenance» -> «Pgpool management» запустить Pgpool на сервере wislaserver04:

 Start on wislaserver04

5. Убедиться в том, что Pgpool на сервере wislaserver04 активирован. Для этого в разделе «Statuses» выбрать «Pgpool status».
6. В отдельной сессии SSH открыть командную строку сервера wislaserver01 под пользователем wisla.
7. На сервере wislaserver01 выполнить команду для просмотра состояния узлов PostgreSQL:

psql -p 19999 -c "show pool_nodes"

8. Убедиться в том, что сервер wislaserver01 имеет status «2» (активен) и role «primary», а wislaserver04 имеет status «3» (неактивен) и role «standby»:

node_id | hostname | port | status | lb_weight | role
---------+---------------+------+--------+-----------+---------
0 | wislaserver01 | 5432 | 2 | 0.500000 | primary
1 | wislaserver04 | 5432 | 3 | 0.500000 | standby

9. На сервере wislaserver01 выполнить команду:

ip a

и убедиться в наличии alias «eth0:10» на интерфейсе «eth0» .
10. В отдельной сессии SSH открыть командную строку сервера wislaserver04 под пользователем wisla.
11. На сервере wislaserver04 выполнить команду:

ip a

и убедиться в отсутствии alias «eth0:10» на интерфейсе «eth0».
12. На сервере wislaserver01 выполнить команду:

LD_LIBRARY_PATH=/opt/wisla5/pgpool/current/lib/ pcp_recovery_node -d 0 127.0.0.1 9898 wisla wisla 1

13. Дождаться выполнения команды, должно снова появиться приглашение для ввода.
14. На сервере wislaserver01 снова выполнить команду для просмотра состояния узлов PostgreSQL и убедиться в том, что сервер wislaserver01 сохранил status «2» (активен) и role «primary», а wislaserver04 изменил status на «2» (активен), role осталась «standby».

[wisla@wislaserver01 ~]$ psql -p 19999 -c "show pool_nodes"
node_id | hostname | port | status | lb_weight | role
---------+---------------+------+--------+-----------+---------
0 | wislaserver01 | 5432 | 2 | 0.500000 | primary
1 | wislaserver04 | 5432 | 2 | 0.500000 | standby

15. На сервере wislaserver04 выполнить команду:

ip a

и убедиться в отсутствии alias «eth0:10» на интерфейсе «eth0».
16. На сервере wislaserver01 выполнить команду:

ip a

и убедиться вналичии alias «eth0:10» на интерфейсе «eth0» .
17. На сервере wislaserver04 выполнить команду:

tail -n 10 /home/wisla/postgresql/postgres.log

и убедиться в наличии строки:

database system is ready to accept read only connections

18. В отдельной сессии SSH открыть командную строку сервера wislaserver05 под пользователем root.
19. На сервере wislaserver05 выполнить команды:

systemctl start glusterd #/etc/init.d/glusterd start
mount -t glusterfs wislaserver02:/namenodevol /mnt/glusterVol/

20. На сервере wislaserver05 убедиться в наличии непустого каталога /mnt/glusterVol/current/

ls /mnt/glusterVol/current/

21. В открытой программе установки в разделе «Maintenance» -> «HBase management» выполнить остановку HBase на всех серверах:

Stop_all

22. В открытой программе установки в разделе «Maintenance» -> «Hadoop management» выполнить остановку Hadoop на всех серверах:

Stop_all

23. В открытой программе установки в разделе «Maintenance» -> «Zookeeper management» выполнить остановку Zookeeper на всех серверах:

Stop_all

24. В открытой программе установки в разделе «Maintenance» -> «Zookeeper management» выполнить запуск Zookeeper на всех серверах:

Start_all

25. В открытой программе установки в разделе «Maintenance» -> «Hadoop management» выполнить запуск Hadoop на всех серверах:

Start_all

26. В открытой программе установки в разделе «Maintenance» -> «HBase management» выполнить запуск HBase на всех серверах:

Start_all

27. В открытой программе установки в разделе «Maintenance» -> «wiSLA management» выполнить запуск wiSLA на всех серверах:

Start_all

28. После запуска wiSLA проверить состояние компонентов системы в разделе «Statuses» -> «All statuses» и убедиться в работоспособности портала wiSLA.