Мониторинг состояния кластера Valkey™ и хостов
Данные о состоянии кластера и его хостов доступны в консоли управления
Диагностическая информация о состоянии кластера представлена в виде графиков.
Период обновления графиков:
- Для хостов стандартной конфигурации и хостов с увеличенным соотношением количества гигабайт RAM к количеству vCPU (
memory-optimized): 15 секунд. - Для хостов с гарантированной долей vCPU ниже 100% (
burstable): 150 секунд.
Примечание
На графиках автоматически применяются наиболее подходящие кратные единицы измерения (мегабайты, гигабайты и т. д.).
Вы можете настроить алерты в сервисе Yandex Monitoring для получения уведомлений о сбоях в работе кластера. В Yandex Monitoring используются два порога срабатывания алерта: Warning и Alarm. При превышении заданного порога вы получите оповещения через настроенные каналы уведомлений.
Мониторинг состояния кластера
Для просмотра детальной информации о состоянии кластера Yandex Managed Service for Valkey™:
-
В консоли управления
перейдите в каталог с нужным кластером. -
Перейдите в сервис Yandex Managed Service for Valkey™.
-
Нажмите на имя нужного кластера и выберите вкладку Мониторинг.
-
Чтобы перейти к работе с метриками, дашбордами или алертами в сервисе Yandex Monitoring, нажмите кнопку Открыть в Monitoring на панели сверху.
На странице появятся следующие графики:
-
Can Read — отображает кластеры, доступные на чтение.
-
Can Write — отображает кластеры, доступные на запись.
-
Cache Hit Rate — процент попаданий в кеш на каждом хосте.
Значения, близкие к 1, говорят об эффективном использовании кластера в качестве кеширующего сервера. Если процент попаданий в кеш близок к 0, возможно, следует изменить логику работы приложения, время жизни ключей или политику управления оперативной памятью при ее дефиците.
-
Client recent max input buffer size — использование памяти для обслуживания клиентских подключений, выполняющих запись данных (в байтах).
-
Client recent max output buffer size — использование памяти для обслуживания клиентских подключений, выполняющих чтение данных:
- Soft Limit — мягкий лимит использования памяти;
- Hard Limit — жесткий лимит использования памяти.
При превышении Soft Limit кластер в течение нескольких секунд будет ожидать его снижения. Если значение не уменьшится, подключение будет закрыто.
При превышении Hard Limit соединение будет закрыто сразу. -
Commands Processed — среднее количество команд, обработанных каждым хостом кластера.
-
Connected Clients — количество открытых соединений для каждого хоста кластера.
Если кластер шардированный или использует репликацию, часть соединений будет использована для обмена данными между хостами кластера.
Если при подключении к кластеру возникают ошибки, возможно, неактивные приложения держат соединения открытыми слишком долго. В этом случае измените в настройках Valkey™ значение параметра Timeout. -
Copy-on-write allocations — потребление памяти процессами Valkey™ при использовании механизма COW (Copy-on-write)
(в байтах).На графике показаны последние измеренные Valkey™ значения параметров:
- module_fork_last_cow_size — количество данных, скопированных при вызове
fork()с использованием механизма COW. - aof_last_cow_size — количество данных, скопированных при создании AOF-файла.
- rdb_last_cow_size — количество данных, скопированных при создании RDB-файла.
Подробнее см. в разделе Резервные копии.
- module_fork_last_cow_size — количество данных, скопированных при вызове
-
DB keys — количество ключей, хранящихся во всех базах данных кластера.
-
Evicted keys — количество ключей, удаленных из памяти при вставке новых данных.
По умолчанию для управления памятью используется политика noeviction — не удалять ключи, вернуть ошибку, если для вставки новых данных недостаточно памяти. Чтобы использовать другую политику управления памятью, измените в настройках Valkey™ значение параметра Maxmemory policy.
-
Inner memory limit — объем оперативной памяти, доступной для использования процессами Valkey™ (в байтах):
- maxmemory — максимальный объем памяти, выделяемый для пользовательских данных;
- used_memory — фактическое использованием памяти на хосте.
Если значение параметра used_memory достигнет значения параметра maxmemory, при попытке вставить новые записи Valkey™ применит режим управления памятью, установленный настройкой Maxmemory policy.
Примечание
Значение параметра maxmemory для хостов Valkey™ устанавливается в размере 75% от объема доступной памяти. Подробнее см. в разделе Управление памятью.
-
Outer memory limit — показывает объем всей оперативной памяти, доступной для использования на хостах (в байтах):
- memory_limit — объем памяти, выделенной каждому хосту;
- used_memory_rss — использование памяти процессами Valkey™.
При приближении значения параметра used_memory_rss к значению параметра memory_limit процесс Valkey™ может быть принудительно завершен операционной системой. Чтобы избежать этого:
- измените логику работы приложения таким образом, чтобы снизить объем данных, хранимых в Valkey™;
- измените в настройках Valkey™ значение параметра Maxmemory policy, отвечающего за политику управления памятью при ее дефиците;
- повысьте класс хоста.
-
Redis Used Memory on Masters — использование оперативной памяти на хостах-мастерах (в байтах):
- db_hashtable_overhead — для хранения хеш-таблиц всех баз данных;
- used_memory_scripts — для хранения и работы скриптов
; - mem_aof_buffer — для буфера AOF;
- mem_clients_normal — для обслуживания внешних подключений;
- mem_clients_slaves — для обслуживания подключений репликации;
- mem_replication_backlog — для циклического буфера репликации;
- used_memory_startup — для процессов Valkey™ при запуске (например, после перезагрузки кластера);
- used_memory_dataset — для хранения данных.
- mem_cluster_links — для сетевых соединений в режиме кластера.
-
Redis Used Memory on Replicas — использование оперативной памяти на хостах-репликах (в байтах):
- db_hashtable_overhead — для хранения хеш-таблиц всех баз данных;
- used_memory_scripts — для хранения и работы скриптов
; - mem_aof_buffer — для буфера AOF;
- mem_clients_normal — для обслуживания внешних подключений;
- mem_clients_slaves — для обслуживания подключений репликации;
- mem_replication_backlog — для циклического буфера репликации;
- used_memory_startup — для процессов Valkey™ при запуске (например, после перезагрузки кластера);
- used_memory_dataset — для хранения данных.
- mem_cluster_links — для сетевых соединений в режиме кластера.
-
Redis-server OOM kills (for last hour) — количество прерываний процессов Valkey™ из-за нехватки оперативной памяти (OOM — out-of-memory) за последний час.
Чтобы сократить количество прерываний:
- измените логику работы приложения таким образом, чтобы снизить объем данных, хранимых в Valkey™;
- измените в настройках Valkey™ значение параметра Maxmemory policy, отвечающего за политику управления оперативной памятью при ее дефиците;
- повысьте класс хоста.
-
Replication buffer size — размер буфера репликации (в байтах):
- repl_backlog_size — максимальный объем памяти, доступный под буфер репликации;
- repl_backlog_histlen — текущий объем памяти, занятый данными в буфере репликации.
Когда память в циклическом буфере будет исчерпана, запустится процесс полной репликации. Это снизит производительность кластера, т. к. при полной репликации значительно возрастает использование оперативной памяти и нагрузка на CPU и сеть.
-
Replication Lag — отставание реплики от мастера (в секундах).
Ненулевое значение говорит о долгом выполнении команд на реплике или ее перегруженности.
Подробнее читайте в разделе Репликация и отказоустойчивость.
-
Slowlog top operations on Master — список из 5 самых медленных команд, выполненных на хосте-мастере за одну минуту.
-
Slowlog top operations on Replicas — список из 5 самых медленных команд, выполненных на каждом хосте-реплике за одну минуту.
-
Slowlog new records - отображает новые записи в slow log.
Медленной считается команда, время на выполнение которой превысило значение настройки кластера Slowlog log slower than. На графике показывается только первая часть команды, а также количество ее вызовов за одну минуту.
Мониторинг состояния хостов
Для просмотра детальной информации о состоянии отдельных хостов Yandex Managed Service for Valkey™:
- В консоли управления
перейдите в каталог с нужным кластером. - Перейдите в сервис Yandex Managed Service for Valkey™.
- Нажмите на имя нужного кластера и выберите вкладку Хосты → Мониторинги.
- Выберите нужный хост из выпадающего списка.
На этой странице выводятся графики, показывающие нагрузку на отдельный хост кластера:
- CPU usage — загрузка процессорных ядер. При повышении нагрузки значение
idleуменьшается. - Disk read/write bytes — скорость дисковых операций (байт/с).
- Disk IOPS — интенсивность дисковых операций (операций/с).
- Disk space usage — объем занятого и общего места на диске.
- Memory usage — использование оперативной памяти (в байтах). При высоких нагрузках значение параметра
Freeуменьшается, а значения остальных — растут. - Network bytes — скорость обмена данными по сети (байт/с).
- Network packets — интенсивность обмена данными по сети (пакетов/с).
На графиках Disk read/write bytes и Disk IOPS характеристика Read растет при активном чтении из базы данных, а Write — при записи в нее.
Для хостов с ролью Replica нормально преобладание Received над Sent на графиках Network bytes и Network packets.
Настройка алертов в Yandex Monitoring
Чтобы настроить алерты показателей состояния кластера и хостов:
- В консоли управления
выберите каталог с кластером, для которого нужно настроить алерты. - Перейдите в сервис
Monitoring. - В блоке Сервисные дашборды выберите:
- Yandex Managed Service for Valkey™ — Cluster Overview для настройки алертов кластера;
- Yandex Managed Service for Valkey™ — Host Overview для настройки алертов хостов.
- На нужном графике нажмите на значок
и выберите пункт Создать алерт. - Если на графике несколько показателей, выберите запрос данных для формирования метрики и нажмите Продолжить. Подробнее о языке запросов см. документацию Yandex Monitoring.
- Задайте значения порогов
AlarmиWarningдля срабатывания алерта. - Нажмите кнопку Создать алерт.
Чтобы настроить автоматический мониторинг других показателей состояния кластера:
- Создайте алерт.
- Добавьте метрику состояния.
- В параметрах алерта задайте значения порогов для оповещения.
Рекомендуемые значения порогов для некоторых метрик:
| Метрика | Обозначение | Alarm |
Warning |
|---|---|---|---|
| Доступность БД на запись | can_write |
Равно 0 |
— |
| Количество ошибок Out of Memory, за час | redis_oom_count |
Больше 2 |
Больше 0 |
| Утилизация RAM (только для политики noeviction) | redis_used_memory |
90% от объема RAM | 75% от объема RAM |
| Размер использованного хранилища | disk.used_bytes |
90% от размера хранилища | 80% от размера хранилища |
Для метрики disk.used_bytes значения порогов Alarm и Warning задаются только в байтах. Например, рекомендуемые значения для диска размером в 100 ГБ:
Alarm—96636764160байтов (90%).Warning—85899345920байтов (80%).
Текущий объем RAM на хостах можно посмотреть в детальной информации о кластере. Полный список поддерживаемых метрик см. в документации Monitoring.
Состояние и статус кластера
Состояние кластера указывает на исправность его хостов, а Статус показывает, запущен кластер, остановлен или находится в промежуточном состоянии.
Для просмотра состояния и статуса кластера:
- В консоли управления
перейдите в каталог с нужным кластером. - Перейдите в сервис Yandex Managed Service for Valkey™.
- Наведите курсор на индикатор в столбце Доступность в строке нужного кластера.
Состояния кластера
| Состояние | Описание | Предлагаемые действия |
|---|---|---|
| ALIVE | Кластер работает в штатном режиме. | Действий не требуется. |
| DEGRADED | Кластер работает не на полную мощность: минимум один из хостов имеет состояние, отличное от ALIVE. |
Выполните диагностику:
|
| DEAD | Кластер неработоспособен: ни один его хост не работает. | Составьте обращение в службу поддержки
|
| UNKNOWN | Состояние кластера неизвестно. | Составьте обращение в службу поддержки
|
Статусы кластера
| Статус | Описание | Предлагаемые действия |
|---|---|---|
| CREATING | Идет подготовка к первому запуску | Подождите немного и приступайте к работе. Время создания кластера зависит от класса хостов. |
| RUNNING | Кластер работает в штатном режиме | Действий не требуется. |
| STOPPING | Кластер останавливается | Через некоторое время кластеру будет присвоен статус STOPPED, и он будет выведен из работы. Действий не требуется. |
| STOPPED | Кластер остановлен | Запустите кластер, чтобы вернуть его в работу. |
| STARTING | Остановленный ранее кластер запускается | Через некоторое время кластеру будет присвоен статус RUNNING. Подождите немного и приступайте к работе. |
| UPDATING | Обновляется конфигурация кластера | По завершении обновления кластеру будет присвоен статус, который был до обновления: RUNNING или STOPPED. |
| ERROR | Произошла ошибка при выполнении операции с кластером или во время окна технического обслуживания | Если кластер долго находится в этом статусе, обратитесь в службу поддержки |
| STATUS_UNKNOWN | Кластер не может определить свой статус | Если кластер долго находится в этом статусе, обратитесь в службу поддержки |