Высокая доступность кластера Managed Service for PostgreSQL
Высокая доступность кластера Managed Service for PostgreSQL определяется количеством и расположением его хостов, настройками репликации и другими параметрами кластера.
Количество и расположение хостов кластера
Кластер может состоять из одного или нескольких хостов.
Кластер из одного хоста не обеспечивает высокую доступность. При выходе из строя виртуальной машины хоста-мастера кластер будет недоступен на чтение и запись до окончания работ по восстановлению ВМ. На кластер из одного хоста не распространяется Соглашение об уровне обслуживания (SLA)
Важно
Создавать кластер из одного хоста не рекомендуется.
Кластер с двумя хостами, расположенными в разных зонах доступности, считается высокодоступным и на него распространяется SLA
Кластер с тремя и более хостами, расположенными в трех разных зонах доступности, считается высокодоступным и на него распространяется SLA
Подробнее см. в разделе Планирование топологии кластера.
Настройки репликации и переключения мастера
Высокая доступность обеспечивается механизмами репликации и переключения мастера, которые имеют следующие особенности:
- В кластере используется потоковая репликация. Каждый хост-реплика получает поток репликации от другого хоста (обычно это хост-мастер). Managed Service for PostgreSQL управляет потоками репликации в кластере автоматически, но при необходимости ими можно управлять вручную. Реплики, для которых вручную установлен источник репликации, имеют ряд ограничений.
- По умолчанию в кластере используется механизм автоматического выбора и переключения на новый мастер. Этот механизм можно отключить, при этом в случае отказа мастера необходимо вручную выбрать новый мастер и переключиться на него.
- Если для хоста используется публичный доступ, то для реплик он также должен быть включен, иначе при переключении мастера кластер станет недоступен.
Важно
Использование особого FQDN упрощает написание приложений, но приводит к временной недоступности кластера при переключении на новый мастер. Для быстрого переключения на новый мастер необходимо реализовать на стороне приложения отслеживание смены мастера.
Настройки обслуживания
В процессе технического обслуживания кластер с двумя и более хостами может быть недоступен для записи до автоматического переключения мастера. Кластер из одного хоста полностью недоступен на время технического обслуживания. Поэтому рекомендуется выбирать предпочтительный день недели и час обслуживания с учетом предполагаемой нагрузки на кластер.
При обновлении версии PostgreSQL кластер с тремя и более хостами недоступен на запись, но минимум одна реплика доступна для чтения. Кластер, содержащий один или два хоста, полностью недоступен на время обновления версии PostgreSQL. Рекомендуется выбирать момент обновления кластера с учетом предполагаемой нагрузки на него.
Прочие настройки
На доступность кластера также могут влиять следующие настройки:
- настройки резервного копирования;
- выбранный тип дисков хранилища;
- классы хостов;
- режим работы и настройки менеджера подключений;
- квоты и лимиты;
- настройки журнала опережающей записи (WAL).