URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 95851
[ Назад ]

Исходное сообщение
"Переключение режима работы DRBD"

Отправлено Vova , 06-Ноя-14 14:21 
Всем привет. Есть два сервера с Proxmox. Объединены в кластер. Общее хранилище создано через DRBD. На серверах около 15 виртуальных машин. Виртуалки жутко тормозят. Есть с чем сравнить, т.к. раньше теже виртуалки работали без кластера и DRBD и все было в норме. DRBD работает в режиме primaty/primary. Хочу переключить в режим primary/secondary и поменять протокол синхронизации с С на А. Как это правильно сделать чтоб ничего не порушить ?

Заранее спасибо за ответ.


Содержание

Сообщения в этом обсуждении
"Переключение режима работы DRBD"
Отправлено Алексей , 07-Ноя-14 10:44 
Смена протокала вам не поможет. Судя по описанию, у Вас, скорее всего, GFS2 файловая система. Вот она-то и тормозит. Замените ваш кластер на primary/secondary с ext4 и будем вам счастье.

"Переключение режима работы DRBD"
Отправлено Vova , 07-Ноя-14 14:05 
При установке и настройке всего этого хозяйства я не создавай на drbd разделе файловую систему. Т.е. команду типа "mkfs.ext4 /dev/drbd0" я не делал. Вот теперь не могу понять: либо drbd создал какую-то свою ФС по умолчанию либо у меня раздел drbd вообще некое "сырое" устройство ? Как это можно узнать ?



"Переключение режима работы DRBD"
Отправлено Vova , 07-Ноя-14 14:14 
> При установке и настройке всего этого хозяйства я не создавай на drbd
> разделе файловую систему. Т.е. команду типа "mkfs.ext4 /dev/drbd0" я не делал.
> Вот теперь не могу понять: либо drbd создал какую-то свою ФС
> по умолчанию либо у меня раздел drbd вообще некое "сырое" устройство
> ? Как это можно узнать ?

root@proxmox1:~# /etc/init.d/drbd status
drbd driver loaded OK; device status:
version: 8.3.13 (api:88/proto:86-96)
GIT-hash: 83ca112086600faacab2f157bc5a9324f7bd7f77 build by root@sighted, 2012-10-09 12:47:51
m:res  cs         ro               ds                 p  mounted  fstype
0:r0   Connected  Primary/Primary  UpToDate/UpToDate  C
root@proxmox1:~#

поле fstype пустое.


"Переключение режима работы DRBD"
Отправлено Алексей , 07-Ноя-14 16:24 
Какой тип виртуализации вы используете? Образы (диски) машин / контейнеров где хранятся?

"Переключение режима работы DRBD"
Отправлено Vova , 07-Ноя-14 16:25 
> Какой тип виртуализации вы используете? Образы (диски) машин / контейнеров где хранятся?

KVM. Образы машин хранятся на DRBD разделе.


"Переключение режима работы DRBD"
Отправлено Алексей , 07-Ноя-14 22:59 
Используете ли вы Clustered LVM? Он тоже может тормозить из-за глобальных блокировок.

До того как начало тормозить, было просто два сервера и у каждого отдельные диски или был один сервер? При использовании DRBD вы теряете производительность в два раза на счет того, что диски становятся "общими" на два сервера.


"Переключение режима работы DRBD"
Отправлено Vova , 08-Ноя-14 06:50 
> Используете ли вы Clustered LVM? Он тоже может тормозить из-за глобальных блокировок.
> До того как начало тормозить, было просто два сервера и у каждого
> отдельные диски или был один сервер? При использовании DRBD вы теряете
> производительность в два раза на счет того, что диски становятся "общими"
> на два сервера.

Clustered LVM - скорей всего нет, т.к. ставился ProxMox и сам по умолчанию сделал разделы. Да, до drbd было два не связанных с собой сервера. Купили новые и решили сделать кластер. Решили сделать как вы предлагали: переделать кластер в primary/secondary с EXT4 на разделе с DRBD. О результатах отпишусь. В этом случае есть вопрос: я правильно понял что при падении primary сервера, secondary придется вручную переводить в режим primary и вручную же стартовать виртуалки на нем ?


"Переключение режима работы DRBD"
Отправлено Алексей , 09-Ноя-14 00:23 
В таком случае у вас скорее всего LVM на DRBD, так как хранить образы виртуальных машин на сыром DRBD устройстве Proxmox не умеет. В этом случае файловую систему создавать не нужно.

Чтобы в случае падения DRBD автоматически становился primary на резервном сервере нужно сделать DRBD устройство кластерным ресурсом. Proxmox использует Red Hat Сluster стек. Детали можно посмотреть в документации http://www.drbd.org/users-guide/ch-rhcs.html.


"Переключение режима работы DRBD"
Отправлено Vova , 09-Ноя-14 07:21 
> В таком случае у вас скорее всего LVM на DRBD, так как
> хранить образы виртуальных машин на сыром DRBD устройстве Proxmox не умеет.
> В этом случае файловую систему создавать не нужно.
> Чтобы в случае падения DRBD автоматически становился primary на резервном сервере нужно
> сделать DRBD устройство кластерным ресурсом. Proxmox использует Red Hat Сluster стек.
> Детали можно посмотреть в документации http://www.drbd.org/users-guide/ch-rhcs.html.

Да, все так. Т.е. получается тормоза из-за типа кластерной ФС ?


"Переключение режима работы DRBD"
Отправлено Vova , 09-Ноя-14 19:31 
>> В таком случае у вас скорее всего LVM на DRBD, так как
>> хранить образы виртуальных машин на сыром DRBD устройстве Proxmox не умеет.
>> В этом случае файловую систему создавать не нужно.
>> Чтобы в случае падения DRBD автоматически становился primary на резервном сервере нужно
>> сделать DRBD устройство кластерным ресурсом. Proxmox использует Red Hat Сluster стек.
>> Детали можно посмотреть в документации http://www.drbd.org/users-guide/ch-rhcs.html.
> Да, все так. Т.е. получается тормоза из-за типа кластерной ФС ?

Почитал про GlusterFS. Тоже пишут есть нарекания как по производительности так и по надежности. Вообще задача такая: нужно из одного сервера сделать стэндбай для второго. На обоих Proxmox с одинаковыми виртуалками. На старых серверах просто бекапили по ночам виртуалки и ресторили на втором. Но такая схема перестала себя оправдывать когда число виртуалок дошло до 8. Просто не успевали за ночь забэкапится. И вот тут начали думать о кластере. HA в общем то особо не нужно. Специфика конторы позволяет "уронить" все на пол часа. Главное не потерять данные. Может быть все просто каким-нить rsync'ом можно сделать ?


"Переключение режима работы DRBD"
Отправлено Алексей , 10-Ноя-14 11:26 
rsync'ом не получится, так как данные находятся в LVM томах. DRBD в вашем случае выглядит оптимальным вариантом. Посмотрите в сторону оптимизации его производительности http://www.drbd.org/users-guide/p-performance.html

"Переключение режима работы DRBD"
Отправлено Vova , 12-Ноя-14 08:01 
> rsync'ом не получится, так как данные находятся в LVM томах. DRBD в
> вашем случае выглядит оптимальным вариантом. Посмотрите в сторону оптимизации его производительности
> http://www.drbd.org/users-guide/p-performance.html

Собрал drbd в режиме primary/secondary. Возник теперь вопрос. Как переключать виртуалки на второй сервер ?


"Переключение режима работы DRBD"
Отправлено InventoRs , 14-Ноя-14 17:32 
>> rsync'ом не получится, так как данные находятся в LVM томах. DRBD в
>> вашем случае выглядит оптимальным вариантом. Посмотрите в сторону оптимизации его производительности
>> http://www.drbd.org/users-guide/p-performance.html
> Собрал drbd в режиме primary/secondary. Возник теперь вопрос. Как переключать виртуалки
> на второй сервер ?

Перенести на второй сервер?


"Переключение режима работы DRBD"
Отправлено Vova , 15-Ноя-14 14:41 
>>> rsync'ом не получится, так как данные находятся в LVM томах. DRBD в
>>> вашем случае выглядит оптимальным вариантом. Посмотрите в сторону оптимизации его производительности
>>> http://www.drbd.org/users-guide/p-performance.html
>> Собрал drbd в режиме primary/secondary. Возник теперь вопрос. Как переключать виртуалки
>> на второй сервер ?
> Перенести на второй сервер?

Да. Уже перенес. На втором серваке создаем виртуалку с такими же параметрами. Далее в конфиге виртуалки подсовываем ей диск от первой виртуалки, меняем mac на тот что у первой виртуалки. Все. В случае перехода на резерв нужно вручную переключить DRBD в primaty, примонтировать раздел DRBD и стартануть виртуалки. Может криво, но мне подходит, т.к. уже писал HA особо не нужен, главное актуальность данных на резервных виртуалках.


"Переключение режима работы DRBD"
Отправлено InventoRs , 16-Ноя-14 00:59 
>[оверквотинг удален]
>>>> http://www.drbd.org/users-guide/p-performance.html
>>> Собрал drbd в режиме primary/secondary. Возник теперь вопрос. Как переключать виртуалки
>>> на второй сервер ?
>> Перенести на второй сервер?
> Да. Уже перенес. На втором серваке создаем виртуалку с такими же параметрами.
> Далее в конфиге виртуалки подсовываем ей диск от первой виртуалки, меняем
> mac на тот что у первой виртуалки. Все. В случае перехода
> на резерв нужно вручную переключить DRBD в primaty, примонтировать раздел DRBD
> и стартануть виртуалки. Может криво, но мне подходит, т.к. уже писал
> HA особо не нужен, главное актуальность данных на резервных виртуалках.

не совсем понял, если у вас проксмокс на кластере, то /etc/pve у вас должна быть общая для двух нод, она синкается между собой, кажется corosync, поверх drbd по идее можно натянуть lvm cluster и там уже крутить все остальное.

Но DRBD еще не проверял основательно, только через пару недель в планах.