Установка и настройка / Основные элементы АппОптима / ЕдиныйАгент АппОптима / Оркестрация развертывания ЕдиногоАгента / Установка ЕдиногоАгента с помощью 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 AppOptima-oneagent-ansible-1.0.0.20200101-060000.tar.gz
Коллекция состоит из одной роли Ansible, которая развертывает ЕдиныйАгент с использованием специальной конфигурации. Конфигурация гарантирует, что служба ЕдиногоАгента остается в рабочем состоянии. Дополнительные сведения см. в разделе Использование коллекций в документации Ansible.
Настройка коллекции Ansible АппОптима
Для сценария Ansible требуется доступ к соответствующим файлам установщика ЕдиногоАгента.
- Если ваш управляющий узел Ansible имеет доступ к вашей среде АппОптима, вы можете настроить сценарий для загрузки файлов установщика непосредственно из среды АппОптима.
- Кроме того, вы можете самостоятельно загрузить соответствующие файлы установщика — с помощью веб-интерфейса АппОптима — и загрузить их на узел управления. Это обеспечивает сценарий локальными копиями установщиков.
Вариант 1. Используйте прямую загрузку из среды АппОптима.
Сценарий использует Deployment API для загрузки установщиков для конкретной платформы на управляемые узлы. Вам нужно будет указать переменные, чтобы предоставить роли Ansible информацию, необходимую для аутентификации вызова API в вашей среде:
oneagent_environment_url
:- АппОптима: 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 или АппОптима). |
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: - AppOptima.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.