Быстрая установка и настройка Ansible в Ubuntu 18.04

Данный мануал поможет установить Ansible на Ubuntu 18.04 и разобраться в базовых понятиях систем оркестровки.

Расширенную версию мануала вы найдете здесь.

Требования

  • Главная нода Ansible: сервер Ubuntu 18.04, на который мы установим Ansible (для этого можно использовать удаленный сервер или локальную машину).
  • Один или несколько хостов Ansible: это серверы Ubuntu 18.04, к которым главная нода может подключаться по SSH.

1: Установка Ansible

Войдите на сервер, который будет работать как главная нода. На этот сервер нужно добавить репозиторий PPA Ansible:

sudo apt-add-repository ppa:ansible/ansible

Нажмите Enter, чтобы принять PPA.

Обновите индекс пакетов системы, чтобы получить доступ к добавленному архиву, а затем установите программу:

sudo apt update
sudo apt install ansible

2: Создание инвентаря

Чтобы отредактировать содержимое стандартного инвентаря Ansible, откройте файл /etc/ansible/hosts:

sudo nano /etc/ansible/hosts

Стандартный файл содержит ряд примеров, которые вы можете использовать в качестве шаблонов для настройки пользовательского инвентаря. Следующий пример определяет группу по имени [servers], которая состоит из трех серверов: server1, server2 и server3. Вместо условных IP-адресов вы должны указать адреса ваших хостов Ansible.

[servers]
server1 ansible_host=203.0.113.111
server2 ansible_host=203.0.113.112
server3 ansible_host=203.0.113.113
[all:vars]
ansible_python_interpreter=/usr/bin/python3

Подгруппа all:vars устанавливает параметр ansible_python_interpreter, валидный для всех хостов в инвентаре. Этот параметр настраивает использование /usr/bin/python3 (исполняемый файл Python 3) вместо файла /usr/bin/python (Python 2.7), которого нет в текущей версии Ubuntu.

Сохраните и закройте файл.

3: Тестирование соединения

Используйте флаг –u, чтобы указать имя пользователя в удаленной системе. Если этот флаг не указан, Ansible попытается подключиться как ваш текущий пользователь системы на главной ноде.

На главной ноде Ansible запустите команду:

ansible all -m ping -u root

Вы получите такой вывод:

server1 | SUCCESS => {
"changed": false,
"ping": "pong"
}
server2 | SUCCESS => {
"changed": false,
"ping": "pong"
}
server3 | SUCCESS => {
"changed": false,
"ping": "pong"
}

Если вы впервые подключаетесь к этим серверам по SSH, вам будет предложено подтвердить подлинность хостов в Ansible. По запросу введите yes и нажмите Enter.

Получив ответ «pong», вы можете быть уверены, что все готово к запуску команд и плейбуков Ansible на хостах.

Читайте также:

Tags: , ,

Добавить комментарий