Как установить и настроить Ansible на Ubuntu 18.04

Инструкция по установке Ansible на виртуальный сервер под управлением Ubuntu 18.04.

Что такое Ansible?

Ansible это один из главных трендов автоматизации технологических процессов и производств с помощью программных средств. Это инструмент с открытым исходным кодом для управления программным обеспечением, конфигурацией и развертыванием приложений на множестве хостов. Ansible довольно просто использовать, но при этом он достаточно мощный, чтобы автоматизировать сложные многоуровневые среды ИТ-приложений.

58 ansible

Установка

Обновите локальную базу пакетов:

sudo apt update


Для начала установите пакет software-properties-common, который позволяет легко управлять дистрибутивами и источниками программного обеспечения от независимых поставщиков:

sudo apt install software-properties-common

С помощью этого инструмента можно управлять персональными архивами пакетов (PPA), которые позволяют распространять собственные пакеты и утилиты без лишних сложностей.


Затем добавьте репозиторий Ansible PPA с помощью следующей команды:

sudo apt-add-repository ppa:ansible/ansible


В процессе присоединения потребуется нажать клавишу Enter.


Еще раз обновите базу пакетов и выполните установку Ansible:

sudo apt update sudo apt install ansible


Теперь на виртуальном сервере установлено программное обеспечение Ansible, необходимое для администрирования ваших хостов.

Настройка доступа к хостам по SSH

Ansible в основном связывается с клиентскими компьютерами через SSH.

В нашей инструкции рассмотрено использование SSH-ключей, т.к. этот способ помогает упростить процесс подключения и является более безопасным, чем использование паролей.

Подробнее о том, что такое SSH-ключи и как с ними работать, можно прочитать в нашей инструкции.


С помощью следующей команды создайте SSH-ключ, который будет использоваться для подключения к хостам:

ssh-keygen -t rsa -b 4096


Скопируйте сгенерированный ключ на каждый хост, который будет обслуживаться Ansible:

ssh-copy-id user_name@ip-address>

Например: ssh-copy-id Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript.


С помощью текстового редактора откройте следующий файл конфигурации:

vi /etc/ansible/hosts

Используя следующий синтаксис, где group_name — удобное название группы серверов, а your_server_ip_1 и your_server_ip_2 — IP-адреса обслуживаемых серверов, добавьте строки в открытый файл hosts:

[group_name]
your_server_ip_1
your_server_ip_2

Например:

[servers_ubuntu]
123.122.123.122
46.122.123.20

Сохраните изменения и закройте файл.Важно: на каждом хосте должен быть установлен язык python и пакет python-apt:

 

apt-get install python python-apt

Проверка подключения

По умолчанию Ansible выполняет подключение к удаленному хосту от имени пользователя root, если вы используете другого пользователя, то необходимо выполнить дополнительные настройки. Создайте каталог в структуре конфигурации, в котором будут находиться файлы в формате YAML для каждой группы:

sudo mkdir /etc/ansible/group_vars

Создайте подкаталог с названием вашей группы:

sudo nano /etc/ansible/group_vars/group_name

Например:

sudo nano /etc/ansible/group_vars/servers_ubuntu

Вставьте следующую строку, вместо user_name указав имя вашего пользователя:

---
ansible_user: user_name

Сохраните изменения.

Примечание: отдельные хосты можно настроить, создав алиасы и файлы с именами в соответствии с их псевдонимом в каталоге /etc/ansible/host_vars

Для проверки подключения выполните команду ping:

ansible -m ping all

Ожидаемый результат:

123.122.123.122 | SUCCESS => {
    "changed": false,
    "ping": "pong"
}

46.122.123.20 | SUCCESS => {
    "changed": false,
    "ping": "pong"
}

Коментарии (0)

Здесь пока нет никаких комментариев

Оставьте свои комментарии

  1. Оставить коментарий как гость.
Вложения (0 / 3)
Share Your Location