---
title: 'Мониторинг кластера, нод и баз данных Redis'
sidebar_label: 'Мониторинг кластера, нод и баз данных'
sidebar_position: 7
description: 'Как отслеживать состояние кластера, нод и баз данных Redis, как экспортировать метрики в формате Prometheus'
---

import Formbricks from '@theme/MDXComponents/Formbricks'
import {CustomTable} from '@selectel/docux/components'
import Tabs from '@theme/Tabs'
import TabItem from '@theme/TabItem'
import {TabItemLabel} from '@selectel/docux/components'
import CopyIcon from '@selectel/docux/icons/copy'

# Мониторинг кластера, нод и баз данных Redis

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

Для оценки общего состояния кластера [посмотрите его статус](#view-cluster-status).

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

* [посмотреть состояние нод кластера](#view-cluster-node-status) — в виде графиков в панели управления;
* [посмотреть состояние баз данных](#view-database-state) — в виде графиков в панели управления;
* [экспортировать метрики нод кластера и баз данных в формате Prometheus](#export-metrics-in-prometheus-format).

При анализе графиков учитывайте, что время в панели управления соответствует времени на вашем устройстве и не зависит от региона, где размещен кластер.

:::note

Например, вы создали кластер в Ташкенте, в пуле uz-1.
На устройстве, с которого вы зашли в панель управления, установлен часовой пояс Москвы.
Время на графиках метрик будет отображаться в часовом поясе Москвы.

:::

## Посмотреть статус кластера \{#view-cluster-status}

1. В [панели управления](https://my.selectel.ru/vpc/default/dbaas/) в верхнем меню нажмите **Продукты** и выберите **Облачные базы данных**.
2. Откройте вкладку **Активные**.
3. В строке кластера посмотрите статус.

   <CustomTable>
     <table>
       <tbody>
         <tr>
           <th>ACTIVE</th>
           <td>Кластер доступен</td>
         </tr>

         <tr>
           <th>CREATING</th>
           <td>Кластер создается</td>
         </tr>

         <tr>
           <th>UPDATING</th>
           <td>Кластер обновляется</td>
         </tr>

         <tr>
           <th>RESIZING</th>
           <td>Кластер масштабируется</td>
         </tr>

         <tr>
           <th>ERROR</th>
           <td>Произошла ошибка, [создайте тикет](https://my.selectel.ru/tickets/create/)</td>
         </tr>

         <tr>
           <th>DISK FULL</th>

           <td>
             Диск заполнен, кластер работает только на чтение. Чтобы кластер работал на чтение и запись, [масштабируйте
             кластер](/managed-databases/redis/resize-cluster.mdx) и выберите конфигурацию с бóльшим размером диска
           </td>
         </tr>

         <tr>
           <th>DEGRADED</th>
           <td>Часть нод кластера недоступна</td>
         </tr>

         <tr>
           <th>DELETING</th>
           <td>Кластер удаляется</td>
         </tr>
       </tbody>
     </table>
   </CustomTable>

## Посмотреть состояние нод кластера \{#view-cluster-node-status}

1. В [панели управления](https://my.selectel.ru/vpc/default/dbaas/) в верхнем меню нажмите **Продукты** и выберите **Облачные базы данных**.
2. Откройте вкладку **Активные**.
3. Откройте страницу кластера → вкладка **Мониторинг**.
4. В блоке **Мониторинг кластера** нажмите **Ноды кластера**.
5. Выберите ноды, метрики которых хотите посмотреть.
6. Посмотрите доступные [метрики нод кластера](#cluster-node-metrics).

### Метрики нод кластера в панели управления \{#cluster-node-metrics}

<CustomTable>
  <table data-sticky>
    <tbody>
      <tr>
        <th>Память</th>
        <td>Занятая память без учета кэша и буферов операционной системы в процентах или гигабайтах</td>
      </tr>

      <tr>
        <th>vCPU</th>
        <td>На сколько процентов загружены ядра нод кластера</td>
      </tr>

      <tr>
        <th>CPU iowait</th>
        <td>Cколько процентов времени процессор потратил на ожидание ввода/вывода</td>
      </tr>

      <tr>
        <th>Диск</th>

        <td>
          Занятое место на диске в процентах или гигабайтах.
          Учитывает часть дискового пространства, зарезервированную под служебные нужды и недоступную для размещения баз данных.
          Подробнее о резервировании дискового пространства в инструкции [Использование дискового пространства в кластере Redis](/managed-databases/redis/use-disk-space.mdx)
        </td>
      </tr>

      <tr>
        <th>Load Average</th>

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

      <tr>
        <th>OOM</th>

        <td>
          Количество процессов, которые завершились ошибкой `Out of Memory` из-за нехватки оперативной памяти
        </td>
      </tr>

      <tr>
        <th>Нагрузка диска</th>

        <td>
          Скорость чтения и записи данных в КБ/с или количество операций чтения и записи в секунду
        </td>
      </tr>

      <tr>
        <th>Нагрузка сети</th>
        <td>Количество бит или пакетов, отправленных и принятых через сетевой интерфейс</td>
      </tr>
    </tbody>
  </table>
</CustomTable>

## Посмотреть состояние баз данных \{#view-database-state}

1. В [панели управления](https://my.selectel.ru/vpc/default/dbaas/) в верхнем меню нажмите **Продукты** и выберите **Облачные базы данных**.
2. Откройте вкладку **Активные**.
3. Откройте страницу кластера → вкладка **Мониторинг**.
4. В блоке **Мониторинг кластера** нажмите **Базы данных**.
5. Выберите ноды, метрики которых хотите посмотреть.
6. Посмотрите доступные [метрики баз данных](#database-metrics).

### Метрики баз данных в панели управления \{#database-metrics}

<CustomTable>
  <table>
    <tbody>
      <tr>
        <th>Вытесненные и устаревшие ключи</th>

        <td>
          Отображаются два параметра:

          <ul>
            <li>`Evicted` — количество ключей, вытесненных из-за превышения лимита памяти;</li>
            <li>`Expired` — количество ключей с истекшим сроком жизни</li>
          </ul>
        </td>
      </tr>

      <tr>
        <th>Количество ключей</th>
        <td>Количество ключей во всех базах данных и количество ключей с заданным сроком жизни (TTL)</td>
      </tr>

      <tr>
        <th>Подключения</th>
        <td>Количество подключений к базам данных кластера</td>
      </tr>

      <tr>
        <th>Медленные запросы</th>

        <td>
          Количество медленных запросов в секунду.
          Медленными считаются запросы, которые выполняются дольше 0,01 секунды
        </td>
      </tr>

      <tr>
        <th>Запросы</th>

        <td>
          Количество успешных и неудачных запросов в секунду.
          Неудачными считаются запросы, при которых ключ не существует, вытеснен из-за превышения лимита памяти или его срок жизни (TTL) истек
        </td>
      </tr>
    </tbody>
  </table>
</CustomTable>

## Экспортировать метрики в формате Prometheus \{#export-metrics-in-prometheus-format}

1. [Получите токен](#get-token).
2. [Получите метрики в формате Prometheus](#get-prometheus-metrics).

### 1. Получить токен \{#get-token}

Токен дает доступ к метрикам всех кластеров [проекта](/access-control/projects/about-projects.mdx) в одном [пуле](/infrastructure/locations.mdx#pool).

1. В [панели управления](https://my.selectel.ru/vpc/default/dbaas/) в верхнем меню нажмите **Продукты** и выберите **Облачные базы данных**.

2. Откройте вкладку **Активные**.

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

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

5. Скопируйте токен. Для этого в строке токена нажмите <CopyIcon />.

### 2. Получить метрики в формате Prometheus \{#get-prometheus-metrics}

Историческая информация для кластеров недоступна — метрики запрашиваются только в режиме реального времени. Список всех метрик, которые поддерживаются в облачных базах данных, и их описание можно посмотреть в таблице [Метрики в формате Prometheus](#metrics-in-prometheus-format).

<Tabs queryString="get-prometheus-metrics">
  <TabItem value="config" default>
    <TabItemLabel>
      Конфигурационный файл
    </TabItemLabel>

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

       ```yaml
       scrape_configs:
         - job_name: get-metrics-from-dbaas
           scrape_interval: 1m
           static_configs:
             - targets:
               - '<domain>'
           scheme: https
           authorization:
             type: Bearer
             credentials: <token>
       ```

       Укажите:

       * `<domain>` — домен Managed Databases API. Это часть URL для обращения к API без `https://` и `/v1`, например `ru-3.dbaas.selcloud.ru`.
         URL зависит от [региона и пула](/infrastructure/locations.mdx#selectel-infrastructure), можно посмотреть в [списке URL](/api/urls/);
       * `<token>` — токен, который вы скопировали при [получении токена](#get-token) на шаге 5.

    2. Откройте в браузере страницу, на которой будут доступны метрики в формате Prometheus:

       ```bash
       http://<ip_address>:9090/targets
       ```

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

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

  <TabItem value="cli">
    <TabItemLabel>
      CLI
    </TabItemLabel>

    1. Откройте CLI.

    2. Чтобы получить метрики, отправьте запрос:

       ```bash
       curl -L "https://<domain>/metrics" -H "Authorization: Bearer <token>"
       ```

       Укажите:

       * `<domain>` — домен Managed Databases API. Это часть URL для обращения к API без `https://` и `/v1`, например `ru-3.dbaas.selcloud.ru`.
         URL зависит от [региона и пула](/infrastructure/locations.mdx#selectel-infrastructure), можно посмотреть в [списке URL](/api/urls/);
       * `<token>` — токен, который вы скопировали при [получении токена](#get-token) на шаге 5.

       В ответе появятся доступные метрики в формате Prometheus.

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

### Метрики в формате Prometheus \{#metrics-in-prometheus-format}

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

<Tabs queryString="metrics-in-prometheus-format">
  <TabItem value="infrastructure" default>
    <TabItemLabel>
      Метрики уровня инфраструктуры
    </TabItemLabel>

    <CustomTable>
      <table data-sticky>
        <tbody>
          <tr>
            <th>dbaas\_memory\_percent</th>
            <td>Занятая память без учета кэша и буферов операционной системы (RAM) в процентах</td>
          </tr>

          <tr>
            <th>dbaas\_memory\_bytes</th>
            <td>Занятая память без учета кэша и буферов операционной системы (RAM) в байтах</td>
          </tr>

          <tr>
            <th>dbaas\_oom\_count</th>
            <td>Количество процессов, которые завершились ошибкой `Out of Memory` из-за нехватки оперативной памяти</td>
          </tr>

          <tr>
            <th>dbaas\_cpu</th>
            <td>Использование vCPU на нодах кластера базы данных в процентах</td>
          </tr>

          <tr>
            <th>dbaas\_cpu\_iowait</th>
            <td>Время ожидания ввода/вывода в процентах</td>
          </tr>

          <tr>
            <th>dbaas\_disk\_percent</th>

            <td>
              Занятое место на диске в процентах.
              Учитывает часть дискового пространства, зарезервированную под служебные нужды и недоступную для размещения баз данных.
              Подробнее о резервировании дискового пространства в инструкции [Использование дискового пространства в кластере Redis](/managed-databases/redis/use-disk-space.mdx)
            </td>
          </tr>

          <tr>
            <th>dbaas\_disk\_bytes</th>

            <td>
              Занятое место на диске в байтах.
              Учитывает часть дискового пространства, зарезервированную под служебные нужды и недоступную для размещения баз данных.
              Подробнее о резервировании дискового пространства в инструкции [Использование дискового пространства в кластере Redis](/managed-databases/redis/use-disk-space.mdx)
            </td>
          </tr>

          <tr>
            <th>dbaas\_disk\_read\_iops</th>
            <td>Количество операций чтения в секунду</td>
          </tr>

          <tr>
            <th>dbaas\_disk\_write\_iops</th>
            <td>Количество операций записи в секунду</td>
          </tr>

          <tr>
            <th>dbaas\_disk\_read\_bytes</th>
            <td>Скорость чтения данных с диска в байтах в секунду</td>
          </tr>

          <tr>
            <th>dbaas\_disk\_write\_bytes</th>
            <td>Скорость записи данных на диск в байтах в секунду</td>
          </tr>

          <tr>
            <th>dbaas\_node\_load1</th>
            <td>Среднее значение загрузки системы за одну минуту. Показывает, какое количество процессов обрабатывается ядрами кластера</td>
          </tr>

          <tr>
            <th>dbaas\_node\_load5</th>
            <td>Среднее значение загрузки системы за пять минут. Показывает, какое количество процессов обрабатывается ядрами кластера</td>
          </tr>

          <tr>
            <th>dbaas\_node\_load15</th>
            <td>Среднее значение загрузки системы за 15 минут. Показывает, какое количество процессов обрабатывается ядрами кластера</td>
          </tr>

          <tr>
            <th>dbaas\_network\_receive\_bytes</th>
            <td>Количество байт, принятых через сетевой интерфейс</td>
          </tr>

          <tr>
            <th>dbaas\_network\_transmit\_bytes</th>
            <td>Количество байт, отправленных через сетевой интерфейс</td>
          </tr>

          <tr>
            <th>dbaas\_network\_receive\_packets</th>
            <td>Количество пакетов, принятых через сетевой интерфейс в секунду</td>
          </tr>

          <tr>
            <th>dbaas\_network\_transmit\_packets</th>
            <td>Количество пакетов, отправленных через сетевой интерфейс в секунду</td>
          </tr>

          <tr>
            <th>dbaas\_role</th>

            <td>
              Роль ноды:

              <ul>
                <li>`0` — роль неизвестна;</li>
                <li>`1` — мастер;</li>
                <li>`2` — реплика</li>
              </ul>
            </td>
          </tr>
        </tbody>
      </table>
    </CustomTable>
  </TabItem>

  <TabItem value="application">
    <TabItemLabel>
      Метрики уровня приложения
    </TabItemLabel>

    <CustomTable>
      <table data-sticky>
        <tbody>
          <tr>
            <th>dbaas\_connected\_clients</th>
            <td>Количество подключений к базам данных кластера</td>
          </tr>

          <tr>
            <th>dbaas\_keyspace\_hits\_total</th>
            <td>Количество успешных запросов в секунду</td>
          </tr>

          <tr>
            <th>dbaas\_keyspace\_misses\_total</th>
            <td>Количество неудачных запросов в секунду. Неудачными считаются запросы, которые показывают, что ключ не существует, вытеснен из-за превышения лимита памяти или его срок жизни истек</td>
          </tr>

          <tr>
            <th>dbaas\_db\_keys</th>
            <td>Общее количество ключей во всех базах данных</td>
          </tr>

          <tr>
            <th>dbaas\_db\_keys\_expiring</th>
            <td>Общее количество устаревших ключей</td>
          </tr>

          <tr>
            <th>dbaas\_evicted\_keys\_total</th>
            <td>Количество ключей, вытесненных из-за превышения лимита памяти</td>
          </tr>

          <tr>
            <th>dbaas\_expired\_keys\_total</th>
            <td>Количество ключей с истекшим сроком жизни</td>
          </tr>

          <tr>
            <th>dbaas\_slowlog\_length</th>
            <td>Количество медленных запросов в секунду. Медленными считаются запросы, которые выполняются дольше 0,01 секунды</td>
          </tr>
        </tbody>
      </table>
    </CustomTable>
  </TabItem>
</Tabs>

<Formbricks />
