The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Нужен совет по drbd pri-pri"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Файловые системы, диски / Linux)
Изначальное сообщение [ Отслеживать ]

"Нужен совет по drbd pri-pri"  +/
Сообщение от Verf on 19-Мрт-12, 16:03 
Добрый день!

Задача:
Организовать отказоустойчивый с балансировкой нагрузки сервер для ПО разработчиков.

Реализовано:
2 сервера, каждый с 2-мя eth гигабитными интерфейсами. Один интерфейс eth1 - в сеть с клиентами, второй eth2 - используется для кросс-кабельного соединения между обоими серверами.

на каждом сервере создаются раздел под drbd, сам drbd настраивается в режиме pri-pri, на клиентах оба сервера прописываются в настройках клиентского ПО с равным приоритетом и поэтому загружены приблизительно равномерно. Поверх раздела drbd настроена ocfs2 файловая система. Для синхронизации drbd и ocfs используется внутренняя сеть через кросс кабель на вторых интерфейсах серверов.

Вроде всё работает замечательно, но вот непонятно как отрабатывать ситуацию, если например в одном из серверов выгорит интерфейс eth1. Т.е. прервётся синхронизация drbd и ocfs, наступит split-brain. По идее каждый сервер будет продолжать отдельно обслуживать клиентов и тем самым увеличивать разницу между расщеплёнными половинками drbd. И потом станет невозможным выбрать с кого синхронизировать данные при устранении split-brain.

Что посоветуете? Или придётся переходить на pri-sec и отказаться от балансировки нагрузки ?

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Нужен совет по drbd pri-pri"  +/
Сообщение от Zl0 (ok) on 19-Мрт-12, 19:47 
>[оверквотинг удален]
> настроена ocfs2 файловая система. Для синхронизации drbd и ocfs используется внутренняя
> сеть через кросс кабель на вторых интерфейсах серверов.
> Вроде всё работает замечательно, но вот непонятно как отрабатывать ситуацию, если например
> в одном из серверов выгорит интерфейс eth1. Т.е. прервётся синхронизация drbd
> и ocfs, наступит split-brain. По идее каждый сервер будет продолжать отдельно
> обслуживать клиентов и тем самым увеличивать разницу между расщеплёнными половинками drbd.
> И потом станет невозможным выбрать с кого синхронизировать данные при устранении
> split-brain.
> Что посоветуете? Или придётся переходить на pri-sec и отказаться от балансировки нагрузки
> ?

Если нет связи, то гаси одну голову, самое простое условие при расщеплении мозгов, во всех документах написано, если выгорит тот что смотрит в клиентскую сеть, то и писаться ничего не будет.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Нужен совет по drbd pri-pri"  +/
Сообщение от Verf on 19-Мрт-12, 20:27 
>[оверквотинг удален]
>> в одном из серверов выгорит интерфейс eth1. Т.е. прервётся синхронизация drbd
>> и ocfs, наступит split-brain. По идее каждый сервер будет продолжать отдельно
>> обслуживать клиентов и тем самым увеличивать разницу между расщеплёнными половинками drbd.
>> И потом станет невозможным выбрать с кого синхронизировать данные при устранении
>> split-brain.
>> Что посоветуете? Или придётся переходить на pri-sec и отказаться от балансировки нагрузки
>> ?
> Если нет связи, то гаси одну голову, самое простое условие при расщеплении
> мозгов, во всех документах написано, если выгорит тот что смотрит в
> клиентскую сеть, то и писаться ничего не будет.

так тут-то и затыка!
:) а как определить на какой нет связи?

если на каждой ноде сделать скрипт с попингуем, то при выгорании eth2 на первой ноде пропадёт связь между нодами и получается что каждая зафиксировала "падение" соседа. И что - обоим теперь выключатся?

Чисто в теории если на server1 выгорает eth2, то на нём же надо сразу же класть и eth1 - тогда нода останется в изоляции и будет заведомо брошенной. Только может получится ситуация, что так решат обе ноды и сами заизолируются :) и где тут отказоустойчивость тогда? :)

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Нужен совет по drbd pri-pri"  +/
Сообщение от saNdro on 19-Мрт-12, 23:32 
>[оверквотинг удален]
> так тут-то и затыка!
> :) а как определить на какой нет связи?
> если на каждой ноде сделать скрипт с попингуем, то при выгорании eth2
> на первой ноде пропадёт связь между нодами и получается что каждая
> зафиксировала "падение" соседа. И что - обоим теперь выключатся?
> Чисто в теории если на server1 выгорает eth2, то на нём же
> надо сразу же класть и eth1 - тогда нода останется в
> изоляции и будет заведомо брошенной. Только может получится ситуация, что так
> решат обе ноды и сами заизолируются :) и где тут отказоустойчивость
> тогда? :)

Вариант - доделать кластер до конца. Peacemaker+heartbeat или другой backend. Связь через "клиентские" порты и гашение системой управления кластером одного заранее выбранного узла при падении интерфейсов синхронизации распределённой фс.

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "Нужен совет по drbd pri-pri"  +/
Сообщение от Zl0 (ok) on 20-Мрт-12, 20:11 
>[оверквотинг удален]
>> на первой ноде пропадёт связь между нодами и получается что каждая
>> зафиксировала "падение" соседа. И что - обоим теперь выключатся?
>> Чисто в теории если на server1 выгорает eth2, то на нём же
>> надо сразу же класть и eth1 - тогда нода останется в
>> изоляции и будет заведомо брошенной. Только может получится ситуация, что так
>> решат обе ноды и сами заизолируются :) и где тут отказоустойчивость
>> тогда? :)
> Вариант - доделать кластер до конца. Peacemaker+heartbeat или другой backend. Связь через
> "клиентские" порты и гашение системой управления кластером одного заранее выбранного узла
> при падении интерфейсов синхронизации распределённой фс.

+проверка через serial port, мало ли ченть с модулями сетевыми случится или еще какой-нибудь факап.

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру