Установка и запуск агента Webhook
Документация
Главная

Установка и запуск агента Webhook

Агент Webhook — это дополнительный модуль системы Proceset, предназначенный для обработки входящих HTTP-запросов Webhook и запросов JS-трекера. Этот модуль может быть развернут на отдельном сервере, что позволяет разграничить доступ к функционалу системы в разных сетевых контурах, что особенно важно с точки зрения информационной безопасности.

Сервер Proceset и агент Webhook взаимодействуют по протоколу gRPC.

Все дистрибутивы агента Webhook предоставляются в виде Docker-образов.

Дополнительная информация о функционале в следующих разделах:

Запуск агента Webhook

Подготовка хостов и параметров конфигурации

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

Для примера используются следующие имена хостов:

  • proceset.domain.local — адрес хоста с установленной системой Proceset
  • agent.domain.local — адрес хоста, на котором будет работать агент Webhook

При запуске агента Webhook необходимо задать переменные окружения, определяющие его параметры работы.

Переменная окруженияОписание
CL_NAMEУникальное имя ноды в системе Proceset
CL_PORTПорт ноды внутри сети Docker, используемый для входящих соединений gRPC
CL_REMOTE_NODESСписок адресов (включая порт) всех нод для взаимодействия по gRPC
FE_GRAPHQL_DISABLEОтключение GraphQL на веб-сервере агента Webhook (true)
FE_CORS_POLICYДоверенные узлы для CORS (список доменов через запятую, от которых на агент будут поступать HTTP-запросы)
FE_URLURL-адрес ноды агента Webhook

Подготовка образа и сертификатов

Сначала загрузите дистрибутив агента Webhook на сервер, где он будет запущен. Затем добавьте образ в локальный реестр Docker:

$ gunzip infomaximum_docker_webhook_241201.tar.gz
# docker load < infomaximum_docker_webhook_241201.tar
Заметка

Версия в имени файла приведена для примера. Укажите файл, соответствующий устанавливаемой версии.

Подготовьте сертификат X.509 для работы HTTPS. Сертификат (.crt) содержит открытый ключ в формате PEM, а файл ключа (.key) содержит закрытый ключ для шифрования соединения в формате PKCS8.

Разместите сертификаты в удобном каталоге на хосте, например, в /opt/agent/. В этот же каталог добавьте сертификат сервера Proceset.

Если Docker Swarm ранее не был запущен на сервере, выполните команду инициализации:

# docker swarm init --advertise-addr 127.0.0.1:2377 --listen-addr 127.0.0.1:2377

Создайте секреты Docker для хранения сертификатов и ключей:

  • Секреты для SSL-сертификата и ключа сервера агента Webhook для работы gRPC:
    # docker secret create cluster_current.crt ${PATH_FILE}
    # docker secret create cluster_current.key ${PATH_FILE}
    
    Где ${PATH_FILE} — до файла открытого (.crt) и закрытого (.key) ключа для агента Webhook
  • Секрет для открытого ключа, который необходим для доверия серверу Proceset. Можно использовать сертификат CA, подписавший сертификат сервера Proceset, или сертификат самой ноды Proceset. Формат PEM или DER (.crt):
    # docker secret create cluster_remote_node_main.crt ${PATH_FILE}
    
    Где ${PATH_FILE} — путь к этому файлу
  • Секреты для HTTPS-сертификата агента Webhook (PFX-файл, содержащий открытый и закрытый ключ X.509, а также пароль к нему)
    # docker secret create infomaximum_app_https_certificate ${PATH_FILE}
    # echo -n "pfx_password" | docker secret create infomaximum_app_https_certificate_password -
    
    Где ${PATH_FILE} — путь к PFX-файлу

Создайте том Docker для хранения логов агента Webhook. Пример команды:

# docker volume create infomaximum-agent-log

Запуск контейнера агента Webhook

Запустите сервис агента Webhook с помощью следующей команды:

# docker service create --name infomaximum-automation-agent \
-e CL_NAME='agent' -e CL_PORT='7000' \
-e CL_REMOTE_NODES='proceset.domain.local:7000' \
-e FE_GRAPHQL_DISABLE='true' \
-e FE_CORS_POLICY='site1.example.ru,site2.example.ru' \
-e FE_URL='https://agent.domain.local' \
--secret cluster_current.crt \
--secret cluster_current.key \
--secret cluster_remote_node_main.crt \
--secret infomaximum_app_https_certificate \
--secret infomaximum_app_https_certificate_password \
--mount type=volume,src=infomaximum-agent-log,target=/var/log/infomaximum/ \
--publish published=7000,target=7000,mode=host \
--publish published=443,target=8010,mode=host \
--restart-max-attempts 5 \
--restart-condition "on-failure" \
infomaximum/infomaximum_webhook:241201
Заметка

Имя образа с версией указано для примера. Замените версию на ту, которую вы устанавливаете.

Если контейнер агента Webhook успешно запущен, перезапустите сервер Proceset с новыми параметрами.

Перезапуск сервера Proceset на Linux
Перезапуск сервера Proceset на Windows

Проверка успешного запуска

Если контейнер или служба успешно запустились, перейдите в веб-интерфейс и убедитесь, что агент Webhook добавлен.

Нажмите шестеренку в нижней части боковой панели и выберите раздел О системе. На странице должна появиться новая строка с агентом Webhook.

Была ли статья полезна?

Да
Нет
Предыдущая
Установка и запуск AI агента
Следующая
Настройка системы

Дайджест новостей и обновлений —

один раз в месяц

Заполняя форму, я даю согласие на обработку моих персональных данных
430006, Саранск,
Северо-восточное шоссе, д. 3
ОКВЭД 62.01
ИНН 1328​909857
Код вида деятельности
в области ИТ 15.02 и 17.01
Языки программирования
Ищете ответ? Наш чат‑бот с ИИ понимает контекст документации и предлагает самые точные результаты.
AI-ассистент