Пример использования ansible
0. Переносим SSH ключ на целевую машину
1. Создаем рабочую директорию и настраиваем виртуальное окружение
и переходим в данную директорию
Затем нам нужно создать и настроить виртуальное окружение
2. Создаем ansible.cfg
Создаем конфигурационный файл нашего проекта
3. Создаем инвентарь
Создаем инвентарный файл
и пишем сервера которыми будем управлять через Ansible
Пример файла:
4. Создаем role
Создаем директорию и переходим в нее
Создаем роль с нужным названием
По итогу структура проекта получается следующей
ansible/
|
|- ansible.cfg
|
|- inventory.ini # описывает машины
|
|- playbook.yml # управляет ролями
|
|- roles/
|
|- k8s/ # результат выполенния команды ansible role init k8s
|
|- defaults/
|
|- files/
|
|- handlers/
|
|- meta/
|
|- tasks/ # сущность роли
|
|- templates/
|
|- tests/
|
|- vars/
5. Пишем playbook
Переходим в корень нашего проекта и создаем playbook
6. Проверяем наш инвентарь
Проверяем что наш нвентарь написан корректно и запустим простой модуль на проверку доступности
пример вывода:
SSH password:
[WARNING]: Host 'app01' is using the discovered Python interpreter at '/usr/bin/python3.12', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.21/reference_appendices/interpreter_discovery.html for more information.
app01 | SUCCESS => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/bin/python3.12"
},
"changed": false,
"ping": "pong"
}
Последняя проверка 21.09.2026