Интеграция ADP ES с кластером ADP/PostgreSQL

ADP ES позволяет управлять кластерами ADP и PostgreSQL. Бандл ADP включает все необходимые агенты для интеграции кластера ADP с ADP ES. В случае кластера PostgreSQL требуется установить кластер Arenadata X (ADX). Данная статья содержит пошаговые инструкции для каждого из этих сценариев:

ПРИМЕЧАНИЕ
  • Один кластер ADP ES может быть интегрирован с несколькими кластерами ADP и PostgreSQL. Интеграция с PostgreSQL поддерживается начиная с версии ADP ES 2.0.0.

  • Кластеры ADP, которые должны быть интегрированы с ADP ES, необходимо создавать в том же экземпляре ADCM.

Обратите внимание, что сервис Monitoring или внешний сервер Prometheus необходим для кластеров ADP и PostgreSQL (ADX), чтобы отображать параметры нод на странице Topology.

Интеграция с кластером ADP

Интеграция ADP ES с кластером ADP осуществляется на стороне ADP во время его установки. Чтобы осуществить интеграцию, выполните следующие действия:

  1. Распределите компоненты ADP Control Agent и Backup Manager Agent (необязательный компонент) сервиса ADP ES Agents по всем хостам с сервисом ADPG в кластере ADP.

    Распределение компонентов ADP ES Agents
    Распределение компонентов ADP ES Agents
  2. Откройте вкладку Import кластера ADP. Выберите Cluster Configuration и All Services для кластера ADP ES и нажмите Import.

    Импорт сервисов ADP ES
    Импорт сервисов ADP ES
  3. Установите кластер ADP. См. Установка кластера.

После установки кластер ADP импортируется в ADP ES. Топологию кластера ADP можно найти на странице Topology в веб-интерфейсе ADP Control.

Топология кластера ADP
Топология кластера ADP
ВНИМАНИЕ

Если вам необходимо зарегистрировать существующий кластер ADP в новом кластере ADP ES, выполните следующие действия:

  1. Удалите сервис ADP ES Agents из вашего кластера ADP, используя сервисное действие Uninstall, чтобы разорвать связь с текущим кластером ADP ES.

  2. Еще раз добавьте сервис ADP ES Agents в ваш кластер ADP.

  3. Импортируйте сервисы нового кластера ADP ES на вкладке Import, чтобы подключить ADP к новому кластеру ADP ES.

  4. Выполните действие Install сервиса ADP ES Agents.

Интеграция с кластером PostgreSQL

Предварительные требования

 

  • Необходимым условием для интеграции кластера PostgreSQL с ADP ES является наличие Patroni в качестве системы управления отказоустойчивостью кластера.

  • Кластер Arenadata X (ADX) поддерживает PostgreSQL версий 16 и 17, Patroni версий 3 и 4.

  • Кластер PostgreSQL должен прослушивать адрес 0.0.0.0 (параметр listen раздела postgresql в patroni.yml).

  • В кластере PostgreSQL должен существовать пользователь postgres, а также в разделе pg_hba файла patroni.yml должен быть разрешен беспарольный доступ к PostgreSQL через сокет (local) и адрес 127.0.0.1 (host). См. Обзор конфигурации PG_HBA. Например:

    local all postgres peer
    host all postgres 127.0.0.1/32 trust
  • В кластере PostgreSQL на всех нодах в разделе pg_hba patroni.yml должны быть указаны правила, разрешающие соединения без аутентификации от имени пользователя postgres со всех нод кластера. Это позволит пользователю postgres запускать psql для подключения без пароля c реплики к ноде-лидеру. Например, для кластера PostgreSQL с тремя нодами, имеющими IP-адреса 10.92.31.32, 10.92.31.33 и 10.92.31.34, необходимо установить следующие правила:

    host all postgres 10.92.31.32/32 trust
    host all postgres 10.92.31.33/32 trust
    host all postgres 10.92.31.34/32 trust
  • Убедитесь, что в разделе postgresql файла patroni.yml на всех нодах кластера:

    • параметр config_dir не указан или совпадает с data_dir;

    • unix_socket_directories не указан.

  • Параметр name файла patroni.yml должен содержать FQDN, например:

    scope: postgres-cluster-01
    name: host01.develop.yc.adsw.io

Чтобы интегрировать ADP ES с кластером PostgreSQL, выполните следующие шаги.

  1. Добавьте хосты с кластером PostgreSQL в ADCM. Для этого используйте хостпровайдер SSH.

  2. Получите бандл кластера Arenadata X (ADX) у команды поддержки Arenadata и загрузите бандл в ADCM. Для этого перейдите на страницу Bundles и нажмите Upload bundle. Затем выберите бандл в диалоговом окне. В результате бандл отобразится на странице Bundles.

    Результат успешной загрузки бандла
    Результат успешной загрузки бандла
  3. Создайте кластер — выберите пункт Clusters в левом навигационном меню и нажмите Create cluster.

    Переход к созданию кластера
    Переход к созданию кластера

    В открывшемся окне требуется описать новый кластер:

    • Выберите загруженный бандл в поле Product.

    • Выберите версию бандла в поле Product version.

    • Введите имя кластера в поле Cluster name.

    • При необходимости добавьте описание кластера в поле Description.

    • Установите флаг I accept Terms of Agreement для подписания лицензионного соглашения. Чтобы ознакомиться с текстом соглашения, перейдите по ссылке Terms of Agreement. Подписать соглашение также возможно на странице Bundles, нажав на соответствующий продуктовый бандл.

    • Нажмите Create.

    Создание кластера
    Создание кластера

    После успешного добавления кластер отображается на странице Clusters.

    Результат успешного добавления кластера
    Результат успешного добавления кластера
  4. Добавьте сервисы. Для этого кликните имя кластера на странице Clusters.

    Выбор кластера
    Выбор кластера

    Откройте вкладку Services на странице кластера и нажмите Add service.

    Переход к добавлению сервисов
    Переход к добавлению сервисов

    В открывшемся окне выберите сервисы для добавления в кластер и нажмите Add.

    Выбор сервисов
    Выбор сервисов
    Сервисы, которые могут быть добавлены в кластер ADX
    Сервис Обязательность Назначение

    ADP ES Agents

    Да

    Сервис, позволяющий управлять кластером PostgreSQL с помощью ADP ES

    Monitoring

    Да, если внешний сервер Prometheus не используется в кластере PostgreSQL

    Сервис для сбора и хранения метрик кластера PostgreSQL на основе системы мониторинга Prometheus и сервиса визуализации метрик Grafana

    Third-party database

    Да

    Сервис Database осуществляет взаимодействие с кластером PostgreSQL и предоставляет доступ к его конфигурации

    В результате успешно добавленные сервисы отображаются на вкладке Services.

    Сервисы, добавленные в кластер
    Сервисы, добавленные в кластер
  5. Добавьте хосты в кластер — откройте вкладку Hosts на странице кластера и нажмите Add hosts.

    Переход к добавлению хостов
    Переход к добавлению хостов

    В открывшемся окне выберите хосты для добавления в кластер и нажмите Add.

    Выбор хостов
    Выбор хостов

    В результате успешно добавленные хосты отображаются на вкладке Hosts.

    Результат успешного добавления хостов в кластер
    Результат успешного добавления хостов в кластер
  6. Распределите компоненты сервисов по хостам. Для этого откройте вкладку Mapping на странице кластера. В открывшемся окне сопоставьте компоненты с хостами. Обязательные компоненты подсвечиваются красным цветом.

    Чтобы назначить хосты для каждого компонента, нажмите Add hosts и выберите хосты в открывшемся окне.

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

    Пример распределения компонентов в кластере ADX приведен в таблице ниже.

    Распределение компонентов ADX
    Хост Сервис Компонент Примечание

    Хосты с PostgreSQL

    Third-party database

    Third-party node

    Осуществляет взаимодействие с кластером PostgreSQL. Хост может быть лидером или репликой

    ADP ES Agents

    ADP Control Agent

    Агент, позволяющий управлять кластером PostgreSQL с помощью ADP Control

    Backup Manager Agent

    Агент менеджера бэкапов, который использует ADP Control

    Monitoring

    Node Exporter

    Компонент собирает системные метрики и передает их Prometheus

    Хост для сервиса Monitoring

    Monitoring

    Prometheus Server

    Сервер Prometheus, осуществляющий сбор и хранение метрик

    Grafana

    Веб-интерфейс Grafana, позволяющий создавать дашборды для визуализации метрик. Рекомендуется устанавливать на один хост с сервером Prometheus

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

    Сохранение распределения компонентов
    Сохранение распределения компонентов
  7. Настройте сервисы. Для этого откройте вкладку Services на странице кластера и нажмите на имя сервиса в столбце Name. В открывшемся окне:

    • Откройте вкладку Primary Configuration.

    • Заполните конфигурационные параметры выбранного сервиса. Поля, подсвеченные красным, обязательны для заполнения.

    • Нажмите Save.

    Настройка сервиса
    Настройка сервиса

    Обратите внимание на следующие параметры, которые должны быть указаны во время установки:

    • Параметры сервиса Database:

      • Data directory

      • Patroni unit name

      • patronictl binary path

      • Patroni config path

    • Параметры сервиса Monitoring:

      • Prometheus settings — Password for Grafana connection — пароль пользователя Grafana (admprom_grafana), который используется для подключения к Prometheus;

      • Grafana settings — Grafana administrator’s password — пароль пользователя Grafana admin.

    Пароли должны содержать комбинацию цифр, специальных символов, строчных и заглавных букв и иметь минимальную длину 8 символов.

    ПРИМЕЧАНИЕ

    Более подробную информацию по всем конфигурационным параметрам можно получить в статье Конфигурационные параметры кластера ADX.

  8. Произведите импорт сервисов ADP ES — перейдите на вкладку Import страницы кластера, выберите все сервисы ADP ES и нажмите Import.

    Импорт сервисов ADP ES
    Импорт сервисов ADP ES
  9. Установите кластер. Перед установкой нового кластера рекомендуется выполнить действие Precheck. На странице Clusters примените действие Precheck к кластеру, нажав на иконку actions default dark actions default light в столбце Actions. Результат действия и процесс его выполнения можно найти на странице Jobs.

    Если действие Precheck прошло успешно, запустите действие Install.

    Установка кластера
    Установка кластера

    После завершения установки состояние кластера, отображаемое в поле State на странице Clusters, меняется с created на installed.

    Кластер установлен
    Кластер установлен

    После установки кластера ADX кластер PostgreSQL станет доступен в веб-интерфейсе ADP Control по адресу http://<adpc_host>:8090 (где <adpc_host> — IP-адрес хоста, на котором установлен компонент ADP Control; 8090 — значение по умолчанию параметра Listening WEB UI port в разделе Backend parameters конфигурации ADP Control).

    Топология внешнего кластера PostgreSQL в ADP Control
    Топология внешнего кластера PostgreSQL в ADP Control

После установки сервиса Monitoring, включающего компонент Grafana, можно просматривать дашборды, отображающие системные метрики, в браузере. Введите адрес хоста, на котором развернут компонент Grafana, и добавьте номер порта — параметр Grafana listen port (значение по умолчанию — 11210). Например, http://10.92.6.91:11210. Для входа используйте admin в качестве имени пользователя и значение параметра Grafana administrator’s password в качестве пароля. Параметры Grafana можно найти на вкладке Configuration сервиса Monitoring.

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