Перейти к основному содержимому
Мониторинг кластера и нод Kafka
Последнее изменение:

Мониторинг кластера и нод Kafka

В облачных базах данных Kafka можно отслеживать состояние кластера.

Для оценки общего состояния кластера посмотрите его статус.

Для более детального анализа можно:

Узнать о том, что на диске скоро закончится место, можно с помощью уведомления о заполненности диска.

Посмотреть статус кластера

  1. В панели управления перейдите в раздел Облачная платформаБазы данных.
  2. В строке кластера посмотрите статус.
ACTIVEКластер доступен
CREATINGКластер создается
UPDATINGК кластеру применяются изменения
RESIZINGКластер масштабируется
ERRORПроизошла ошибка, создайте тикет
DISK FULL

Диск заполнен, кластер работает только на чтение. Чтобы кластер работал на чтение и запись, очистите диск или масштабируйте кластер и выберите конфигурацию с бóльшим размером диска

DEGRADEDЧасть нод кластера недоступна
DELETINGКластер удаляется

Посмотреть состояние нод кластера

  1. В панели управления перейдите в раздел Облачная платформаБазы данных.
  2. Откройте страницу кластера → вкладка Мониторинг.
  3. В блоке Мониторинг серверов кластера посмотрите доступные метрики нод кластера.

Метрики нод кластера в панели управления

vCPUНа сколько процентов загружены ядра нод кластера
Load Average

Среднее значение загрузки системы за период времени. Показывает, какое количество процессов обрабатывается ядрами кластера. Показатель представлен в виде трех значений — за одну минуту, пять минут и 15 минут. Эти значения должны быть не больше, чем количество ядер на ноде

ПамятьЗанятая память без учета кэша и буферов операционной системы в процентах или гигабайтах
ДискЗанятое место на диске в процентах или гигабайтах. Файловая система резервирует под служебные нужды 4% объема диска, поэтому занятое место больше реально используемого на эти 4%

Экспортировать метрики в формате Prometheus

Историческая информация для кластеров недоступна — метрики запрашиваются только в режиме реального времени. Список всех метрик, которые поддерживаются в облачных базах данных, и их описание можно посмотреть в таблице Метрики в формате Prometheus.

  1. Получите токен.
  2. Получите метрики в формате Prometheus.

1. Получить токен

Токен дает доступ к метрикам всех кластеров проекта в одном пуле.

  1. В панели управления перейдите в раздел Облачная платформаБазы данных.

  2. Откройте страницу кластера → вкладка Мониторинг.

  3. В блоке Токены для Prometheus нажмите Добавить токен. Токен будет сгенерирован автоматически.

  4. Скопируйте токен. Для этого в строке токена нажмите .

2. Получить метрики в формате Prometheus

  1. Добавьте в конфигурационный файл Prometheus:

    scrape_configs:
    - job_name: get-metrics-from-dbaas
    scrape_interval: 1m
    static_configs:
    - targets:
    - '<pool>.dbaas.selcloud.ru'
    scheme: https
    authorization:
    type: Bearer
    credentials: <monitoring_token>

    Укажите:

    • <pool> — пул, в котором действует токен, например ru-3. Адрес (URL) зависит от региона и пула, можно посмотреть в списке URL;
    • <monitoring_token> — токен мониторинга, который вы получили ранее.
  2. Откройте в браузере страницу, на которой будут доступны метрики в формате Prometheus:

    http://<ip_address>:9090/targets

    Укажите <ip_address> — IP-адрес, на котором установлен Prometheus.

  3. Самостоятельно настройте мониторинг и алерты для кластеров баз данных.

Метрики в формате Prometheus

Метрики в формате Prometheus предоставляются для всех кластеров. Конкретный кластер можно найти по идентификатору кластера базы данных в лейбле ds_id.

dbaas_memory_percentЗанятая память без учета кэша и буферов операционной системы (RAM) в процентах
dbaas_memory_bytesЗанятая память без учета кэша и буферов операционной системы (RAM) в байтах
dbaas_oom_countКоличество процессов, которые завершились ошибкой Out of Memory из-за нехватки оперативной памяти
dbaas_cpuИспользование vCPU на нодах кластера базы данных в процентах
dbaas_cpu_iowaitВремя ожидания ввода/вывода в процентах
dbaas_disk_percentЗанятое место на диске в процентах. Файловая система резервирует под служебные нужды 4% объема диска, поэтому занятое место больше реально используемого на эти 4%
dbaas_disk_bytesЗанятое место на диске в байтах. Файловая система резервирует под служебные нужды 4% объема диска, поэтому занятое место больше реально используемого на эти 4%
dbaas_disk_read_iopsКоличество операций чтения в секунду
dbaas_disk_write_iopsКоличество операций записи в секунду
dbaas_disk_read_bytesСкорость чтения данных с диска в байтах в секунду
dbaas_disk_write_bytesСкорость записи данных на диск в байтах в секунду
dbaas_node_load1Среднее значение загрузки системы за одну минуту. Показывает, какое количество процессов обрабатывается ядрами кластера
dbaas_node_load5Среднее значение загрузки системы за пять минут. Показывает, какое количество процессов обрабатывается ядрами кластера
dbaas_node_load15Среднее значение загрузки системы за 15 минут. Показывает, какое количество процессов обрабатывается ядрами кластера
dbaas_network_receive_bytesКоличество байт, принятых через сетевой интерфейс
dbaas_network_transmit_bytesКоличество байт, отправленных через сетевой интерфейс
dbaas_network_receive_packetsКоличество пакетов, принятых через сетевой интерфейс в секунду
dbaas_network_transmit_packetsКоличество пакетов, отправленных через сетевой интерфейс в секунду
dbaas_role

Роль ноды:

  • 0 — роль неизвестна;
  • 1 — мастер;
  • 2 — реплика

Уведомления о заполненности диска

Если диск кластера будет заполнен на 80%, уведомление появится в панели управления и будет отправлено на электронную почту Владельца аккаунта и тех пользователей, которые подписаны на категорию уведомлений «Услуги и сервисы».

Если диск кластера будет заполнен на 95% и более, кластер перейдет в статус DISK_FULL и будет работать только на чтение. Чтобы кластер работал на чтение и запись, очистите диск или масштабируйте кластер и выберите конфигурацию с бóльшим размером диска.

Очистить диск

Откройте транзакцию transaction_read_only = no и удалите ненужные данные с помощью одного из запросов:

  • DROP TABLE — удаляет структуру (данные, привилегии, индексы, constraints, триггеры). Используйте при полном удалении таблицы с данными и структурой:

    BEGIN;
    SET transaction_read_only = no;
    DROP TABLE table_name;
    COMMIT;
  • TRUNCATE TABLE — удаляет содержимое таблицы, при этом структура сохраняется. Работает быстрее DROP TABLE. Используйте при удалении всех строк таблицы с сохранением структуры таблицы:

    BEGIN;
    SET transaction_read_only = no;
    TRUNCATE TABLE table_name;
    COMMIT;
  • DELETE — используйте для удаления определенных строк.

к сведению

Мы не рекомендуем использовать запрос DELETE FROM table WHERE ... для очистки диска. Этот запрос может создавать выборки больших размеров на больших таблицах и располагать их на диске. Оставшееся свободное место на диске может полностью закончиться, это приведет к проблемам с Kafka и необходимости восстанавливать его работу вручную.