У меня есть pgpool-II для высокой доступности и repmgr для автоматического аварийного переключения. Pgpool-II также может выполнять аварийное переключение. Мне просто интересно, как сделать автоматическое аварийное переключение с помощью pgpool или repmgr? Если pgpool может выполнить аварийное переключение, нужно ли мне использовать repmgr? и использовать шелл-скрипты для раскрутки нового мастера?
PgPool-II и repmgr Автоматическая отработка отказа
Ответы (2)
Я хочу сделать автоматическое аварийное переключение через repmgrd и использовать pgpool только как точку входа для приложений. Это почти работает: я установил команду failover_command в файле конфигурации pgpool на пустую строку (''). Когда первичная база данных выходит из строя, pgpool выполняет команду failover_command (которая ничего не делает, поскольку failover_command пуста), а затем повторно пытается найти новый мастер. Когда repmgrd выполнит отработку отказа, pgpool увидит нового мастера, и все в порядке.
Если мастер остановлен, repmgrd выполнит аварийное переключение через x секунд (в зависимости от интервала переподключения и параметров attemps). Вы должны убедиться, что интервал проверки работоспособности, указанный в pgpool, больше, чем этот, иначе pgpool слишком рано отсоединит остановленную базу данных: параметры health_chek_max_retries и health_check_retry_delay (есть также health_check_period, который не ясен). Вы также должны установить для failover_on_backend_error значение no.
Я не очень уверен в этой настройке, мне все еще нужно протестировать ее более интенсивно.
pgpool-II: объединение пулов соединений, балансировка нагрузки, автоматический переход на другой ресурс, ограничение превышения количества соединений
Виртуальный IP-адрес pgpool - это их приложение, подключающееся к VIP
(параметр делегированного_ip в файле pgpool. conf
), первичный отключается, затем происходит аварийное переключение, резервное повышение до основного (автоматическое аварийное переключение), затем в конце приложения нет никаких изменений. failover_command
для записи затем настройте расположение сценария failover.sh в параметре pgpool.conf
file failover_command=""
repmgr: репликация и отработка отказа
В Repmgr. Если первичный сервер остановлен, он выполнит аварийное переключение через xx секунд (в зависимости от параметра интервала повторного подключения connect_timeout
на /etc/repmgr.conf