...
Для разворачивания системы необходимо поместить приложенный архив "naice-ansible.zipansibleNaice.tar.gz" на хост, с которого будет осуществляться запуск плейбука, в отдельную папку.
...
Установите утилиту sshpass, если она не установлена командой:
Блок кода language bash sudo apt install sshpass
Проверьте и при необходимости дополните строку "127.0.0.1 localhost" в файле /etc/hosts:
Блок кода language bash 127.0.0.1 localhost localhost.localdomain
Установите коллекции Ansible, необходимые для работы плейбуков:
Блок кода language bash ansible-galaxy collection install community.postgresql
Для указания адреса хоста, на который необходимо развернуть систему, отредактируйте файл
hosts.yml
:Блок кода language yml --- common: hosts: common_host: ansible_host: <IP-адрес хоста для NAICE>
- Настройте режим доступа к хосту в файле
ansible.cfg
(создать из шаблонаansible.cfg.template
) по SSH в зависимости от предпочитаемого варианта:по логину/паролю:
Блок кода [defaults] inventory = hosts.yml host_key_checking = False deprecation_warnings = False
и дополните
hosts.yml
:Блок кода language yml --- common: hosts: common_host: ansible_host: <IP-адрес хоста для NAICE> ansible_user: <логин пользователя> ansible_ssh_pass: <пароль пользователя>
по ключу (предварительно необходимо сгенерировать и поместить ключ на удаленный хост):
Блок кода [defaults] inventory = hosts.yml remote_user = <пользователь на удаленном хосте> private_key_file = <путь к файлу ключа> host_key_checking = True deprecation_warnings = False
- (необязательно) При необходимости измените значения переменных окружения в
group_vars/all.yml
. Например, можно изменить директорию установки сервисов NAICE или таймзону для PostgreSQL. Проверьте доступ до удаленного хоста с помощью:
Блок кода ansible all --list-hosts # проверить список хостов ansible all -m ping # проверить доступ до хостов
Пример вывода, если хост доступен:
Блок кода language bash common_host | SUCCESS => { "ansible_facts": { "discovered_interpreter_python": "/usr/bin/python3" }, "changed": false, "ping": "pong" }
(необязательно) При необходимости интеграции с Active Directory в файле переменных плейбука naice-ansible/group_vars/all.yml требуется указать корректные переменные (подробнее про настройку интеграции):
Блок кода radius_ms_ad_ip: '172.16.4.115' radius_kerberos_ad_user_login: 'fill_login' radius_kerberos_ad_user_password: 'fill_password' radius_kerberos_workgroup: 'WS' radius_kerberos_kdc: 'WS.LOC' radius_kerberos_admin_server: 'LABMS.WS.LOC'
и выполнить установку с указанием специального ключа "--tags="use-ms-ad"":
Блок кода ansible-playbook --ask-become-pass common-freeradius.yml --tags="use-ms-ad"
Установка PostgreSQL
Предусмотрены два варианта дистрибуции СУБД - установка сервиса и разворачивание docker-контейнера. Рекомендуемый вариант - docker-контейнер.
...