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

Corosync вызывал 100% загрузку ЦП после исчезновения узла. Как это исправить?

Общая настройка (самая первая для меня) Corosync + Pacemaker производится на 4 виртуальных серверах с VirtualIP, частная сеть организована с помощью OpenVPN.

corosync-2.4.3-4.el7.x86_64
corosynclib-2.4.3-4.el7.x86_64
pacemaker-1.1.19-8.el7_6.4.x86_64
pacemaker-cli-1.1.19-8.el7_6.4.x86_64
pacemaker-cluster-libs-1.1.19-8.el7_6.4.x86_64
pacemaker-libs-1.1.19-8.el7_6.4.x86_64
pcs-0.9.165-6.el7.centos.1.x86_64

Итак, у меня есть 4 VPS с CentOS 7 под управлением OpenVPN. Статус кластера в штатном состоянии:

# pcs status
Cluster name: hacluster
Stack: corosync
Current DC: node2 (version 1.1.19-8.el7_6.4-c3c624ea3d) - partition with quorum
Last updated: Sat Jun 15 14:00:36 2019
Last change: Sat Jun 15 02:25:39 2019 by hacluster via crmd on platinum

4 nodes configured
1 resource configured

Online: [ node1 node2 node3 master ]

Full list of resources:

 virtualIP      (ocf::heartbeat:IPaddr2):       Started node1

Daemon Status:
  corosync: active/enabled
  pacemaker: active/enabled
  pcsd: active/enabled

Все работает нормально. Каждый узел может пинговать другие узлы, используя адреса 172.16.172.0/24.

Если я перезагружаю VPS, кластер остается в сети, а виртуальный IP-адрес перемещается на другой активный узел. Пока все нормально.

Вчера из-за DDoS-атаки IP-адрес одного из узлов оказался заблокированным. Остальные 3 не смогли подключиться к нему, и с тех пор коросинхронизация начал потреблять все возможные CPU и даже больше. Мне пришлось killall -9 corosync чтобы вернуть серверы к жизни.

Кластер начал показывать, что все узлы отключены, даже локальный. Ничего не помогло, пробовал:

pcs cluster localnode remove node1

перезапущенные демоны, остановка / запуск кластера и т.д. коросинхронизация начинали расти каждый раз, когда это начиналось.

Думаю, я пропустил что-то очень очевидное, но все же не совсем уверен, что именно.

Кластер восстановился только после того, как отказавший узел вернулся в оперативный режим после 4 часов простоя.

Пожалуйста, дайте мне знать, что мне нужно настроить, чтобы кластер оставался в сети, даже если один-два узла недоступны.

С уважением, Алекс.