Настройка ЕдиногоАгента на контейнерах для мониторинга только приложений

Материал из Документация Ключ-АСТРОМ
Версия от 21:55, 10 декабря 2025; IKuznetsov (обсуждение | вклад) (Новая страница: «Если у вас нет доступа к базовым хостам, вы можете развернуть ЕдиныйАгент на контейнерах...»)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)

Если у вас нет доступа к базовым хостам, вы можете развернуть ЕдиныйАгент на контейнерах для мониторинга только приложений. Выполните следующие шаги, чтобы интегрировать ЕдиныйАгент в образ приложения.

Развертка ЕдиногоАгента

Требуемые версии
  • Версия Docker 17.05+

1. Войдите в Docker, используя в качестве имени пользователя идентификатор вашей среды Ключ-АСТРОМ.

docker login <environmentURL> -u <environmentID>

2. Введите свой <PAAS_TOKEN>, когда появится соответствующий запрос.

3. После последней команды FROM добавьте в образ приложения следующие строки кода :

COPY --from=<environmentURL>/linux/oneagent-codemodules:<TECHNOLOGY> / /

ENV LD_PRELOAD /opt/dynatrace/oneagent/agent/lib64/liboneagentproc.so

где:

  • <environmentURL> является:
    • Среда АктивногоШлюза: <ActiveGateaddress:9999>
    • Managed: {ManagedAddress}
  • <TECHNOLOGY> это модуль кода ЕдиногоАгента, необходимый для вашего приложения. Допустимые варианты: all, java, apache, nginx, nodejs, dotnet, php, go и sdk. Чтобы указать несколько модулей кода, разделите их дефисами (например, используйте java-go для указания java и go). Включение конкретных параметров поддержки технологий, а не поддержка всех параметров технологий, приводит к уменьшению размера пакета ЕдиногоАгента.
Если образ Docker основан на Alpine Linux

Ключ-АСТРОМ ЕдиныйАгент поддерживает среды на базе Alpine Linux.

Используйте следующий синтаксис:

COPY --from=<ACTIVEGATE-ADDRESS>/linux/oneagent-codemodules-musl:<TECHNOLOGY> / /

ENV LD_PRELOAD /opt/dynatrace/oneagent/agent/lib64/liboneagentproc.so

Допустимые варианты здесь : all, dotnet, php, java, apache, nginx, nodejs и go.

4. Создайте образ вашего приложения.

Создайте образ Docker из вашего Dockerfile, чтобы использовать его в вашей среде Kubernetes.

docker build -t yourapp .
Вы можете отслеживать контейнеры вашего приложения с помощью другой среды Ключ-АСТРОМ.

Для версии ЕдиногоАгента 1.139+ Если у вас уже есть образ приложения, в который добавлены модули кода ЕдиногоАгента для конкретной среды Ключ-АСТРОМ, вы можете настроить отправку отчетов ЕдиногоАгента в другую среду Ключ-АСТРОМ без пересборки образа приложения.

Для этого необходимо обратиться к REST-эндпоинту вашей второй среды Ключ-АСТРОМ. Не забудьте адаптировать соответствующие данные <environmentID> и <token>.

curl "https://<environmentID>.live.dynatrace.com/api/v1/deployment/installer/agent/connectioninfo?Api-Token=<token>"

В ответ вы получите JSON-объект, содержащий необходимую информацию, которую нужно передать в качестве переменной среды контейнеру приложения.

Убедитесь, что вы установили переменные среды контейнера приложения, как описано ниже:

  • DT_TENANT: равно tenantUUID
  • DT_TENANTTOKEN: равно tenantToken
  • DT_CONNECTION_POINT: список communicationEndpoints, разделённый точкой с запятой

5. Необязательно Настройка сетевых зон

Вы можете настроить сетевые зоны в качестве переменной среды:

  • DT_NETWORK_ZONE: равно your.network.zone

6. Необязательно Настройте прокси-адрес.

Если вы используете среду с прокси-сервером, вам необходимо установить переменную среды DT_PROXY в контейнере приложения, чтобы передавать учетные данные прокси-сервера в ЕдиныйАгент.

  • Для контейнеров на базе Alpine Linux может потребоваться обновить файл wget, поставляемый с образом Alpine, чтобы разрешить аутентификацию через прокси-сервер при загрузке ЕдиногоАгента.

Обновление ЕдиногоАгента

Каждый раз, когда вы хотите использовать новую версию Ключ-АСТРОМ ЕдиныйАгент, вам необходимо пересобрать локальные модули кода ЕдиногоАгента и образ приложения. Все вновь запущенные поды из этого образа приложения будут отслеживаться с помощью последней версии ЕдиногоАгента.

Если вы указали версию ЕдиногоАгента по умолчанию для установки на новые хосты и в приложения с помощью параметров обновления ЕдиногоАгента, ваши приложения Kubernetes будут автоматически отслеживаться определенной версией Ключ-АСТРОМ ЕдиныйАгент по умолчанию.

Удаление ЕдиногоАгента

Чтобы удалить ЕдиныйАгент из режима мониторинга только приложений, просто удалите ссылки на него из вашего приложения или образа Docker, а затем повторно разверните приложение.

Внедрение контейнера во время сборки

Многоэтапная сборка образов Docker Классическая интеграция
1. Удалите две строки кода из образа приложения.
COPY --from=<ACTIVEGATE-ADDRESS>/linux/oneagent-codemodules:<TECHNOLOGY> / /

ENV LD_PRELOAD /opt/dynatrace/oneagent/agent/lib64/liboneagentproc.so

2. Пересоберите образ приложения.

docker build -t yourapp .
1. Удалите следующие команды из вашего Dockerfile.
ARG DT_API_URL="https://<environmentID>.live.dynatrace.com/api"

ARG DT_API_TOKEN="<token>"

ARG DT_ONEAGENT_OPTIONS="flavor=default&include=<technology1>&include=<technology2>"

ENV DT_HOME="/opt/dynatrace/oneagent"

RUN mkdir -p "$DT_HOME" && \

    wget -O "$DT_HOME/oneagent.zip" "$DT_API_URL/v1/deployment/installer/agent/unix/paas/latest?Api-Token=$DT_API_TOKEN&$DT_ONEAGENT_OPTIONS" && \

    unzip -d "$DT_HOME" "$DT_HOME/oneagent.zip" && \

    rm "$DT_HOME/oneagent.zip"

ENTRYPOINT [ "/opt/dynatrace/oneagent/dynatrace-agent64.sh" ]

CMD [ "executable", "param1", "param2" ] # the command of your application, for example, Java

2. Пересоберите образ приложения.

docker build -t yourapp .