Мониторинг состояния кластера Sharded PostgreSQL и хостов
Данные о состоянии кластера и его хостов доступны в консоли управления
Диагностическая информация о состоянии кластера представлена в виде графиков.
Период обновления графиков:
- Для хостов стандартной конфигурации и хостов с увеличенным соотношением количества гигабайт RAM к количеству vCPU (
memory-optimized): 15 секунд. - Для хостов с гарантированной долей vCPU ниже 100% (
burstable): 150 секунд.
Примечание
На графиках автоматически применяются наиболее подходящие кратные единицы измерения (мегабайты, гигабайты и т. д.).
Вы можете настроить алерты в сервисе Yandex Monitoring для получения уведомлений о сбоях в работе кластера. В Yandex Monitoring используются два порога срабатывания алерта: Warning и Alarm. При превышении заданного порога вы получите оповещения через настроенные каналы уведомлений.
Мониторинг состояния кластера
Чтобы посмотреть детальную информацию о состоянии кластера Managed Service for Sharded PostgreSQL:
-
Перейдите
в сервис Yandex Managed Service for Sharded PostgreSQL. -
Нажмите на имя нужного кластера и выберите вкладку Мониторинг.
-
Чтобы перейти к работе с метриками, дашбордами или алертами в сервисе Yandex Monitoring, нажмите кнопку Открыть в Monium на панели сверху.
На странице появятся следующие графики:
-
В блоке Cluster:
- SPQR is Alive, [boolean] — работоспособность хостов-роутеров.
- ETCD is Alive, [boolean] — работоспособность хостов-координаторов.
- Maximum CPU usage — пиковая загрузка процессорных ядер.
- Average CPU usage — средняя загрузка процессорных ядер.
- Maximum memory usage — пиковое использование оперативной памяти (в байтах). При высоких нагрузках значение параметра Free уменьшается, остальные — растут.
-
Sessions → Sessions count — количество активных клиентских подключений к роутеру.
-
Connections → Backend connections count — количество активных подключений от роутера к хостам шардов.
-
В блоке Network:
- Packets received/sent — интенсивность обмена данными по сети (пакетов/с).
- Network received/sent bytes — объем полученных и отправленных данных (в байтах).
-
В блоке Time quantiles:
- Router time quantiles, ms — время выполнения клиентских запросов к каждому роутеру в квантилях, заданных настройкой Time Quantiles.
- Shard time quantiles, ms — время выполнения запросов от каждого роутера к хостам шардов в квантилях, заданных настройкой Time Quantiles.
Мониторинг состояния хостов
Чтобы посмотреть детальную информацию о состоянии отдельных хостов Managed Service for Sharded PostgreSQL:
- Перейдите
в сервис Yandex Managed Service for Sharded PostgreSQL. - Нажмите на имя нужного кластера и выберите вкладку Мониторинг → Хосты.
- Нажмите на строку нужного хоста в списке.
На этой странице выводятся графики, показывающие нагрузку на отдельный хост кластера:
- CPU usage — загрузка процессорных ядер. При повышении нагрузки значение Idle уменьшается.
- Memory usage — использование оперативной памяти (в байтах). При высоких нагрузках значение параметра Free уменьшается, остальные — растут.
- Packets received/sent — интенсивность обмена данными по сети (пакетов/с).
- Network received/sent bytes — объем полученных и отправленных данных (в байтах).
- В блоке Time quantiles:
- Router time quantiles, ms — время выполнения клиентских запросов к роутеру в квантилях, заданных настройкой Time Quantiles.
- Shard time quantiles, ms — время выполнения запросов от роутера к хостам шардов в квантилях, заданных настройкой Time Quantiles.
Настройка алертов в Yandex Monitoring
Чтобы настроить автоматический мониторинг основных показателей состояния кластера:
- В консоли управления
выберите каталог с кластером, для которого нужно настроить алерты. - Перейдите
в сервис Monitoring. - В блоке Сервисные дашборды выберите:
- Managed Service for Sharded PostgreSQL — Cluster Overview для настройки алертов кластера;
- Managed Service for Sharded PostgreSQL — Host Overview для настройки алертов хостов.
- На нужном графике нажмите на значок
и выберите пункт Создать алерт. - Если на графике несколько показателей, выберите запрос данных для формирования метрики и нажмите Продолжить. Подробнее о языке запросов читайте в документации Yandex Monitoring.
- Задайте значения порогов
AlarmиWarningдля срабатывания алерта. - Нажмите кнопку Создать алерт.
Чтобы настроить автоматический мониторинг других показателей состояния кластера:
- Создайте алерт.
- Добавьте метрику состояния.
- В параметрах алерта задайте значения порогов для оповещения.
Рекомендуемые значения порогов для некоторых метрик:
| Метрика | Обозначение | Alarm |
Warning |
|---|---|---|---|
| Количество работоспособных хостов-роутеров | spqr-is-alive |
<количество_хостов-роутеров> - 2 |
<количество_хостов-роутеров> - 1 |
| Количество работоспособных хостов-координаторов | etcd-is-alive |
<количество_хостов-координаторов> - 2 |
<количество_хостов-координаторов> - 1 |
Состояние и статус кластера
Состояние кластера указывает на исправность его хостов, а Статус показывает, запущен кластер, остановлен или находится в промежуточном состоянии.
Чтобы посмотреть состояние и статус кластера:
- Перейдите на страницу каталога и выберите Yandex Managed Service for Sharded PostgreSQL.
- Наведите курсор на индикатор в столбце Доступность в строке нужного кластера.
Состояния кластера
| Состояние | Описание | Предлагаемые действия |
|---|---|---|
| ALIVE | Кластер работает в штатном режиме. | Действий не требуется. |
| DEGRADED | Кластер работает не на полную мощность: минимум один из хостов имеет состояние, отличное от ALIVE. |
Выполните диагностику:
|
| DEAD | Кластер неработоспособен: ни один его хост не работает. | Составьте обращение в службу поддержки
|
| UNKNOWN | Состояние кластера неизвестно. | Составьте обращение в службу поддержки
|
Восстановление кластера в состоянии DEAD
Если кластер находится в состоянии DEAD, создайте запрос в техническую поддержку
При восстановлении будет создан отдельный кластер. Выберите доступную резервную копию или момент восстановления с учетом допустимой потери последних изменений: данные, записанные позже выбранного момента, в новый кластер не попадут. После восстановления переключите приложения на новый кластер.
Если причиной недоступности стала высокая нагрузка, восстановление из резервной копии само по себе ее не устранит. До возобновления полной нагрузки ограничьте интенсивность запросов, а после восстановления проанализируйте потребление ресурсов и оптимизируйте нагрузку, чтобы проблема не повторилась.
-
Восстановите кластер из резервной копии.
Резервная копия Managed Service for Sharded PostgreSQL содержит конфигурацию шардов, а данные шардов хранятся в резервных копиях соответствующих кластеров Managed Service for PostgreSQL. Если недоступен кластер с данными шарда, восстановите его отдельно. Подробнее о составе копий — в разделе Резервные копии.
-
Обновите параметры подключения в приложениях и проверьте доступ к данным в новом кластере.
-
Проверьте нагрузку на роутеры, координаторы и хосты шардов. Используйте рекомендации по выбору ресурсов. Для кластеров Managed Service for PostgreSQL, которые используются в качестве шардов, проведите диагностику производительности.
Статусы кластера
| Статус | Описание | Предлагаемые действия |
|---|---|---|
| CREATING | Идет подготовка к первому запуску | Подождите немного и приступайте к работе. Время создания кластера зависит от класса хостов. |
| RUNNING | Кластер работает в штатном режиме | Действий не требуется. |
| STOPPING | Кластер останавливается | Через некоторое время кластеру будет присвоен статус STOPPED, и он будет выведен из работы. Действий не требуется. |
| STOPPED | Кластер остановлен | Запустите кластер, чтобы вернуть его в работу. |
| STARTING | Остановленный ранее кластер запускается | Через некоторое время кластеру будет присвоен статус RUNNING. Подождите немного и приступайте к работе. |
| UPDATING | Обновляется конфигурация кластера | По завершении обновления кластеру будет присвоен статус, который был до обновления: RUNNING или STOPPED. |
| ERROR | Произошла ошибка при выполнении операции с кластером или во время окна технического обслуживания | Если кластер долго находится в этом статусе, обратитесь в службу поддержки |
| STATUS_UNKNOWN | Кластер не может определить свой статус | Если кластер долго находится в этом статусе, обратитесь в службу поддержки |