Мне нужно настроить IP-адрес кластера серверов приложений для подключения к кластеру серверов баз данных. От 1 к 1 довольно просто сопоставить сервер приложений с сервером базы данных, но когда дело касается кластерной среды, Интересно, как мне настроить / настроить IP-адрес на серверах приложений для подключения к более чем одному серверу баз данных, особенно при активной / пассивной настройке. Я запутался, поскольку не уверен, как мне настроить IP, где сервер приложений знает, с каким активным сервером базы данных он должен взаимодействовать, и когда связываться с другим сервером базы данных, когда главный сервер базы данных не работает. Может ли кто-нибудь указать мне направление, в котором мне следует двигаться?
Это конфигурация для настройки кластера / высокой доступности:
Это конфигурация для настройки кластера / высокой доступности:
Это конфигурация для настройки кластера / высокой доступности:
Могу говорить только о PostgreSQL
, так как мне не хватает знаний о MongoDB
:
DRBD
для PostgreSQL
. ] PostgreSQL
синхронная потоковая репликация, которая реализована с версии 9.1. PostgreSQL
назначена главная роль. Однако у этого подхода есть и обратная сторона: после отработки отказа вам, возможно, придется скопировать данные из «теперь-главного» в «now-slave» (чтобы вернуть кластер в полностью рабочее состояние). Это не такая уж большая проблема, потому что переключение при отказе
pg_basebackup
), PostgreSQL
обработает это автоматически, после того как отказавший узел был возвращен в Если вы реализуете этот подход, я бы рекомендовал (автоматически) отслеживать состояние репликации и некоторые детали, например, через postgres -c "psql -c \" SELECT application_name, client_addr, client_hostname, sync_state, state, sync_priority, replay_location FROM pg_stat_replication; \ ""
, что дает нечто подобное
application_name | client_addr | client_hostname | sync_state | состояние | sync_priority | replay_location
-------------------- + ------------- + --------------- - + ------------ + ----------- + --------------- + ------ -----------
node2.example.com | 10.0.15.21 | | синхронизация | потоковое | 0 | 0 / 40000C8
, чтобы вы были проинформированы, если что-то пойдет не так.
Раскрытие: Я использую это в производстве уже ~ два года.
Изменить: Хотя этот учебник использует Fedora 19, это может быть интересно и вам полезно.