Вследствие сбоя может выйти из строя дисковый массив и после его восстановления может получиться следующее:
cat /proc/drbd
version: 8.3.10 (api:88/proto:86-96)
GIT-hash: 5c0b0469666682443d4785d90a2c603378f9017b build by phil@fat-tyre, 2011-01-28 12:17:35
0: cs:Connected ro:Primary/Primary ds:Diskless/UpToDate C r-----
ns:0 nr:80 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:0
Это означает что нода (NodeA) с которой мы запросили статус не может подключить диск - Diskless.
А NodeB Primary и она в порядке - UpToDate .
1. Бекапим все что есть на активной ноде.
2. Поломанную ноду (NodeA) переводим в статус Secondary :
drbdadm secondary r0
3. Ищем LVM DRBD со статусом 'ACTIVE' (используем lvscan / pvscan):
[...]
ACTIVE '/dev/drbdvg/vm-111-disk-1' [50.00 GiB] inherit
[...]
PV /dev/drbd0 VG drbdvg lvm2 [465.74 GiB / 415.74 GiB free]
[...]
Деактивируем LVM :
vgchange -a n drbdvg
Далее пробуем малой кровью:
На NodeA :
drbdadm -- --discard-my-data connect r0
На NodeB :
drbdadm connect r0
смотрим результат на NodeB
watch cat /proc/drbd
должно быть что-то вроде:
version: 8.3.10 (api:88/proto:86-96)
GIT-hash: 5c0b0469666682443d4785d90a2c603378f9017b build by phil@fat-tyre, 2011-01-28 12:17:35
0: cs:SyncTarget ro:Primary/Secondary ds:UpToDate/Inconsistent C r-----
ns:0 nr:164104 dw:155908 dr:144 al:0 bm:33 lo:66 pe:376 ua:65 ap:0 ep:1 wo:b oos:3743948
[>....................] sync'ed: 4.1% (3743948/3899800)K
finish: 0:03:11 speed: 19,480 (19,480) want: 30,720 K/sec
если сбой был основательный и синхронизация не пошла, создадим на NodeA новый блок метаданных:
drbdadm down r0
drbdadm create-md r0
и снова:
На NodeA :
drbdadm -- --discard-my-data connect r0
На NodeB :
drbdadm connect r0
проверяем результат.
После окончания синхронизации на ноде A:
/etc/init.d/drbd restart
r0 должна быть ro:Primary/Primary ds:UpToDate/UpToDate
если она secondary, выполняем :
drbdadm primary r0
Активируем LVM
vgchange -a y drbdvg