Используется для автоматизации настройки и массового развёртывания программного обеспечения.
Работает с Linux-узлами (SSH-соединение), также поддерживает Windows (WinRM соединение).
Установка пакета
Пакет ansible доступен в репозитории ОСОН Орёл и в дистрибутиве ОССН Смоленск.
Установить пакет можно с помощью графического менеджера пакетов или из командной строки командой
Настройка пакета
При установке пакета создаётся каталог /etc/ansible, содержащий два конфигурационных файла:
- /etc/ansible/hosts - список хостов, с которыми работает ansible;
- /etc/ansible/ansible.cfg - файл настроек ansible.
/etc/ansible/hosts
В файле /etc/ansible/hosts указывается список хостов, с которыми должен работать ansible.
Файл снабжен достаточно подробными комментариями:
Дополнительно в файле /etc/ansible/hosts могут быть заданы значения переменных для определённых там хостов (сетевые адреса, псевдонимы и пр.).
Более подробная информация содержится в документации
Простые примеры использования
Так как ansible подключается к хостам по протоколу ssh, на хосте, с которым должен работать ansible, должен быть установлен сервер ssh.
Кроме того, для безопасного подключения, должна быть настроена авторизация подключения ssh по открытому ключу.
Установить сервер ssh и настроить авторизацию пооткрытому ключу можно по этой инструкции.
Далее предполагаем, что в файле /etc/ansible/hosts указан список хостов, и, в примерах, будем работать со всеми указанными хостами применяя псевдоним all.
Просто пинг. Ко всем хостам (all) применяется модуль ping (-m ping):
ansible -m ping all
Инвентаризация состояния хостов. Ко всем хостам (all) применяется модуль setup (-m setup):
Инвентаризация выводит слишком много информации, поэтому отфильтруем информации об объёме памяти:
ansible -m setup -a 'filter=ansible_memtotal_mb' all