Установка ЕдиногоАгента с помощью Ansible
Ключ-Астром предоставляет коллекцию Ansible, которую можно использовать для организации развертывания ЕдиногоАгента в вашей среде.
Требования
- Ansible >= 2.9.0, < 2.10.0
- ЕдиныйАгент версии 1.199+
- Ключ-Астром версии 1.204+
- Сценарий доступа к файлам установщика ЕдиногоАгента
Зависимости
- pywinrm 0.4.1+
Загрузите коллекцию Ansible Ключ-Астром
1. Выберите «Развернуть Ключ-Астром» в меню навигации, а затем выберите «Начать установку».
2. Выберите коллекцию Ansible, чтобы загрузить архив коллекции.
Это безопасный архив, размещенный в вашей среде Ключ-Астром.
Установите коллекцию Ключ-Астром Ansible
1. Сохраните коллекцию Ansible Ключ-Астром
Сохраните tar-архив коллекции Ansible в каталоге на узле управления Ansible.
2. Установите коллекцию Ansible Ключ-Астром
Чтобы установить коллекцию Ansible, перейдите в каталог, в котором вы сохранили архив коллекции Ansible, и выполните следующую команду:
ansible-galaxy collection install dynatrace-oneagent-ansible-1.0.0.20200101-060000.tar.gz
Коллекция состоит из одной роли Ansible, которая развертывает ЕдиныйАгент с использованием специальной конфигурации. Конфигурация гарантирует, что служба ЕдиногоАгента остается в рабочем состоянии. Дополнительные сведения см. в разделе Использование коллекций в документации Ansible.
Настройка коллекции Ansible Ключ-Астром
Для сценария Ansible требуется доступ к соответствующим файлам установщика ЕдиногоАгента.
- Если ваш управляющий узел Ansible имеет доступ к вашей среде Ключ-Астром, вы можете настроить сценарий для загрузки файлов установщика непосредственно из среды Ключ-Астром.
- Кроме того, вы можете самостоятельно загрузить соответствующие файлы установщика — с помощью веб-интерфейса Ключ-Астром — и загрузить их на узел управления. Это обеспечивает сценарий локальными копиями установщиков.
Вариант 1. Используйте прямую загрузку из среды Ключ-Астром.
Сценарий использует Deployment API для загрузки установщиков для конкретной платформы на управляемые узлы. Вам нужно будет указать переменные, чтобы предоставить роли Ansible информацию, необходимую для аутентификации вызова API в вашей среде:
oneagent_environment_url
:- Managed: https://{ваш-домен}/e/{идентификатор-вашей-среды}
oneagent_paas_token
- Токен PaaS вашей среды
Мы рекомендуем безопасно хранить и токен PAAS, и идентификатор среды, используя такие механизмы шифрования, как Ansible Vault. Дополнительные сведения см. в разделе Шифрование содержимого с помощью Ansible Vault.
Вариант 2. Используйте локальные установщики
Используйте веб-интерфейс Ключ-Астром для загрузки необходимых файлов установщика ЕдиногоАгента, а затем загрузите их на узел управления. Затем сценарий Ansible скопирует файлы установщика на управляемые узлы во время выполнения.
Используйте переменную oneagent_local_installer
, чтобы предоставить роли Ansible путь к файлу установщика. Например:
oneagent_local_installer: /path/of/oneagent_linux_installer.sh
Обратите внимание, что для Windows, Linux и AIX требуются специальные программы установки. Исходные имена установщиков, загруженные с Ключ-Астром, включают обозначения целевых платформ. Если вы меняете имена установщиков, убедитесь, что сценарий может их различать.
Если вы не укажете локальный установщик, сценарий попытается использовать метод прямой загрузки.
Пример использования см. в файле local_installer.yml
в разделе Примеры.
Переменные
Роль ЕдиногоАгента Ansible поддерживает следующие переменные:
Название | Значение по умолчанию | Описание |
---|---|---|
oneagent_environment_url
|
unset | URL целевой среды Ключ-Астром (SaaS или Managed). |
oneagent_paas_token
|
unset | Токен PaaS, полученный со страницы развертывания Ключ-Астром. |
oneagent_local_installer
|
unset | Путь к установщику ЕдиногоАгента, хранящемуся на узле управления. |
oneagent_installer_arch
|
Linux: x86
Windows: |
Архитектура установщика ЕдиногоАгента. |
oneagent_version
|
latest
|
Требуемая версия ЕдиногоАгента в формате 1.199.247.20200714-111723. |
oneagent_download_dir
|
Linux/AIX: $TEMP or /tmp
Windows: |
Каталог загрузки установщика. Для Linux и AIX каталог не должен содержать пробелов. |
oneagent_install_args
|
unset | Параметры установки ЕдиногоАгента Ключ-Астром, определенные в виде списка элементов. |
oneagent_platform_install_args
|
unset | Дополнительный список параметров установки для конкретной платформы, добавленный к `oneagent_install_args' при запуске на соответствующей платформе. |
oneagent_preserve_installer
|
false
|
Возможность сохранить установщик на управляемом узле после установки ЕдиногоАгента. |
oneagent_package_state
|
present
|
Требуемое состояние пакета ЕдиногоАгента. Укажите текущую или последнюю версию для установки. Укажите отсутствует для удаления.
|
oneagent_reboot_host
|
false
|
Возможность перезагрузки управляемого узла после установки ЕдиногоАгента. |
oneagent_validate_certs
|
true
|
Возможность требовать сертификаты. Если установлено значение false, позволяет загружать ЕдиныйАгент с сервера с небезопасным SSL-сертификатом (истекшим сроком действия, самоподписанным и т. д.). |
oneagent_reboot_timeout
|
3600 | Время ожидания в секундах для перезагрузки управляемого узла. |
Логирование
Вместо вывода на STDOUT журналы, созданные Ansible, могут быть собраны в один файл, расположенный на управляемом узле. Есть несколько способов добиться этого с помощью настройки конфигурации Ansible:
- Задайте для переменной среды
ANSIBLE_LOG_PATH
путь к файлу журнала. - Укажите переменную
log_path
в разделе[default]
файла настроек конфигурации Ansible.
Подробностью журналов можно управлять с помощью параметра командной строки -v
. Многократное повторение параметра увеличивает уровень детализации до уровня отладки соединения, что достигается с помощью -vvvv
.
Примеры
Следующий пример playbook:
- Загружает установщик ЕдиногоАгента определенной версии (
oneagent_version
) и сохраняет его в пользовательском каталоге (oneagent_download_dir
). - Использует переменную
vars_files
для указания на безопасный файл учетныхcredentials.yml
, в котором хранятся ваш идентификатор среды и токен PaaS. - Указывает сценарию развернуть ЕдиныйАгент в группах хостов с именами
linux_other
иlinux_arm
в вашем инвентаре. - Указывает сценарию использовать
x86
в качестве архитектуры по умолчанию для группы хостовlinux_other
. Группа хостов linux_arm имеет собственный параметрoneagent_installer_arch
, указанный в файле инвентаризации. - Использует переменную
oneagent_install_args
для указания параметров установки ЕдиногоАгента, которые назначают хосты группе хостовMy.HostGroup_123-456
и сетевой зонеmy.network.zone
. - Задает другой параметр
USER
, используя параметрoneagent_platform_install_args
для каждой группы хостов в инвентаризации.
--- - name: Download OneAgent installer in specific version to a custom directory with additional OneAgent install parameters. Both linux_other and linux_arm have different user specified by platform args parameter. hosts: linux_other,linux_arm collections: - astrom-key.oneagent vars_files: - encrypted_credentials.yml vars: oneagent_download_dir: /home/user1 oneagent_version: 1.199.247.20200714-111723 oneagent_install_args: - INSTALL_PATH=/opt/example - --set-host-group=My.HostGroup_123-456 - --set-network-zone=my.network.zone tasks: - import_role: name: oneagent
Вы можете найти больше примеров плейбуков и файлов инвентаризации в каталоге примеров в роли Ansible. В каталоге находятся следующие плейбуки:
local_installer.yml
— установка ЕдиногоАгента с помощью локальной программы установки.advanced_config.yml
— установка ЕдиногоАгента с пользовательским путем установки и каталогом загрузки.oneagentctl_config.yml
— конфигурация ЕдиногоАгента с помощью командыoneagentctl
.
Кроме того, каждый каталог содержит файл инвентаризации с базовой конфигурацией хоста для плейбуков.
Чтобы узнать о проблемах с путями при установке в Windows, ознакомьтесь с разделом «Форматирование пути для Windows» в документации Ansible.