LINUX.ORG.RU
ФорумAdmin

Отказоустойчивый кластер из трёх машин.

 ,


0

2

Привет.
Вопрос теоретический.
Имеется две машины, с разными ресурсами (предположим - на одной nginx, на другой - базы).
Необходимо реализовать кластер на DRBD и hearbeat.
Если мы берем еще две машины, на которые будем складывать DRBD зеркала - вопросов не возникает.
Но можно ли обойтись всего одним дополнительным сервером?
Как я это себе представляю - два мастер сервера (nginx и базы) и один сервер, на который по DRBD зеркалируются сразу оба сервера, в случае падения одного из мастеров - роль этого мастера берет на себя slave.



Последнее исправление: peektoseen (всего исправлений: 1)

Ответ на: комментарий от peektoseen

Вашу задачу можно решить многими способами исходя из того, что нужно кластеризировать. Так что приходите за ответом тогда, когда вместо сферического сервера в вакууме появится хоть что-то определенное.

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

Если нужно только кластеризировать БД мускульные, тогда советую mariadb-galera. В мультимастере работает на ура. Если нужно сделать автоматическую миграцию айпишника на другой сервер в случае падения первого - то вариантов много. Можно heartbeat заюзать. Но я своих задач я больше присматриваюсь к uwsgi с legion плагином. В моем случае нужно лишь переключить айпишник и дернуть пару команд в консоли. Городить drbd+heartbeat не советую без острой необходимости.

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

Первоначальное условие - два сервера в работе, один - под резерв. С репликацией такое возможно?

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

Первоначальное условие - два сервера в работе, один - под резерв. С репликацией такое возможно?

Опять же, что значит резерв? Какие требования к нему? Одно дело что третий сервер должен подхватывать функционал моментально после падения первых двух (синхронный мультимастер), а другое - просто сервак на который сливаются с определенной периодичностью бекапы БД.

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

Верно, он должен подхватывать функционал, если один из основных лёг.

Тогда лучше всего подходит вариант с mariadb-galera. Плюс софтина, которая будет переключать на резервный сервер в случае падения одного из первых двух.

iron ★★★★★
()

ИМХО - лучше сделать master-slave полусинхронную репликацию мускулом (percona replication manager), + сверху балансировщик запросов к БД для операций чтения. Это если важна целостность данных в базе, и недопустимы потери данных в момент отваливания. master-master в общем случае даст худшую производительность, чем master-slave.

nginx - если там контента немного и он весь влезет в кеши, ИМХО можно попытаться юзать сетевую ФС. Ну или rsync'ом периодически синхронизировать содержимое серверов, если контент меняется нечасто.

NiTr0 ★★★★★
()

Это лучше делать через glusterfs/ceph/xtreemefs, а sql кластеризовывать sql-средствами.

ktulhu666 ☆☆☆
()
Ответ на: комментарий от NiTr0

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

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

с помощью репликаций возможно базы с двух разных серверов кидать на один slave

Нет, разве что запускать два mysqld

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

Невозможно. Принципиально невозможно. Что в таком случае будет при рассинхронизации мастеров?

Да и вообще, нафига вам 2 мастера?

NiTr0 ★★★★★
()

базы и drbd вместе - очень плохая мысль.

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