LINUX.ORG.RU
ФорумAdmin

DRBD и виртуальные машины: опять 25...


0

0

Всё, голову нафиг сломал, не могу больше :(

Дано:
Первая хост нода:
Виртуальные машины:
1
3
5
Вторая хост нода:
Виртуальные машины:
2
4
Чего нет:
SAN-сторэджей, NAS'ов и пр, и пр.
Есть голова, руки и навыки мытарств с DRBD

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

Соответственно, нужно, чтобы некий интерфейс, умеющий мигрировать виртуалки, также умел работать с DRBD, вовремя переключая состояние ресурсов /dev/drbdX

Вопрос 1: Какое ПО умеет не только просто тупо мигрировать ВМ, но и работать с DRBD при этом из коробки?

Самое интеересное к Вопросу 1 на закуску: у меня лично DRBD в режиме Secondary/Primary может работать годами абсолютно стабильно и ничего ей не будет, а вот при работе в режиме Primary/Primary порой буквально через несколько минут наступает Split-Brain и нода-сосед начинает отображаться как Unknown. Я не знаю, почему это так, понятия не имею, но факт остаётся фактом: Primary/Primary постоянно разрушается и Split-Brain'иться.
Значит, нужен управляющий софт, который умеет переключать остояние ресурса DRBD-ресурсов.
Proxmox не умеет, virt-manager не умеет... ХОТЬ ЧТО-НИБУДЬ умеет???? :(

Вопрос 2: Нужна ли кластерная ФС (конкретно OCFS), если и в режиме Primary/Primary доступ к /dev/drbdX-ресурсу осуществляется в каждый момент времени только с одной ноды и уж точно не конкурентно???

★★★★★

Кто-нибудь знает, discard-zero-canges политику имеет реальный смысл применять к Primary/Primary для Live migration?

DRVTiny ★★★★★ ()

Вопрос 1: heartbeat

Вопрос 2: нет, если можешь гарантировать, что изменения протащились между нодами.

AEP ★★★★★ ()
Ответ на: комментарий от DRVTiny

Путем рестарта сервиса libvirt (heartbeat умеет только останавливать и запускать сервисы). Впрочем, здесь говорить о миграции нет смысла, поскольку после срабатывания heartbeat заведомо известно, что другой хост сдох, а значит, виртуалка не запущена.

AEP ★★★★★ ()
Ответ на: комментарий от AEP

Ну вот именно, а надо, чтобы ganeti или нечто подобное делало так:
1)

До миграции с Node 1 на Node 2:
Node 1 ============== Node 2
Primary/Secondary === Secondary/Primary

2) Переключение состояния DRBD-ресурсов на обеих нодах #1

Во время миграции с Node 1 на Node 2:
Node 1 ============== Node 2
Primary/Primary ===== Primary/Primary

3) Переключение состояния DRBD-ресурсов на обеих нодах #2

По завершении миграции с Node 1 на Node 2:
Node 1 ============== Node 2
Secondary/Primary ===== Primary/Secondary

Как вы думаете, неужели ни один софт этого не умеет?
Понятно, что если DRBD нормально работал с Primary/Primary, а не делал так, как описано у меня ВОТ ЗДЕСЬ: http://www.gossamer-threads.com/lists/drbd/users/19605?do=post_view_threaded - то всё было бы хорошо и инкакой вообще поддержки со стороны ПО виртуализации не потребовалось бы, НО не работает!
У меня по Primary/Primary стастистика следующая: из 3-х ресурсов 2 свалились в Primary/Uknnown, один живёт, но как! Это просто сказка: на одной-то ноде он работает, а вот на второй на любую команду чтения, в т.ч. на kpartx /dev/drbdX отвечает: medium failed. Иными словами, из 3-х Primary/Primary реурсов ни один не работает, а это печально.
При этом стоит заметить, что на одном из DRBD-ресурсов, пока он ещё работал, я вчера благополучно провёл живую миграцию работающей системы (правда, скорее всего не нагруженной, но в логи что-то пишущей тем не менее). То есть в принципе-то пока закрылки не заклинило, всё работает как надо, но почему их постоянно клинит???? :(

DRVTiny ★★★★★ ()
Ответ на: комментарий от DRVTiny

Идея не может быть правильной или неправильной до того, как сформулирована задача. При каких условиях виртуалки должны мигрировать («по щучьему велению, по моему хотению» или «когда возникнут проблемы с хостом»)? Используется ли DRBD для получения отказоустойчивой системы, или только как замена shared storage?

AEP ★★★★★ ()
Ответ на: комментарий от AEP

- Виртуалки должны мигрировать в первую очередь с целью распределения нагрузки между слабыми хост-нодами. Вручную, но удобными средствами, чтобы это мог делать не только я серией своих шаманских заклинаний, перемежаемых матерной руганью, со ссылками на баный DRBD и прочее
- DRBD используется исключительно как нищебродское решение по причине отсутстаия нормального SAN'а или хотя бы NAS'а

Вот!

DRVTiny ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.