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

Debian 7: HA NAS с кардиостимулятором, drbd и iSCSI

В настоящее время я пытаюсь создать высокодоступный NAS под debian 7. Я использую следующие пакеты:

drbd8-utils
iscsitarget
iscsitarget-dkms
кардиостимулятор
коросинхронизация
openais

все отлично работает без pacemaker (так что я буду считать, что это не ошибка конфигурации)

Когда я ставлю все на кардиостимулятор, все работает, пока я не перезагружаю один из узлов. вот моя конфигурация кардиостимулятора:

node NAS-1
node NAS-2
primitive nas_ip ocf:heartbeat:IPaddr2 \
    params ip="192.168.152.210" cidr_netmask="255.255.255.0"
primitive p_drbd ocf:linbit:drbd \
    params drbd_resource="nas" \
    op monitor interval="29" role="Master" \
    op monitor interval="31" role="Slave"
primitive p_iscsitarget ocf:heartbeat:iSCSITarget \
    params iqn="iqn.2015.01.net.utopia:nas" tid="1" \
    op monitor interval="10s"
group g_iscsi nas_ip p_iscsitarget
ms ms_drbd p_drbd \
    meta master-max="1" master-node-max="1" clone-max="2" clone-node-max="1" notify="true"
colocation nas inf: g_iscsi ms_drbd:Master
order o_drbd inf: ms_drbd:promote g_iscsi:start
property $id="cib-bootstrap-options" \
    dc-version="1.1.7-ee0730e13d124c3d58f00016c3376a1de5323cff" \
    cluster-infrastructure="openais" \
    expected-quorum-votes="2" \
    stonith-enabled="false" \
    no-quorum-policy="ignore" \
    default-resource-stickiness="1"
crm(live)configure#

Вот такая ошибка:

root@NAS-1:~# crm_mon -1
============
Last updated: Wed Jan  7 16:02:53 2015
Last change: Wed Jan  7 15:57:51 2015 via cibadmin on NAS-1
Stack: openais
Current DC: NAS-2 - partition with quorum
Version: 1.1.7-ee0730e13d124c3d58f00016c3376a1de5323cff
2 Nodes configured, 2 expected votes
4 Resources configured.
============
Online: [ NAS-1 NAS-2 ]

Master/Slave Set: ms_drbd [p_drbd]
    Masters: [ NAS-2 ]
    Slaves: [ NAS-1 ]
Resource Group: g_iscsi
    nas_ip     (ocf::heartbeat:IPaddr2):       Started NAS-2
    p_iscsitarget      (ocf::heartbeat:iSCSITarget):   Started NAS-2 (unmanaged) FAILED

Failed actions:
    p_iscsitarget_stop_0 (node=NAS-2, call=16, rc=5, status=complete): not installed
root@NAS-1:~#

Примечание: в NAS действительно не настроен логический модуль iSCSi, который в настоящее время находится на стадии тестирования на виртуальных машинах, но у меня была точно такая же ошибка с ним в моем предыдущем тесте.

Может ли кто-нибудь помочь мне определить / исправить эту ошибку?

PS: Мои файлы conf для прочего:
http://pastebin.com/rUZYrhxm (/etc/drbd.d/*)
http://pastebin.com/X4VGNJuP (/etc/iet/ietd.conf)

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

Я уже использую ограждение на уровне ресурсов с помощью кластерной информационной базы (см. http://pastebin.com/rUZYrhxm ).

Стратегия заключалась в группировании запуска службы iSCSI с ролью ведущего сервера drbd. за исключением того, что казалось, что он пытался запустить iSCSITarget перед переключением на роль Master, поэтому был заблокирован, поскольку диск был в режиме только для чтения.

Я еще раз переделал всю свою систему с нуля, и теперь она работает, думаю, я где-то сделал небольшую ошибку.

Я думаю, это потому, что в Debian нет iSCSITarget для сердцебиения. Проверить каталог /usr/lib/ocf/resource.d/redhat/.

ls -ls /usr/lib/ocf/resource.d/redhat/

Если нет, значит, вы вызываете скрипт, которого не существует.

Поскольку вам не хватает stonith, вам необходимо настроить stonith в кардиостимуляторе и настроить drbd для вызова ограждения кардиостимулятора.

http://drbd.linbit.com/users-guide/s-pacemaker-fencing.html