Установка и настройка Ansible в Ubuntu
Ubuntu 22-08-2022, 14:39 komronu 3 009 0
Предварительные требования
Для данного руководства требуется следующее:
* Один узел управления Ansible: узел управления Ansible — это система, которую мы будем использовать для подключения к хостам Ansible через SSH и управления этими хостами. В качестве узла управления Ansible может выступать локальный компьютер или специально выделенный для Ansible сервер.
* Один или несколько хостов Ansible: хост Ansible — это любой компьютер, для автоматизации которого настроен узел управления Ansible.
Убедитесь, что каждый хост Ansible соответствует следующим требованиям:
* Открытый ключ SSH узла управления Ansible добавлен в файл authorized_keys пользователя системы. Это может быть пользователь root или обычный пользователь с привилегиями sudo.
Step 1 — Установка Ansible
$ sudo apt update
$ sudo apt install ansible
Step 2 — Настройка файла инвентаризации
В следующем примере определяется группа [servers] с тремя разными серверами, каждый из которых имеет собственный индентификатор: server1, server2 и server3. Обязательно замените выделенные IP-адреса IP-адресами ваших хостов Ansible.
$ sudo vim /etc/ansible/hosts
[servers]
server1 ansible_host=192.168.1.10
server2 ansible_host=192.168.1.11
server3 ansible_host=192.168.1.12
[all:vars]
ansible_python_interpreter=/usr/bin/python3
Если вы захотите проверить файл инвентаризации, то вы можете запустить команду:
$ ansible-inventory --list -y
Результат будет выглядеть примерно так, только в нем будет показана ваша серверная инфраструктура, определенная в файле инвентаризации:
Output
all:
children:
servers:
hosts:
server1:
ansible_host: 192.168.1.10
ansible_python_interpreter: /usr/bin/python3
server2:
ansible_host: 192.168.1.11
ansible_python_interpreter: /usr/bin/python3
server3:
ansible_host: 192.168.1.12
ansible_python_interpreter: /usr/bin/python3
ungrouped: {}
Step 3 — Тестирование подключения
После настройки файла инвентаризации для вашего сервера, вы можете проверить способность Ansible подключаться к этим серверам и запускать команды через SSH.
Запустите на локальном компьютере или узле управления Ansible следующую команду:
$ ansible all -m ping -u <user_name>
Результаты должны выглядеть примерно следующим образом:
Output
server1 | SUCCESS => {
"changed": false,
"ping": "pong"
}
server2 | SUCCESS => {
"changed": false,
"ping": "pong"
}
server3 | SUCCESS => {
"changed": false,
"ping": "pong"
}
Step 4 — Запуск ситуативных команд (опционально)
Например, вы можете проверить время uptime каждого хоста в группе servers с помощью следующей команды:
$ ansible servers -a "uptime" -u <user_name>
Можно указать несколько хостов, разделив их имена двоеточиями:
$ ansible server1:server2 -m ping -u <user_name>
Настраиваем часовой пояс в Ubuntu при помощи Ansible....
ПодробнееСоздание выделенной сети контейнерам Docker....
ПодробнееНастраиваем среду контейнеризации приложений с помощью Podman’а....
ПодробнееНастройка обслуживания нескольких сайтов на одном веб сервере NGINX....
ПодробнееОграничиваем доступ группе пользователей по протоколу SFTP и создадим синонимы директорий в дереве файловой...
ПодробнееМониторинг кодов состояния сайта из лог-файла nginx access log....
ПодробнееНовые комментарии
Цитата: FidoNet Цитата: sobir Цитата: FidoNet Спасибо за статью. Остальные
К комментариюЦитата: sobir Цитата: FidoNet Спасибо за статью. Остальные статьи что находил
К комментариюЦитата: FidoNet Цитата: sobir Цитата: FidoNet Можт быть дело в
К комментариюЦитата: sobir Цитата: FidoNet Можт быть дело в dnsmasq.service? Ошибка Failed
К комментариюЦитата: FidoNet Цитата: sobir Цитата: FidoNet Спасибо за статью. Остальные
К комментариюМожт быть дело в dnsmasq.service? Ошибка Failed to set DNS configuration: Unit
К комментариюКакой дистрибутив Linux вы часто используете?
Календарь
« Ноябрь 2024 » | ||||||
---|---|---|---|---|---|---|
Пн | Вт | Ср | Чт | Пт | Сб | Вс |
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 |