Рассмотрим установку astra-automation и развёртывание простого сценария. В данном примере рассмотрим простое развёртывание «Контроллер на одном узле» (https://docs.astra-automation.ru/1.1/installation/inventory/aac/single-node/). Вариант когда контроллер и СУБД развёрнуты на одном узле не подходит для промышленной эксплуатации, но он прост в развёртывании, нетребователен к ресурсам и подходит для тестирования и опробации.
Если используется внутренняя СУБД, указывать ее параметры не требуется – она будет развернута на том же узле, что и контроллер.
Сама установка согласно инструкции https://docs.astra-automation.ru/1.1/installation/
Основные параметры при развёртывании на которые стоит обратить внимание.
1. В каталоге /etc/apt/sources.list.d/ создайте файл astra-automation.list со ссылкой на репозиторий Astra Automation:
deb https://dl.astralinux.ru/aa/aa-debs-for-alse-1.7 1.1-upd1 main
2. Установка произойдёт в каталог /opt/rbta/aa/astra-automation-setup. Развертывание считается успешным, если для всех узлов в поле failed указано значение 0.
Прошу обратить внимание на данные лог с сообщениями об ошибках, он довольно подробный и можно увидеть где и с чем у выс проблемы (так же и при обновлении!!!) Поверьте внимательное чтение может сохранить вам до нескольких часов ковыряния непонятно с чем.
 
3. Настраиваем SSH для доступа к узлам
Для генерации пар ключей SSH на установочном узле выполните следующие действия:
В каталоге /opt/rbta/aa/astra-automation-setup/ создайте подкаталог ssh-keys/.
sudo mkdir -p /opt/rbta/aa/astra-automation-setup/ssh-keys/
Перейдите в созданный каталог:
cd /opt/rbta/aa/astra-automation-setup/ssh-keys/
Для каждого узла создайте пару ключей SSH:
sudo ssh-keygen -C "<comment>" -f ./<filename> -N "<password>"
Чтобы разрешить подключение к узлу по SSH с использованием ключей, выполните следующие действия:
	- 
	В каталоге /etc/ssh/sshd_config.d/создайте файлssh_auth_keysсо следующим содержимым:
 
PubkeyAuthentication  yes
Authorized KeysFile   .ssh/authorized_keys  .ssh/authorized_keys2
 
Перезапустите сервер SSH:
sudo systemctl restart ssh
Если узел разрешает подключение по SSH с использованием пароля, публичную часть ключей SSH можно разместить с помощью утилиты ssh-copy-id:
ssh-copy-id -i <filename> <user>@<host>
Для настройки узлов с помощью Ansible необходимо разрешить на них использование команды sudo без ввода пароля.
Чтобы выключить запрос пароля при использовании sudo, выполните команду:
sudo astra-sudo-control disable
 
4. Использование коллекций Anseble можно посмотреть по данной ссылке https://docs.astra-automation.ru/1.1/automation-hub/collections/. Увы но будем использовать локальный файл для запуска. (в документации очень много полезного добавлен начиная с версии 1.1 Added in version 1.1-upd1., эх чуть раньше бы.)
Настройка контроллера и запуск проекта.
 Запустите веб-браузер и перейдите по адресу http://<IP>/, где <IP> – IP-адрес узла, на котором развернут Automation Controller.
Авторизуйтесь в веб-интерфейсе контроллера с учетными данными администратора контроллера.

Значения по умолчанию:
Создаём и заполняем инвентарь:
	- 
	На панели навигации выберите  (). 
- 
	Нажмите кнопку Добавить (Add) и выберите Добавить инвентарь (Add inventory). 
- 
	В форме Создать новый инвентарь (Create new inventory) в поле Название (Name) введите строку You_inventory_name. В поле Организация выберете значение Default.
 
- 
	Нажмите кнопку Сохранить (Save). Откроется окно просмотра свойств созданного инвентаря. 
- 
	Выберите вкладку Управляемые узлы (Managed Nodes). 
- 
	Нажмите кнопку Добавить (Add). 
- 
	Заполните форму Создать новый узел (Create New Node): 
- Нажмите кнопку Сохранить (Save).
Создаём проект.
Как писал ранее делаем ручное создание. Для этого необходимо перейти на узел с AA через ssh. Переходим в место расположения проектов по умолчанию :  /var/lib/awx/projects и создаём там папку для нашёго проекта test_project
	- 
	На панели навигации выберите  (). 
- 
	Нажмите кнопку Добавить (Add). 
- 
	Заполните форму Создать новый проект (Create new project): 
		- 
		Название (Name): test_project.
 
- 
		Организация : Default
 
- 
		Тип системы управления исходными данными (Source Control Type): Ручное управление.
 
- 
		Каталог playbook:  test_projec
 
 
	- 
	
		- 
		Нажмите кнопку Сохранить (Save). 
 
Создаём шаблон задания.
Опять же предварительно создаём исполняемый playbook внутри нашего проекта. Переходим  /var/lib/awx/projects/test_project и создаём там файл os_users.yml со следующим содержимым (в данном случае создадим пользователя):
---
- name: Manage OS users
  hosts: all
  become: true
  gather_facts: false
  tasks:
    - name: Add the user "testuser"
      ansible.builtin.user:
        name: 'testuser'
        password: "123"
        update_password: on_create
        shell: /bin/bash
        state: present
Дальнейшие действия выполняем в веб интерфейсе AA:
	- 
	На панели навигации выберите  (). 
- 
	Нажмите кнопку Добавить (Add) и в открывшемся меню выберите Добавить шаблон задания (Add job template). 
- 
	Заполните форму Создать новый шаблон задания (Create New Job Template): 
		- 
		Название (Name): test_user.
 
- 
		Тип задания (Job Type): Выполнение (Run).
 
- 
		Инвентарь (Inventory): You_inventory_name 
- 
		Проект (Project): test_project 
- 
		Playbook: os_users.yml 
 
- 
	Нажмите кнопку Сохранить (Save). Откроется окно просмотра свойств шаблона. 
	- 
	Для запуска задания нажмите кнопку Запустить (Run). Откроется окно просмотра журнала выполнения задания. 
- 
	Дождитесь перехода задания в статус Успех(Success), после чего обновите страницу браузера. В окне вывода будет отображен журнал выполнения задания, например:
   
 
Как видем задание выполнено и отработало без ошибок. Можем пройти на нашу упровляему систему  и проверить появился ли там данный пользователь. (если ошибок при выполнении недыло и вы корректно расположили ssh ключи то пользователь будет создан, правда очень порублен в правах.)