$ command-helper

Ansible

Ad-hoc команды, безопасный запуск плейбуков, инвентарь, vault и отладка.

Потребуется вход через Google

Ad-hoc команды

Проверить связь со всеми хостами
ansible all -i <inventory> -m ping
Выполнить shell-команду на группе
ansible <group> -i <inventory> -m shell -a 'uptime'
Перезапустить сервис через sudo
ansible <group> -i <inventory> -b -m service -a 'name=nginx state=restarted'
Собрать факты о хосте
ansible <host> -i <inventory> -m setup

Плейбуки

Запустить плейбук
ansible-playbook -i <inventory> <playbook>.yml
Пробный запуск с diff
ansible-playbook -i <inventory> <playbook>.yml --check --diff
Ограничить конкретными хостами
ansible-playbook -i <inventory> <playbook>.yml --limit <host>
Выполнить только задачи с тегом
ansible-playbook -i <inventory> <playbook>.yml --tags <tag>
Передать дополнительные переменные
ansible-playbook -i <inventory> <playbook>.yml -e 'version=1.2.3'
Список задач без запускапродвинутая
ansible-playbook -i <inventory> <playbook>.yml --list-tasks
Начать с конкретной задачипродвинутая
ansible-playbook -i <inventory> <playbook>.yml --start-at-task '<task>'

Инвентарь

Инвентарь деревом
ansible-inventory -i <inventory> --graph
Все переменные хостапродвинутая
ansible-inventory -i <inventory> --host <host>

Vault

Зашифровать файл
ansible-vault encrypt <file>
Редактировать зашифрованный файл
ansible-vault edit <file>
Зашифровать одно значение для vars-файлапродвинутая
ansible-vault encrypt_string '<secret_value>' --name 'db_password'
Запустить плейбук с вводом пароля от vault
ansible-playbook -i <inventory> <playbook>.yml --ask-vault-pass

Отладка

Подробный вывод
ansible-playbook -i <inventory> <playbook>.yml -vvv
Проверка синтаксиса
ansible-playbook <playbook>.yml --syntax-check
Документация модуля
ansible-doc <module>