У нас есть 10 серверов, в основном недорогие настольные компьютеры, все под управлением CentOS 5.1 и Xen. Все эти 10 серверов запускают виртуальные машины Xen. Кто-то отключил питание серверного шкафа, и у пары машин сгорели жесткие диски, и они больше не загружаются. Не беспокойтесь, все образы дисков виртуальных машин имеют зеркальные копии DRBD на разных серверах, мне просто нужно запустить их, пока я работаю над резервным копированием этих двух машин.
Я заменил загрузочный диск на каждом из них и переустановил CentOS, Xen и DRBD. Однако после перезагрузки все серверы могут нормально видеть свои локальные устройства DRBD, но сообщать о состоянии «WFConnection» - ожидает подключения - для удаленного канала. Каждое устройство сообщает как «Вторичное / Неизвестное». Я проверил:
Кто-нибудь знает, почему DRBD до сих пор отказывается подключаться?
Если у вас «раздвоение мозга», вы можете использовать следующие команды, чтобы разрешить его:
drbdadm secondary all; drbdadm -- --discard-my-data connect all
drbdadm primary all; drbdadm connect all
Я настроил drbd так, чтобы он уведомлял меня, если возникает состояние разделения мозга. Вы можете сделать это в /etc/drbd.conf, используя раздвоение мозга обработчик под обработчики заголовок.
Вам придется вручную сделать раздел основным drbdadm primary all
. Затем вам нужно будет смонтировать раздел.
Вы используете сердцебиение? В таком случае сердцебиение должно позаботиться обо всем за вас. Просто беги /usr/lib/heartbeat/hb_takeover
.
Хорошо, я нашел ответ. Как указал Брент, устройство DRBD должно быть основным, прежде чем вы сможете запускать с него виртуальную машину Xen. Но я еще даже не дошел до этого этапа, два устройства DRBD на разных машинах отказывались признать существование другого. Я наконец подумал проверить / var / log / messages после перезагрузки и увидел строку «Обнаружен Split-Brain, разрывает соединение!», Которая дала мне кое-что для Google и показала следующие инструкции:
http://www.drbd.org/users-guide/s-resolve-split-brain.html
Это оказалось решением - DRBD не смог определить, какое устройство на какой машине было обновленным, поэтому вам нужно вручную указать, какое из них использовать. Было бы неплохо, если бы DRBD мог сообщать о проблеме как о статусе («SPTBrain» вместо просто «WFConnection», возможно), поскольку / var / log / messages содержит в себе целую кучу информации, и я пропустил сообщение об ошибке при первом Пару раз смотрел.