Установка Ansible на Ubuntu 24.04
Полное руководство по установке и базовой настройке Ansible.

Ansible — это инструмент для автоматизации задач администрирования серверов. Он позволяет управлять конфигурацией, развертывать приложения и выполнять команды на множестве хостов одновременно без агентов на удалённых машинах. Всё управление происходит через SSH с управляющего сервера (control node).
Ansible особенно удобен на VPS и выделенных серверах для автоматизации рутинных задач.
Установка Ansible
Ubuntu 24.04 имеет актуальную версию Ansible в официальных репозиториях — это наиболее простой и рекомендуемый способ.
- Обновите список пакетов:
sudo apt update
sudo apt upgrade -y
- Установите Ansible:
sudo apt install ansible -y
- Проверьте версию:
ansible --version
Пример вывода:
ansible [core 2.16.10]
config file = /etc/ansible/ansible.cfg
configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3/dist-packages/ansible
ansible collection location = /root/.ansible/collections:/usr/share/ansible/collections
executable location = /usr/bin/ansible
python version = 3.12.3 (main, Nov 6 2024, 20:26:53) [GCC 13.2.0]
jinja version = 3.1.2
libyaml = True
Настройка доступа к хостам по SSH
Ansible работает по SSH, поэтому нужен беспарольный доступ с управляющего сервера на все целевые хосты.
- Сгенерируйте SSH-ключ (если ещё нет):
ssh-keygen -t ed25519 -C "ansible@your-server"
# или rsa, если ed25519 не поддерживается:
ssh-keygen -t rsa -b 4096 -C "ansible@your-server"
Нажмите Enter для всех вопросов (без пароля на ключ). 2. Скопируйте публичный ключ на каждый управляемый хост:
ssh-copy-id root@IP_ХОСТА
или для другого пользователя:
ssh-copy-id user@IP_ХОСТА
Введите пароль хоста один раз.
- Создайте файл инвентаря (список серверов):
sudo mkdir -p /etc/ansible
sudo nano /etc/ansible/hosts
Пример содержимого:
[webservers]
web1 ansible_host=192.168.1.10 ansible_user=root
web2 ansible_host=192.168.1.11 ansible_user=root
[dbservers]
db1 ansible_host=192.168.1.20 ansible_user=root
[all:vars]
ansible_python_interpreter=/usr/bin/python3
[webservers]— группа серверовansible_host— IP-адресansible_user— пользователь для подключенияansible_python_interpreter— указывает на Python 3 (важно для Ubuntu 24.04)
- Проверьте подключение:
ansible all -m ping
Успешный результат:
web1 | SUCCESS => {
"changed": false,
"ping": "pong"
}
Успешный результат команды ansible ping
Полезные замечания
- Ansible не требует установки агента на удалённых хостах — только SSH и Python (обычно уже есть в Ubuntu).
- Рекомендуется использовать SSH-ключи без пароля для автоматизации.
- Для большей безопасности создайте отдельного пользователя с sudo без пароля и используйте его вместо root.
- Все конфигурации хранятся в простых YAML-файлах — легко версионировать в Git.
Помощь
Если у вас возникли вопросы или требуется помощь, пожалуйста, свяжитесь с нами через систему тикетов — мы обязательно вам поможем!