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

Разделение мозга на кластер DRBD и Pacemaker

Хочу обратить ваше внимание на следующую ситуацию, которая сейчас происходит в нашем активно-пассивном кластере (DRBD, Pacemaker, Corosync, PostgreSQL).

ОС: сервер Ubuntu 14.04 x64 DRBD: 8.4 Pacemaker: 1.1.10 Corosync: 2.3.3 PostgreSQL: 9.3

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

A: первичный, B: вторичный

1- А идет вниз

2- B становится ПЕРВИЧНЫМ

3- A запускается снова -> SPLIT BRAIN (мы предположили, что в этом случае переключение может быть выполнено автоматически)

ЖУРНАЛЫ из A:

Jan 28 16:15:11 node1 kernel: [  538.025422] block drbd0: helper command: /sbin/drbdadm initial-split-brain minor-0
Jan 28 16:15:11 node1 kernel: [  538.026185] block drbd0: helper command: /sbin/drbdadm initial-split-brain minor-0 exit code 0 (0x0)
Jan 28 16:15:11 node1 kernel: [  538.026194] block drbd0: Split-Brain detected but unresolved, dropping connection!

Статус DRBD:

service drbd status
drbd driver loaded OK; device status:
version: 8.4.3 (api:1/proto:86-101)
srcversion: F97798065516C94BE0F27DC 
m:res  cs          ro                 ds                   p       mounted  fstype
0:pg   StandAlone  Secondary/Unknown  Consistent/DUnknown  r-----

AFAIS похоже, что DRBD нарушил состояние этого узла.

Мои вопросы:

1. Верно ли мое предположение, что в событии 3 возвращающийся узел может быть автоматически присоединен к кластеру?

2- Если можно, расскажите, пожалуйста, как.

1. Верно ли мое предположение, что в событии 3 возвращающийся узел может быть автоматически присоединен к кластеру?

Да, это можно сделать. DRBD не должен переходить в Первичный самостоятельно, если это не указано в конфигурации ресурса; убедитесь, что определение 'startup {begin-primary-on}' не установлено в конфигурациях ресурсов.

2- Если можно, расскажите, пожалуйста, как.

Убедитесь, что верно следующее:

а. 'drbd' не настроен на запуск при загрузке ('chkconfig drbd off' в RHEL, 'update-rc.d drbd disable' в Debian).

б. DRBD не следует настраивать так, чтобы он сам стал первичным (как упоминалось выше).

В руководстве пользователя DRBD есть раздел о настройке DRBD для использования с Pacemaker, который может помочь, если мой ответ выше не поможет: https://drbd.linbit.com/users-guide/ch-pacemaker.html