[Документация Yandex Cloud](../../index.md) > [Yandex Managed Service for Apache Kafka®](../index.md) > [Пошаговые инструкции](index.md) > Логи и мониторинг > Мониторинг состояния кластера и хостов

# Мониторинг состояния кластера Apache Kafka® и хостов

Данные о состоянии кластера и его хостов доступны в [консоли управления](https://kz.console.yandex.cloud). Их можно посмотреть на вкладке **Мониторинг** страницы управления кластером  или в сервисе [Yandex Monitoring](../../monitoring/concepts/index.md).

Диагностическая информация о состоянии кластера представлена в виде графиков.

Период обновления графиков:

* Для хостов стандартной конфигурации и хостов с увеличенным соотношением количества гигабайт RAM к количеству vCPU (`memory-optimized`): 15 секунд.
* Для хостов с гарантированной долей vCPU ниже 100% (`burstable`): 150 секунд.

{% note info %}

На графиках автоматически применяются наиболее подходящие кратные единицы измерения (мегабайты, гигабайты и т. д.).

{% endnote %}

Вы можете [настроить алерты](#monitoring-integration) в сервисе Yandex Monitoring для получения уведомлений о сбоях в работе кластера. В Yandex Monitoring используются два порога срабатывания алерта: `Warning` и `Alarm`. При превышении заданного порога вы получите оповещения через настроенные [каналы уведомлений](../../monitoring/concepts/alerting.md#notification-channel).

## Мониторинг состояния кластера {#monitoring-cluster}

Для просмотра детальной информации о состоянии кластера Managed Service for Apache Kafka®:

{% list tabs group=instructions %}

- Консоль управления {#console}

  1. В [консоли управления](https://kz.console.yandex.cloud) перейдите в нужный каталог.
  1. Перейдите в сервис **Managed Service for&nbsp;Kafka**.
  1. Нажмите на имя нужного кластера и выберите вкладку **Мониторинг**.
  
  1. Чтобы перейти к работе с метриками, дашбордами или алертами в сервисе Yandex Monitoring, нажмите кнопку **Открыть в Monium** на панели сверху.

  На странице отображаются следующие графики:

  * **Alive brokers** — количество работоспособных брокеров, для каждого хоста с ролью `KAFKA`.
  * **Problematic partitions** — показывает значения параметров:
      * `Offline Replicas` — количество разделов, не имеющих брокера-лидера. Такие разделы не позволяют ни запись, ни чтение сообщений.
      * `UnderMinISR` — количество разделов, у которых число синхронизированных реплик (in-sync replicas, ISR) меньше минимально допустимого значения, указанного в [настройках](../concepts/settings-list.md).
      * `UnderReplicated` — количество разделов, у которых число синхронизированных реплик меньше фактора репликации.
  * **Errors** — количество неуспешных запросов по видам ошибок.
  * **Free space** — свободное дисковое пространство, для каждого хоста с ролью `KAFKA` (в байтах).
  * **Messages in** — интенсивность записи сообщений, для каждого хоста с ролью `KAFKA` (сообщений/с).
  * **Bytes In/Out** — скорость записи и скорость чтения сообщений, для каждого хоста с ролью `KAFKA` (байт/с).
  * **Top 5 topics by size** — объем данных для каждого из пяти наиболее объемных топиков (в байтах).
  * **Replicated bytes** — скорость потока данных репликации, для каждого хоста с ролью `KAFKA` (байт/с).
  * **Partitions** — общее количество реплик разделов.
  * **Replication lag [messages]** — наибольшее отставание репликации, для каждого хоста с ролью `KAFKA` (в сообщениях).
  * **Request time (0.95 quantile)** — время обработки запросов в квантиле 0.95 по видам запросов.
  * **Requests** — интенсивность запросов по видам (запросов/с).

{% endlist %}

## Мониторинг состояния хостов {#monitoring-hosts}

Для просмотра детальной информации о состоянии отдельных хостов Managed Service for Apache Kafka®:

{% list tabs group=instructions %}

- Консоль управления {#console}

  1. В [консоли управления](https://kz.console.yandex.cloud) перейдите в нужный каталог.
  1. Перейдите в сервис **Managed Service for&nbsp;Kafka**.
  1. Нажмите на имя нужного кластера и выберите вкладку **Мониторинг**.
  1. Перейдите на вкладку **Хосты** и выберите хост.

      Для каждого хоста указан его тип: `KAFKA`, `KRAFT` или `ZOOKEEPER`.

      Чтобы перейти к работе с метриками, дашбордами или алертами в сервисе Yandex Monitoring, нажмите кнопку **Открыть в Monium** на панели сверху.

  На этой странице выводятся графики, показывающие нагрузку на отдельный хост кластера:

  * **CPU usage** — загрузка процессорных ядер. При повышении нагрузки значение `idle` уменьшается.
  * **Memory usage** — использование оперативной памяти (в байтах). При высоких нагрузках значение параметра `Free` уменьшается, а значения остальных — растут.
  * **Disk IOPS** — интенсивность дисковых операций (операций/с).
  * **Network packets** — интенсивность обмена данными по сети (пакетов/с).
  * **Free space** — свободное дисковое пространство (в байтах).
  * **Network bytes** — скорость обмена данными по сети (байт/с).

  В блоке **Disk Metrics Details**:

  * **Disk write latency (percentiles)** — время записи на диск, по процентилям.
  * **Disk write bytes** — средняя и максимальная скорость записи на диск.
  * **Disk write operations** — среднее и максимальное количество операций записи в секунду.
  * **Disk read latency (percentiles)** — время чтения с диска, по процентилям.
  * **Disk read bytes** — средняя и максимальная скорость чтения с диска.
  * **Disk read operations** — среднее и максимальное количество операций чтения в секунду.
  * **Disk write throttler latency (percentiles)** — задержка записи, внесенная при превышении квоты диска, по процентилям.
  * **Disk read throttler latency (percentiles)** — задержка чтения, внесенная при превышении квоты диска, по процентилям.
  * **Disk used quota** — использование квоты для дисковых операций.

{% endlist %}


## Настройка алертов в Yandex Monitoring {#monitoring-integration}

Чтобы настроить алерты показателей состояния [кластера](#monitoring-cluster) и [хостов](#monitoring-hosts):

{% list tabs group=instructions %}

- Консоль управления {#console}

  1. В [консоли управления](https://kz.console.yandex.cloud) выберите каталог с кластером, для которого нужно настроить алерты.
  1. Перейдите в сервис ![image](../../_assets/console-icons/display-pulse.svg) **Monitoring**.
  1. В блоке **Сервисные дашборды** выберите **Managed Service for Apache Kafka® — Cluster Overview**.
  1. На нужном графике нажмите на значок ![options](../../_assets/console-icons/ellipsis.svg) и выберите пункт **Создать алерт**.
  1. Если на графике несколько показателей, выберите запрос данных для формирования метрики и нажмите **Продолжить**. Подробнее о языке запросов смотрите в [документации Yandex Monitoring](../../monitoring/concepts/querying.md).
  1. Задайте пороговые значения `Alarm` и `Warning` для срабатывания алерта.
  1. Нажмите кнопку **Создать алерт**.

{% endlist %}

Чтобы настроить автоматический мониторинг других показателей состояния кластера:

{% list tabs group=instructions %}

- Консоль управления {#console}

    1. [Создайте алерт](../../monitoring/operations/alert/create-alert.md).
    1. Добавьте метрику состояния.
    1. В параметрах алерта задайте значения порогов для оповещения.

{% endlist %}

Рекомендуемые пороговые значения для некоторых метрик:

| Метрика                            | Обозначение                                             | `Alarm`                    | `Warning`                  |
|------------------------------------|---------------------------------------------------------|----------------------------|----------------------------|
| Количество работоспособных хостов  | `kafka_is_alive`                                        | `<количество хостов> - 2`  | `<количество хостов> - 1`  |
| Состояние репликации разделов      | `kafka_server_ReplicaManager_UnderReplicatedPartitions` | —                          | `Больше 0`                 |
| Число отстающих реплик             | `kafka_server_ReplicaManager_UnderMinIsrPartitionCount` | `Больше 0`                 | —                          |
| Объем использованного хранилища    | `disk.used_bytes`                                       | 90% от размера хранилища | 80% от размера хранилища |

Для метрики `disk.used_bytes` пороговые значения `Alarm` и `Warning` задаются только в байтах. Например, рекомендуемые значения для диска размером в 100 ГБ:

* `Alarm` — `96636764160` байт (90%).
* `Warning` — `85899345920` байт (80%).

Текущий размер хранилища можно посмотреть в [детальной информации о кластере](cluster-list.md#get-cluster). Полный список поддерживаемых метрик — в [документации Monitoring](../../monitoring/metrics-ref/managed-kafka-ref.md).


## Состояние и статус кластера {#cluster-health-and-status}

**Состояние** кластера указывает на исправность его хостов, а **Статус** показывает, запущен кластер, остановлен или находится в промежуточном состоянии.

Для просмотра состояния и статуса кластера:

1. В [консоли управления](https://kz.console.yandex.cloud) перейдите в нужный каталог.
1. Перейдите в сервис **Managed Service for&nbsp;Kafka**.
1. Наведите курсор на индикатор в столбце **Доступность** в строке нужного кластера.

### Состояния кластера {#cluster-health}

Состояние | Описание | Предлагаемые действия
:--- | :--- | :---
**ALIVE** | Кластер работает в штатном режиме. | Действий не требуется.
**DEGRADED** | Кластер работает не на полную мощность: минимум один из хостов имеет состояние, отличное от `ALIVE`. | Выполните диагностику:<ul><li>Перейдите на вкладку **Хосты** и посмотрите, какие из них в нерабочем состоянии.</li><li>Перейдите на вкладку **Операции** и убедитесь, что все операции завершились.</li><li>Убедитесь, что кластер не находится в процессе технического обслуживания.</li></ul>Если причины не удалось выяснить самостоятельно, [обратитесь в службу поддержки](https://kz.center.yandex.cloud/support).
**DEAD** | Кластер неработоспособен:  ни один его хост не работает. | [Составьте обращение в службу поддержки](https://kz.center.yandex.cloud/support), указав:<ul><li>Идентификатор кластера.</li><li>Идентификаторы последних операций, которые на нем выполнялись.</li><li>Время по [графикам доступности](#monitoring-cluster), когда кластер перешел в состояние `DEAD`.</li></ul>
**UNKNOWN** | Состояние кластера неизвестно. | [Составьте обращение в службу поддержки](https://kz.center.yandex.cloud/support), указав:<ul><li>Идентификатор кластера.</li><li>Идентификаторы последних операций, которые на нем выполнялись.</li><li>Время по [графикам доступности](#monitoring-cluster), когда кластер перешел в состояние `UNKNOWN`.</li></ul>

### Статусы кластера {#cluster-status}

Статус | Описание | Предлагаемые действия
:--- | :--- | :---
**CREATING** | Идет подготовка к первому запуску | Подождите немного и приступайте к работе. Время создания кластера зависит от класса хостов.
**RUNNING** | Кластер работает в штатном режиме | Действий не требуется.
**STOPPING** | Кластер останавливается | Через некоторое время кластеру будет присвоен статус `STOPPED`, и он будет выведен из работы. Действий не требуется.
**STOPPED** | Кластер остановлен | Запустите кластер, чтобы вернуть его в работу.
**STARTING** | Остановленный ранее кластер запускается | Через некоторое время кластеру будет присвоен статус `RUNNING`. Подождите немного и приступайте к работе.
**UPDATING** | Обновляется конфигурация кластера | По завершении обновления кластеру будет присвоен статус, который был до обновления: `RUNNING` или `STOPPED`.
**ERROR** | Произошла ошибка при выполнении операции с кластером или во время окна технического обслуживания | Если кластер долго находится в этом статусе, [обратитесь в службу поддержки](https://kz.center.yandex.cloud/support). Доступность кластера можно определить по его состоянию.
**STATUS_UNKNOWN** | Кластер не может определить свой статус | Если кластер долго находится в этом статусе, [обратитесь в службу поддержки](https://kz.center.yandex.cloud/support).