Добавление компонентов

В ADCM компонент означает часть сервиса, которая должна быть развернута на одном или нескольких хостах кластера. Например, сервис VictoriaMetrics состоит из таких компонентов, как VictoriaMetrics Insert, VictoriaMetrics Select и VictoriaMetrics Storage.

ВАЖНО
Изначально на хостах кластера нет ни одного компонента — распределение компонентов между хостами должно быть проведено вручную.

Для добавления компонентов на хосты кластера:

  1. Выберите кластер на странице Clusters. Для этого нажмите на имя кластера в столбце Name.

    Выбор кластера
    Выбор кластера
  2. Откройте вкладку Mapping на странице кластера.

    Переход к распределению сервисных компонентов
    Переход к распределению сервисных компонентов
  3. Распределите все компоненты между хостами кластера. Для назначения хостов компоненту нажмите Add hosts и выберите хосты в открывшемся окне.

    Выбор хостов для компонента
    Выбор хостов для компонента
    Обязательные компоненты

     
    Каждый сервис может иметь обязательные и опциональные компоненты. Обязательные подсвечиваются красным цветом. Также в интерфейсе ADCM для них выводится информация о том, в каком количестве необходимо установить каждый компонент.

    Обязательные компоненты
    Обязательные компоненты
    ВНИМАНИЕ
    Без назначения нужного числа хостов обязательным компонентам сохранение общей схемы распределения невозможно.

    При распределении компонентов важно учесть следующее:

    • Совмещение компонентов на одном хосте. Вы можете установить все компоненты кластера ADM на одном хосте или распределить их по нескольким хостам в зависимости от ваших требований. В частности, компоненты VictoriaMetrics Insert, VictoriaMetrics Storage и VictoriaMetrics Select можно установить на одном хосте. Если распределить их по нескольким хостам, это дает минимальное преимущество в производительности, которое нивелируется тем, что усложняется поддержка кластера и увеличиваются затраты ресурсов.

    • Изменение количества хостов. Если после установки компонента VictoriaMetrics Storage вы измените количество хостов, на которых он установлен, необходимо перезапустить компонент VictoriaMetrics Insert с помощью действия Restart.

    • Расчет фактора репликации. Чтобы обеспечить отказоустойчивость в случае потери хоста, рассчитайте минимальное количество хостов, где должен быть установлен компонент VictoriaMetrics Storage, по следующей формуле: 2 * N - 1 (где N — значение фактора репликации). Например, чтобы обеспечить фактор репликации 2, необходимо минимум 3 хоста с компонентом VictoriaMetrics Storage.

       
      Если количество таких хостов меньше, чем необходимо для целевого фактора репликации, ADCM все равно позволяет создать кластер. В этом случае компонент VictoriaMetrics Insert записывает метрики только на имеющиеся хосты, где запущен компонент VictoriaMetrics Storage.

      Мониторинг доступности компонента VictoriaMetrics Storage

      Чтобы отслеживать и вовремя замечать потерю хостов, где установлен компонент VictoriaMetrics Storage, проверяйте следующие показатели на стороне компонента VictoriaMetrics Insert:

      • Внутренние метрики. Если связь оборвется, это приведет к росту счетчиков vm_rpc_dial_errors_total, vm_rpc_connection_errors_total или vm_rpc_handshake_errors_total. Вы можете посмотреть их в браузере по адресу http://<vminsert-host>:8480/metrics. Также можно подключиться к хосту, где установлен компонент VictoriaMetrics Insert, по SSH и выполнить команду:

        $ curl -s http://localhost:8480/metrics | grep -E "vm_rpc_dial_errors|vm_rpc_connection_errors|vm_rpc_handshake_errors"

        Пример вывода при падении хоста, где установлен компонент VictoriaMetrics Storage (gau-ub3):

        vm_rpc_connection_errors_total{name="vminsert", addr="gau-ub3.develop.yc.adsw.io:8400", rpc_call="metric_rows"} 1
        vm_rpc_dial_errors_total{name="vminsert", addr="gau-ub3.develop.yc.adsw.io:8400", rpc_call="metric_rows"} 7718
        vm_rpc_handshake_errors_total{name="vminsert", addr="gau-ub3.develop.yc.adsw.io:8400", rpc_call="metric_rows"} 1
      • Логи компонента VictoriaMetrics Insert (docker logs). Ищите сообщения об ошибках вида cannot dial storageNode …​ connection refused. Чтобы посмотреть их, подключитесь к хосту, где установлен компонент VictoriaMetrics Insert, по SSH и выполните команду:

        $ sudo docker logs vminsert

        Пример записи в логе при падении хоста, где установлен компонент VictoriaMetrics Storage:

        2026-06-19T13:45:12.123Z  error  VictoriaMetrics/app/vminsert/main.go:142  cannot dial storageNode "gau-ub3.develop.yc.adsw.io:8400": dial tcp 192.168.1.10:8400: connect: connection refused
      • Сетевые утилиты. Вы также можете подключиться к хостам с компонентом VictoriaMetrics Insert по SSH и использовать стандартные инструменты Linux (например, ss или netstat), чтобы проверить связь с хостами, на которых запущен компонент VictoriaMetrics Storage.

  4. После завершения распределения компонентов нажмите Save.

    Сохранение распределения компонентов
    Сохранение распределения компонентов

Начиная с версии 2.2.0 ADCM поддерживает альтернативный способ сопоставления — по хостам. Для этого переведите в активное положение переключатель Hosts mode и распределите компоненты между хостами путем нажатия на кнопку Add components напротив каждого хоста.

Распределение по хостам
Распределение по хостам
Нашли ошибку? Выделите текст и нажмите Ctrl+Enter чтобы сообщить о ней