[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: DRBD + ...






29 мая 2013 г., 23:17 пользователь "Артём Н." <artiom14@yandex.ru> написал:
28.05.2013 23:06, Aleksandr Sytar пишет:
>
> 28 мая 2013 г., 21:02 пользователь "Артём Н." <artiom14@yandex.ru
> <mailto:artiom14@yandex.ru>> написал:
>
>     Мало того, для DRBD надо создавать метаданные.
>     Есть ли вариант без этого?
>     Т.е., если один диск упадёт, его было возможно легко заменить (просто выключив
>     сервер, вынув испорченный диск и вставив новый)?
>     И, если одна машина упадёт, всё работало бы и на одной второй?
>
>
> Только если упавший диск будет в момент падения слейвом.
>
С этим ясно. В принципе, переключение может сделать и Pacemaker.

> Метаданные можно хранить внутри раздела, но это, как понимаете, чревато боком
>
Сейчас метаданные и хранятся внутри раздела.
Проблема в том, что при замене диска, придётся создавать метаданные.
Это нереально.
Сегодня я перезагрузил один, он не поднялся, видимо из-за того, что репозиторий
на DRBD я прописал в fstab, забыл про модуль и ещё таймаут оставил нулевым (и
ещё где-то напортачил, скорее всего).
Позвонил, чтобы посмотрели, почему не загружается. Дежурный инженер этот сервер
даже в консольке не смог найти. Завтра надо ехать.
Так что, про ручное пересоздание кем-то, каких-то метаданных DRBD, говорить не
приходится.

А почему вы не хотите переложить управление статусом DRBD на Pacemaker?
 

Единственный вариант, если что-то сдохнет: выключить, перебросить дохлый диск на
живой и снова включить.

Остаётся только RAID-0 поверх двух RAID-1 и объединение в общее хранилище
каким-либо образом по сети или использование двух независимых хранилищ?

При падении ОС, вариант - показать какую строчку набрать, на какую кнопку нажать.
Как сделать так, чтобы было реально восстановить, при этом не сохраняя полный
терабайтный образ?


Посмотрите в сторону хендлеров состояний DRBD:

handlers {
pri-on-incon-degr "/usr/lib/drbd/notify-pri-on-incon-degr.sh; /usr/lib/drbd/notify-emergency-reboot.sh; echo b > /proc/sysrq-trigger ; reboot -f";
pri-lost-after-sb "/usr/lib/drbd/notify-pri-lost-after-sb.sh; /usr/lib/drbd/notify-emergency-reboot.sh; echo b > /proc/sysrq-trigger ; reboot -f";
local-io-error "/usr/lib/drbd/notify-io-error.sh; /usr/lib/drbd/notify-emergency-shutdown.sh; echo o > /proc/sysrq-trigger ; halt -f";
fence-peer "/usr/lib/drbd/crm-fence-peer.sh";
split-brain "/usr/lib/drbd/notify-split-brain.sh root";
out-of-sync "/usr/lib/drbd/notify-out-of-sync.sh root";
before-resync-target "/usr/lib/drbd/snapshot-resync-target-lvm.sh -p 15 -- -c 16k";
after-resync-target /usr/lib/drbd/unsnapshot-resync-target-lvm.sh;
}


Reply to: