Мониторинг состояния кластера Valkey™ и хостов
Данные о состоянии кластера и его хостов доступны в консоли управления. Их можно посмотреть на вкладке Мониторинг страницы управления кластером или в сервисе Yandex Monitoring.
Диагностическая информация о состоянии кластера представлена в виде графиков.
Период обновления графиков:
- Для хостов стандартной конфигурации и хостов с увеличенным соотношением количества гигабайт 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 . Подождите немного и приступайте к работе. |
ERROR | Произошла ошибка, которая не позволяет кластеру продолжить работу | Выполните начальную диагностику:
|
STATUS_UNKNOWN | Кластер не может определить свой статус | Выполните начальную диагностику:
|