Действия с топологией кластера
Обзор
Топология кластера отображается на странице Topology веб-интерфейса ADPG Control. Вы можете выбрать кластер, для которого требуется представить топологию, из раскрывающегося списка Cluster в верхней части страницы. На схеме топологии показаны все ноды кластера с сервисом ADPG. Ноды соединены друг с другом стрелками, указывающими направление потоков репликации.
На схеме отображается следующая информация для каждой ноды:
-
Роль в кластере:
Leader,Async replica,Sync replica. -
Имя ноды.
-
Статус:
Running,Stopping,Initializing,Stopped,Failed,Unknown,Out of patroni.
Для нод-реплик на диаграмме топологии отображается lag (в байтах) — количество байт, на которое состояние реплики отстает от состояния лидера.
В таблице ниже показано сопоставление состояний нод patroni с состояниями, указанными на диаграмме.
| Статус ноды на диаграмме | Статус patroni |
|---|---|
Running |
running, streaming |
Stopping |
stopping |
Initializing |
|
Stopped |
stopped |
Failed |
|
Unknown |
Нода с неизвестным статусом |
Out of patroni |
Нода не находится в кластере, например, если на ноде остановлен сервис patroni |
Отображение сведений о ноде
Вы можете кликнуть ноду на диаграмме, чтобы отобразить следующие сведения:
-
CPU — процент использования CPU;
-
RAM — процент использования RAM;
-
Disk — процент использования диска;
-
Lag — количество байт, на которое состояние реплики отстает от состояния лидера;
-
Delay — задержка времени между созданием записи WAL на лидере и её воспроизведением на реплике, установленная через параметр recovery_min_apply_delay;
-
Timeline — timeline PostgreSQL;
-
Host — IP-адрес хоста;
-
Tags — теги patroni.
Панель инструментов, позволяющая закрыть окно со сведениями о состоянии ноды и масштабировать схему топологии, также отображается на странице Topology. На панели можно увидеть масштаб схемы в процентах.
Панель включает следующие кнопки:
-
— увеличить масштаб;
-
— уменьшить масштаб;
-
— развернуть схему на весь экран;
-
— уменьшить размер схемы до 100%;
-
— скрыть окно со сведениями о состоянии ноды.
Выполнение действий
На странице Topology вы можете выполнить следующие действия:
Действия можно выполнять только для реплик.
Чтобы выполнить действия, нажмите Actions в верхней части страницы.
Вы также можете запускать действия из меню ноды.
В этом случае ноду, для которой выполняется действие, нельзя изменить из окна действия — поле Candidate для Switchover и Failover, а также поле Instance для Reinit заполняются автоматически.
Все действия ADPG Control регистрируются на странице Actions. На этой странице можно получить информацию об успешных действиях и ошибках, возникающих в случае сбоя.
|
ВАЖНО
Обратите внимание, что действия Failover и Switchover могут привести к потере данных. Это зависит от того, насколько актуальны данные реплики-кандидата по сравнению с лидером. Оба действия также прерывают текущие транзакции и сессии на лидере. |
Switchover
Действие Switchover передает роль лидера указанной ноде-реплике. Бывший лидер становится репликой. Если кластер содержит синхронные реплики, необходимо выбрать одну из синхронных реплик в качестве кандидата на переключение. В противном случае действие завершится с ошибкой candidate name does not match with sync_standby.
Это действие можно использовать, когда кластер исправен:
-
В кластере есть лидер.
-
В кластере с синхронной репликацией доступны синхронные реплики.
Если кластер неисправен, используйте Failover вместо действия Switchover.
Чтобы выполнить действие, нажмите Switchover в списке действий, укажите ноду-кандидат, которую необходимо сделать лидером (если она не определена), и нажмите Run.
Failover
Действие Failover может перенести роль лидера на асинхронную или синхронную реплику. Бывший лидер становится репликой.
Это действие можно использовать, когда кластер неисправен, например, в кластере нет лидера или в кластере с синхронной репликацией нет доступной синхронной реплики.
Вы можете запустить Failover и в работоспособном кластере, однако в этом случае рекомендуется использовать действие Switchover.
Чтобы выполнить действие, нажмите Failover в списке действий, укажите ноду-кандидат, которая должна быть назначена лидером (если она не определена), и нажмите Run. Также при указании ноды можно выбрать вариант Autoselect в выпадающем списке — нода-кандидат будет определена автоматически.
|
ПРИМЕЧАНИЕ
Если в кластере происходит автоматическое действие failover, оно не регистрируется на странице Actions. На этой странице регистрируются действия, запущенные только вручную.
|
Reinit
Действие Reinit повторно инициализирует ноду кластера. Все данные на этой ноде будут перезаписаны.
Reinit рекомендуется в случаях, когда база данных ADPG на реплике не может "догнать" базу данных на лидере и patroni не способен автоматически восстановить её. Reinit включает в себя удаление существующего каталога данных и создание новой реплики на основе текущего лидера.
Чтобы выполнить действие, нажмите Reinit в списке действий, укажите ноду, которая должна быть повторно инициализирована (если она не определена), и нажмите Run.