ansible実行時のオプションTips
特定のサーバにのみ実行したい場合
-l <実行したいhost>
例
ansible-playbook playbook_example.yml -l 192.168.33.11
特定のHostsグループのみに実行したい場合
-l <実行したいhostグループ>
例
hostsファイル
[web] 192.168.11.11 192.168.11.12 [storage] 192.168.11.21 192.168.11.22
ansible-playbook playbook_example.yml -l storage
指定したタクスからはじめたい場合
--start-at <タスク名>
例
ansible-playbook playbook_example.yml --start-at='install package'
1タスクずつ確認しながら実行したい場合
--step
タスク毎に引き続き実行するか確認が入る(y/n/c)
- y: 実行
- n: スキップして次のタスクへ
- c: キャンセル
playbookの確認
--check
実際に実行はせずテストが出来る
sudo のパスワードを実行時に指定する方法
-K
vagrant環境などsudoのパスワード入力が要求されない場合はいらないが、実際の環境では当然パスワード入力が必要になるのでこのオプションで指定する
指定したタクスのみ実行したい場合
playbookの中でtagsを指定し、実行時にタグ名で指定する
--tags=<タグ名>
例
playbook
- hosts: webserver sudo: yes tasks: - name: download package get_url: url: https://hogehoge.deb dest: /usr/local/src/hogehoge.deb validate_certs: no tags: - download - name: install package command: dpkg -i /usr/local/src/hogehoge.deb tags: - install
実行オプション
ansible-playbook playbook_example.yml --tags=download ansible-playbook playbook_example.yml --tags=install