Перейти к основному содержимому

Отказоустойчивость кластера PostgreSQL

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

примечание

Например, если вы создали трехнодный кластер, то в кластере будет одна мастер-нода и две реплики. Если вы добавите еще ноды, они будут репликами.

При добавлении реплик учитывайте тип размещения нод в кластере.

Мастер-нода

По умолчанию кластер состоит из одной главной ноды — мастер-ноды. При подключении к мастер-ноде доступны все операции: чтение (SELECT) и запись (INSERT, UPDATE, DELETE и другие).

Все изменения данных на мастер-ноде дублируются на репликах. Процесс репликации не влияет на работу реплик и мастер-ноды.

Реплики

Реплики — это полные копии мастер-ноды. Доступны только для чтения данных (SELECT). В кластерах облачных баз данных PostgreSQL одна реплика всегда синхронная, все последующие реплики асинхронные.

Наличие реплик в кластере обеспечивает его отказоустойчивость — если мастер-нода перестанет работать, то ее роль перейдет одной из реплик и кластер продолжит работать в штатном режиме. Когда мастер-нода будет восстановлена, она возьмет на себя роль реплики. При этом адрес мастер-ноды изменится.

Для кластера с репликами действует SLA — мы гарантируем доступность записи 99,95% и доступность чтения 99,99%.

Если в кластере нет реплик, то он будет недоступен, пока мастер-нода не будет восстановлена. Данные при этом не будут утеряны.

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

Тип размещения нод

Тип размещения нод в кластере зависит:

Посмотреть список пулов и сегментов можно в таблице Инфраструктура Servercore инструкции Локации: страны, регионы, зоны доступности, пулы и адреса дата-центров.

Доступны четыре типа размещения нод:

  • Single-Segment;
  • Multi-Segment;
  • Single-AZ;
  • Multi-AZ.

Ноды размещаются в одном сегменте однозонального пула. Применимо:

  • для кластеров без реплик;
  • кластеров с репликами, которые находятся в пулах только с одним сегментом;
  • кластеров с репликами в конфигурациях линеек HighFreq и Dedicated.
примечание

Например, вы создали трехнодный кластер (одна мастер-нода и две реплики) в конфигурации линейки HighFreq в пуле ru-2. Все ноды будут размещены в одном сегменте пула, например в ru-2c.

Изменить количество реплик

Можно увеличить или уменьшить количество реплик. При изменении количества реплик кластер продолжает работать.

  1. В панели управления в верхнем меню нажмите Продукты и выберите Облачные базы данных.
  2. Откройте вкладку Активные.
  3. Откройте страницу кластера → вкладка Настройки.
  4. Нажмите Изменить конфигурацию.
  5. В блоке Отказоустойчивость в поле Количество нод укажите новое количество реплик. Если в подсети, к которой подключен кластер, нет свободных адресов, то реплику нельзя добавить, — каждая новая реплика занимает новый адрес в подсети.
  6. Нажмите Сохранить.