## Установка Ansible Ansible работает через питон, по этому необходимо установить его: ``` apt update && apt upgrade -y apt install python3 python3-pip python3-venv -y ``` Установка виртуального окружения: ``` python3 -m venv source venv/bin/activate ``` И устанавливаем Ansible: ``` pip install ansible ansible --version ``` ## Настройка Ansible Готово. Ansible используем ssh для подключения, лучше всего и безопаснее использовать ssh-ключ, создадим его: ``` ssh-keygen ``` У меня ключ уже создан Расположение: ``` /home//.ssh/id_ed25519.pub # публичный ключ /home//.ssh/id_ed25519 # приватный ключ ``` Перекидываем публичный ssh-ключ на наш тестовый стенд: ``` ssh-copy-id -i ~/.ssh/ed25519.pub ansible@172.16.13.101 ``` Готово. ## Первые шаги Мы можем сделать начальную структуру проекта Ansible через команду: ``` ansible-galaxy role init my-project ``` Коротко про каждую: 1. defaults - в main.yml хранятся дефолтные переменные с которыми запускается роль 2. vars - main.yml задаются переменные 3. tasks - сами задачи, плейбуки 4. handlers - это обработчики изменений, если ваша роль выполнялась, что-то изменила, потому что оно не соответствовало описанию плейбука, то будет вызван хендлер, если его описали 5. templates - шаблоны 6. files - хранение файлов, конфигов 7. tests - тесты, можно проверять работу плейбуков, не применяя к серверам, локально в среде После подключения Ansible делает сбор фактов, узнает полную информацию о системе, какая ОС, архитектура, ip адреса и так далее.