Установка и запуск Yandex Unified Agent
Список поддерживаемых операционных систем
Работа Unified Agent поддерживается на следующих операционных системах:
- Ubuntu 14.04 или старше;
- Debian 9 или старше;
- CentOS 7 или старше;
- Fedora 32 или старше;
- Fedora CoreOS.
Подготовка к установке
Перед установкой Yandex Unified Agent выполните следующие шаги:
-
Создайте виртуальную машину в Yandex Cloud или хост вне Yandex Cloud на одной из поддерживаемых операционных систем, например, Ubuntu 14.04 или старше.
-
(Опционально) Установите Docker
, если через него вы хотите запускать Unified Agent.- Настройте публичный IPv4-адрес (рекомендуется).
- Настройте Docker для работы с IPv6
и включите сетевую трансляцию адресов , если вы не можете использовать публичный IPv4-адрес.
-
Создайте сервисный аккаунт в каталоге, куда будут записываться метрики, и назначьте ему роль
monitoring.editor
. -
Настройте авторизацию агента в Yandex Monitoring API:
- Если агент установлен на виртуальную машину в Yandex Cloud, привяжите созданный сервисный аккаунт к виртуальной машине. В этом случае агент будет автоматически получать IAM-токен сервисного аккаунта из сервиса-метаданных.
- Если агент установлен на хосте вне Yandex Cloud, создайте авторизованный ключ для сервисного аккаунта. Подробнее про поставку метрик с хостов вне Yandex Cloud читайте в разделе Поставка метрик с хостов вне Yandex Cloud.
Установка
Установите Unified Agent одним из способов:
Unified Agent распространяется в виде Docker-образа. Образ опубликован в репозитории cr.yandex/yc
с названием unified_agent
и тегом latest
. Образ содержит бинарный файл с агентом и конфигурационный файл, настраивающий агент для поставки системных метрик Linux в Yandex Monitoring.
Важно
Для мониторинга дополнительных дисков, подключенных к хосту, передайте пути к их точкам монтирования при помощи параметра -v
команды docker run
. Подробнее читайте в разделе Вход linux_metrics.
Конфигурационный файл агента расположен в /etc/yandex/unified_agent/config.yml
и параметризован переменными окружения. Подробнее параметры запуска Docker-контейнера описаны в разделе ниже.
Чтобы запустить контейнер с агентом, выполните следующую команду:
docker run \
-p 16241:16241 -it --detach --uts=host \
--name=ua \
-v /proc:/ua_proc \
-e PROC_DIRECTORY=/ua_proc \
-e FOLDER_ID=a1bs81qpemb4******** \
cr.yandex/yc/unified-agent
Где FOLDER_ID
– идентификатор каталога, куда будут записываться метрики.
Чтобы запустить контейнер с собственным файлом конфигурации, добавьте в команду запуска контейнера параметр -v
, указав полный путь до файла конфигурации. Перед запуском контейнера удалите из вашего конфигурационного файла строки:
import:
- /etc/yandex/unified_agent/conf.d/*.yml
Пример команды для запуска контейнера с пользовательским конфигурационным файлом:
docker run \
-p 16241:16241 -it --detach --uts=host \
--name=ua \
-v /proc:/ua_proc \
-v `pwd`/config.yml:/etc/yandex/unified_agent/conf.d/config.yml \
--entrypoint="" \
-e PROC_DIRECTORY=/ua_proc \
-e FOLDER_ID=a1bs81qpemb4******** \
cr.yandex/yc/unified-agent
По умолчанию в конфигурационном файле агента, в секции status, указан host: null
. Учитывайте это, если используете собственный конфигурационный файл.
Подробнее про конфигурацию агента читайте в разделе Конфигурирование.
Unified Agent распространяется в виде deb-пакета для операционных систем Ubuntu 14.04 или старше. Пакет содержит бинарный файл с агентом и пустой конфигурационный файл, расположенный в /etc/yandex/unified_agent/config.yml
.
Чтобы скачать последнюю версию агента в виде deb-пакета выполните команду:
ubuntu_name="ubuntu-14.04-trusty" ua_version=$(curl -s https://storage.yandexcloud.net/yc-unified-agent/latest-version) bash -c 'curl -s -O https://storage.yandexcloud.net/yc-unified-agent/releases/${ua_version}/deb/${ubuntu_name}/yandex-unified-agent_${ua_version}_amd64.deb'
Поддерживаемые значения параметра ubuntu_name
:
ubuntu-14.04-trusty
;ubuntu-16.04-xenial
;ubuntu-18.04-bionic
;ubuntu-20.04-focal
;ubuntu-22.04-jammy
, начиная с версии23.03.02
.
Чтобы узнать все доступные версии агента выполните команду:
curl -s https://storage.yandexcloud.net/yc-unified-agent/all-versions
Чтобы установить deb-пакет, выполните команду:
sudo dpkg -i yandex-unified-agent_21.02.03_amd64.deb
Чтобы убедиться, что Unified Agent успешно установлен и запущен, выполните команду systemctl status unified-agent
. Пример работы команды:
user@my-vm:~$ systemctl status unified-agent
● unified-agent.service - Yandex Unified Agent service
Loaded: loaded (/lib/systemd/system/unified-agent.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2021-02-09 15:57:08 UTC; 2 weeks 2 days ago
Main PID: 141403 (unified_agent)
Tasks: 8 (limit: 507)
Memory: 9.4M
CGroup: /system.slice/unified-agent.service
└─141403 /usr/bin/unified_agent --config /etc/yandex/unified_agent/config.yml --log-priority NOTICE
После установки пакета отредактируйте файл конфигурации /etc/yandex/unified_agent/config.yml
, например, настроив агент для поставки системных метрик Linux. Подробнее про конфигурацию агента читайте в разделе Конфигурирование.
Unified Agent распространяется в виде бинарного файла, собранного под архитектуру x86-64 / amd64 для операционных систем Ubuntu 14.04 или старше.
Чтобы скачать последнюю версию агента в виде бинарного файла, выполните команду:
ua_version=$(curl -s https://storage.yandexcloud.net/yc-unified-agent/latest-version) bash -c 'curl -s -O https://storage.yandexcloud.net/yc-unified-agent/releases/$ua_version/unified_agent && chmod +x ./unified_agent'
Чтобы узнать все доступные версии агента выполните команду:
curl -s https://storage.yandexcloud.net/yc-unified-agent/all-versions
После скачивания исполняемого файла с агентом создайте конфигурационный файл, например, с настройками для поставки системных метрик Linux. Подробнее про конфигурацию агента читайте в разделе Конфигурирование.
Чтобы запустить агент, выполните команду:
./unified_agent --config unified_agent.yml
Где --config
– путь до конфигурационного файла.
Вы можете установить агент при создании виртуальной машины в консоли управления
Устанавливаемый агент является обычным агентом Unified Agent, который можно дополнительно настроить для поставки собственных метрик или логов в Cloud Logging.
Чтобы установить агент при создании виртуальной машины через CLI или API, укажите в пользовательских метаданных (user-data
) строку:
#cloud-config\nruncmd:\n - wget -O - https://monitoring.api.cloud.yandex.net/monitoring/v2/unifiedAgent/config/install.sh | bash
Для корректной установки агента и отправки метрик у созданной виртуальной машины должен быть доступ в интернет.
Обновление и поддержка агента выполняется самостоятельно.
Параметры запуска Docker-контейнера с Unified Agent
Если вы устанавливаете Unified Agent при помощи Docker, вы можете сконфигурировать агент с помощью переменных окружения. Так вам не потребуется редактировать файл конфигурации, расположенный в /etc/yandex/unified_agent/config.yml
. Список переменных окружения перечислен в таблице ниже.
Переменная окружения | Значение по умолчанию | Описание |
---|---|---|
UA_STATUS_PORT |
16241 |
Порт, по которому будет доступен статус работы агента. Подробнее в разделе Секция status. |
UA_LOG_PRIORITY |
NOTICE |
Уровень логирования работы агента. Подробнее в разделе Секция agent_log. |
FOLDER_ID |
Обязательный параметр, не имеющий значения по умолчанию |
Идентификатор каталога, куда будут записываться метрики. Подробнее в разделе Выход yc_metrics. |
PROC_DIRECTORY |
/proc |
Директория со смонтированным procfs Подробнее в разделе Вход linux_metrics. |
SYS_DIRECTORY |
/sys |
Директория со смонтированным sysfs Подробнее в разделе Вход linux_metrics. |
UA_LINUX_RESOURCE_CPU UA_LINUX_RESOURCE_MEMORY UA_LINUX_RESOURCE_NETWORK UA_LINUX_RESOURCE_STORAGE UA_LINUX_RESOURCE_IO UA_LINUX_RESOURCE_KERNEL |
basic |
Уровень детализации системных метрик CPU, сети, дисков, системы ввода-вывода и Linux-ядра. Подробнее в разделе Вход linux_metrics. |