LINUX.ORG.RU
ФорумAdmin

Heartbeat + drbd + Postgressql


0

0

Здрасте.

Настроил HA кластер. Все гламурно, нравится, сабж.

Вопрос - drbd работает щас у меня в режиме примари/слейв, на примари примари боюсь пускать (можно уже или не стоит ?)

Думаю сделать репликацию постгресса, как лучше в моем случае, через слоны, или базу просто можно безопасно на разделяемом диске drbd хранить а постгресс запускать через heartbeat ?

последний вариант проще, но я так не пробовал, отзовитесь кто так делал.

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

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

я знаю что разные уровни. Мне просто по человечески лень возиться с репликацией на уровне сервера SQL, поэтому я спросил - катит ли в моем конкретном примере забить на это и довольствоваться тем что дрбд зеркалирует раздел с базой по сети.

Не будет ли каких подводных глюков, о которых я не догадываюсь сейчас %)

anonizmus
() автор топика
Ответ на: комментарий от anonizmus

Падает ФС на праймари - всё это drbd перенесёт и на слейв, ибо оно тупо поблочно всё переносит на вторую ноду. :) Вот тебе собственно и подводный камень :) То же самое, если портится файл БД какой-нибудь. ИМХО надо репликацию для таких задач настраивать. Самое правильное решение. Хотя конечно нужно все нюансы учитывать. Но это уже тебе виднее.

sidor ★★
()

Нуу слоны это самопал на триггерах который сильно снижает скорость работы(раза в полтора) и требуют наличие первичного ключа в каждой таблице. Я бы попробовал без слонов. Или, ещё лучше, сделай hot backup через wal-логи. В инете есть доки и скрипты которые сильно облегчают задачу.

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

Да, триггеры могут замедлить - факт. Потому и написал, что надо знать все нюансы. Если не сильно загруженая БД - то они могут и не мешать...

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

Есть ещё косяк. Тригеры эти вызывали конфликт с тригерами приложений. Был наш тригер который при определённой ситуации добавлял строки в базу. Так вот слон ругался что "insert/update/delete тригеры на слейве запрещены" и не запускался. Тригер со слейва убрать можно, но тогда база на слейве будет отличаться от базы на мастере. В общем, подводные камни есть у него.

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

У меня есть вопрос. Я установил heartbeat + drbd + postgresql-8.3 на двух серверах. Использую первую версию heartbeat, вот мой файл haresources

server-2 IPaddr::192.168.0.1/16/eth0/10.168.0.254 \ drbddisk::r0 Filesystem::/dev/drbd0::/opt \ postgresql-8.3

После того, как я закрываю процесс postgresql-8.3 /etc/init.d/postgresql-8.3 stop

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

Подскажите, как это все автоматизировать, так чтобы в случае выключение какого либо процесса, все процессы переезжали сразу же на новый сервер???

Joe
()
Ответ на: комментарий от sidor

>Падает ФС на праймари - всё это drbd перенесёт и на слейв, ибо оно тупо поблочно всё переносит на вторую ноду. :) Вот тебе собственно и подводный камень :)

А чего ей, ФС, падать то ? Она же журналируемая, и вообще на нодах поднят рейд1.

Но суть ясна, в общем, правда если такое произойдет - то получается что drbd теряет смысл использовать, мне казалось что падение ФС как то продуманно в drbd, что бы так не косячить, упс, надо читать доки на эту тему, drbd юзаецо 0.8 ...

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