Ведение.
Програмный комплекс Ansible автоматизирует управление удаленными Linux системами контролируя их состояние в зависимости от задач. Основная идея заложенная в Ansible — управление удалёнными узлами Linux с помощью кода. Выполнение кода осуществляется с помощью подключения клиентских устройств по ssh протоколу. Таким образом отпадает необходимость в использовании специализированного агента для работы с удалёнными ПК.
Подготовка.
- Стенд:
- Сервер ALT Linux, имя lin-ansb; ip-10.0.2.30
- пользователь user
- ALT Simply Linux, имя lin-sl; ip-10.0.2.31
- пользователь user
Програмный комплекс Ansible выпускается под лицензией GPL 3.0+ проприетарная, включает в себя две редакции.
- ansible-core
- ansible
Основные отличия редакций можно посмотреть ниже.
Мы будем рассматривать классическую версию Ansible. Статья блога является вводным вхождением в большую тему представления комплекса
Терминология.
Прежде чем начинать знакомство с программой, необходимо ознакомиться с терминами и определениями принятыми в Ansible.
- узел управления1 (control node)
- управляемые узлы2 (managed nodes)
- перечень3 (inventory)
- сборники игр4 (ansible-playbooks)
- спектакли5 (plays)
- роли6 (roles)
- задачи7 (tasks)
- обработчики8 (handlers)
- модули9 (modules)
- плагины10 (plugins)
- коллекции11 (collections)
Заключение.
Полезные ссылки.
Сноски.
- компьютер, с которого управляете запуском инструментов Ansible ↩︎
- целевые устройства управляемые с помощью Ansible. ↩︎
- список управляемых устройств, предоставленный одним или несколькими ‘источниками инвентаря ↩︎
- содержат код, если вам нужно выполнить задачу с Ansible более одного раза, ↩︎
- сопоставляет управляемые узлы (хосты) с задачами ↩︎
- ограниченное повторно используемый код для использования внутри игры ↩︎
- определение «действия’, которое должно применяться к управляемому хостингу ↩︎
- специальная форма задачи, выполняется только при уведомлении предыдущей задачи, приведшей к «измененному’ статусу.
↩︎ - код или двоичные файлы, выполняются на каждом узле определенного в задаче. Каждый модуль имеет определенное применение ↩︎
- фрагменты кода, расширяющие основные возможности Ansible ↩︎
- формат, который может содержать сборники игр, роли, модули и плагины ↩︎