Начало работы#

Для быстрого знакомства с возможностями платформы Astra Automation разверните Automation Controller и с его помощью запустите несложный playbook.

Для развертывания Automation Controller понадобится узел, обладающий характеристиками не ниже указанных:

Характеристика

Значение

Количество ядер CPU

4

Объем RAM, ГБ

8

Объем хранилища, ГБ

30

Операционная система

Astra Linux Special Edition 1.7.5uu1

Режим защищенности

Базовый («Орел») или усиленный («Воронеж»)

Совет

Вы можете использовать для развертывания контроллера виртуальную машину VirtualBox, созданную с помощью Vagrant. Соответствующий Vagrantfile доступен по ссылке.

Для настройки узла необходим доступ к нему по протоколу SSH, а для работы с самим контроллером – веб-браузер.

Установка контроллера#

Для установки контроллера выполните следующие действия:

  1. Подключитесь к целевому узлу по SSH.

  2. В каталоге /etc/apt/sources.list.d/ создайте файл astra-automation.list со ссылкой на репозиторий Astra Automation:

    deb https://dl.astralinux.ru/aa/aa-debs-for-alse-1.7 <version> main
    

    Вместо <version> необходимо подставить версию устанавливаемой платформы, например, 1.1-upd1.

    Доступные версии продукта опубликованы в таблице История обновлений.

  3. Обновите список доступных пакетов:

    sudo apt update
    
  4. Установите пакет astra-automation-setup:

    sudo apt install astra-automation-setup --yes
    
  5. Перейдите в каталог /opt/rbta/aa/astra-automation-setup/:

    cd /opt/rbta/aa/astra-automation-setup/
    
  6. Внесите изменения в файл inventory:

    • Раздел [automationcontroller] приведите к следующему виду:

      [automationcontroller]
      controller.example.com  ansible_host=<IP>  ansible_connection=local
      

      Здесь:

      • controller.example.com – название узла;

      • <IP> – IP-адрес настраиваемого узла. Если вы используете ВМ, созданную на основе упомянутого ранее Vagrantfile, укажите в этом поле значение 192.168.56.11.

    • В разделе [all:vars] укажите реквизиты администратора контроллера:

      • admin_username – название учетной записи;

      • admin_password – пароль.

  7. Запустите установку:

    sudo ./aa-setup
    

    Дождитесь завершения выполнения команды, это может занять некоторое время. По окончании установки в терминал выводится набор строк следующего вида:

    PLAY RECAP *********************************************************************
    controller.example.com     : ok=298  changed=141  unreachable=0    failed=0    skipped=114  rescued=0    ignored=5
    localhost                  : ok=0    changed=0    unreachable=0    failed=0    skipped=1    rescued=0    ignored=0
    
    ――――――――――――――――――――――――――――――――――――――――――
    Astra Automation Setup has been finished
    ――――――――――――――――――――――――――――――――――――――――――
    Astra Automation Controller host:
    https://192.168.56.11/
    
    Login: admin
    Password: awx
    ――――――――――――――――――――――――――――――――――――――――――
    

    Установка считается успешной, если значение параметра failed равно 0.

  8. Для отключения от настраиваемого узла выполните команду:

    exit
    

Настройка контроллера#

  1. Запустите веб-браузер и перейдите по адресу http://<IP>/, где <IP> – IP-адрес узла, на котором развернут Automation Controller.

    При первом подключении браузер выводит предупреждение о том, что подключение не защищено. Это нормальное поведение, поскольку для защиты подключения контроллер использует самоподписанный сертификат. При использовании браузера на основе Chromium выполните следующие действия:

    1. Нажмите кнопку Дополнительные.

    2. Нажмите ссылку Перейти на сайт <IP> (небезопасно).

  2. Авторизуйтесь в веб-интерфейсе контроллера с учетными данными администратора контроллера. Значения по умолчанию:

    • имя пользователя – admin;

    • пароль – awx.

  3. Создайте и заполните инвентарь:

    1. На панели навигации выберите Ресурсы ‣ Инвентарь (Resources ‣ Inventories).

    2. Нажмите кнопку Добавить (Add) и выберите Добавить инвентарь (Add inventory).

    3. В форме Создать новый инвентарь (Create new inventory) в поле Название (Name) введите строку Quick Start Inventory.

    4. Нажмите кнопку Сохранить (Save). Откроется окно просмотра свойств созданного инвентаря.

    5. Выберите вкладку Управляемые узлы (Managed Nodes).

    6. Нажмите кнопку Добавить (Add).

    7. Заполните форму Создать новый узел (Create New Node):

      • Название (Name): localhost.

      • Переменные (Variables):

        ---
        ansible_host: localhost
        ansible_connection: local
        
    8. Нажмите кнопку Сохранить (Save).

  4. Создайте проект:

    1. На панели навигации выберите Ресурсы ‣ Проекты (Resources ‣ Projects).

    2. Нажмите кнопку Добавить (Add).

    3. Заполните форму Создать новый проект (Create new project):

      • Название (Name): Quick Start Project.

      • Тип системы управления исходными данными (Source Control Type): Git.

      • URL системы управления исходными данными (Source Control URL):

        https://gitflic.ru/project/astra_team/astra-automation-quick-start.git
        
    4. Нажмите кнопку Сохранить (Save).

      Дождитесь завершения синхронизации проекта: значение в поле Статус последнего задания (Last Job Status) должно измениться на Успех (Success).

  5. Создайте шаблон задания:

    1. На панели навигации выберите Ресурсы ‣ Шаблоны (Resources ‣ Templates).

    2. Нажмите кнопку Добавить (Add) и в открывшемся меню выберите Добавить шаблон задания (Add job template).

    3. Заполните форму Создать новый шаблон задания (Create New Job Template):

      1. Название (Name): Quick Start Template.

      2. Тип задания (Job Type): Выполнение (Run).

      3. Инвентарь (Inventory): Quick Start Inventory.

      4. Проект (Project): Quick Start Project.

      5. Playbook: playbooks/quick-start.yml.

    4. Нажмите кнопку Сохранить (Save). Откроется окно просмотра свойств шаблона.

  6. Для запуска задания нажмите кнопку Запустить (Run). Откроется окно просмотра журнала выполнения задания.

  7. Дождитесь перехода задания в статус Успех (Success), после чего обновите страницу браузера. В окне вывода будет отображен журнал выполнения задания, например:

    PLAY [Quick Start Playbook] ****************************************************
    
    TASK [Print Quick Start] *******************************************************
    ok: [localhost] => {
        "msg": "Quick Start with Astra Automation on localhost"
    }
    
    PLAY RECAP *********************************************************************
    localhost                  : ok=1    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0
    

Заключение#

В этом сценарии вы познакомились с основными шагами по развертыванию Automation Controller и его использованию для настройки управляемых узлов. Из всей последовательности шагов важно выделить следующие действия:

  • Указание учетных данных администратора контроллера в файле inventory.

  • Получение кода проекта из системы контроля версий.

  • Создание инвентаря и записей об управляемых узлах.

  • Создание шаблона и запуск задания на его основе.