
ちょっと自分のメモがてらansbileのオプションを書き留めておきます。
それぞれのファイルの正式な書き方や説明は省略します。
よく使う実行コマンド
ansibleコマンド
ansible-playbook prod.yml -i ./hosts -c paramiko --vault-password-file=pass/vault_password_file --diff
設定ファイルなど
playbookファイル
- name: インストール 本番環境
hosts: hosts_prod
serial: 1
user: hoge
become: true
vars_files:
- group_vars/common_params.yml
roles:
- role: install_common
tags: cmn
- role: install_aws
tags: aws
hostsファイル
[hosts_prod] prod_01 prod_02 [hosts_dev] dev_01
オプション
-i INVENTORY
インベントリを指定します。これが指定されることにより、playbook中でhosts: hosts_prodと指定することができます。
-k, --ask-pass
ログイン時にパスワードを要求します。
-c CONNECTION
コネクションタイプ。 -k でログインする際は、-c paramikoを指定しないとエラーになる。理由は不明。
--vault-password-file
ansible-vault で暗号化したファイルのパスワードファイル
--diff
デプロイ時に差分表示
-v
デプロイ詳細を表示。-vvv, -vvvv でさらにもっと詳細表示。
--check -C
差分確認だけでデプロイしない。
--step
1ステップごと確認しながらデプロイする。
--tags
playbookに書いたタグを指定して実行する。
確認用オプション
下記のオプションは調べてて知りました。便利だなぁ。
--list-hosts
デプロイするホストを表示する。
ansible-playbook prod.yml -i hosts --list-hosts
playbook: prod.yml
play #1 (hosts_prod): インストール 本番環境 TAGS: []
pattern: [u'hosts_prod']
hosts (2):
prod_02
prod_01
--list-tags
ロールのタグを表示する。
ansible-playbook prod.yml -i hosts --list-tags
playbook: prod.yml
play #1 (hosts_prod): インストール 本番環境 TAGS: []
TASK TAGS: [cmn, aws]
--list-tasks
ロールのタスクを表示する。
ansible-playbook prod.yml -i hosts --list-tasks
playbook: prod.yml
play #1 (hosts_prod): インストール 本番環境 TAGS: []
tasks:
install_common : create git clone dir {{ git_clone_dir }} TAGS: [cmn]
install_common : create log org dir {{ log_org_dir }} TAGS: [cmn]
(省略)
まとめ
--help を使えば他にも出てきます。
--list-* のオプションは今回記事を書かなかったら知らなかったなあ。
いつか使ってみよう。
Ansibleの書籍は一冊買っておくとなにかと便利ですよ。

Ansible実践ガイド 第2版 (impress top gear)
- 作者: 北山晋吾,塚本正隆,畠中幸司
- 出版社/メーカー: インプレス
- 発売日: 2018/03/01
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
【PR】搾取されてない.....!?
客先常駐で働いているエンジニアの方お疲れ様です。
IT業界でSESとして働いている人は多いんですが、自分のマージンや月額単価を知らない人がけっこう多いみたいですね。
自分もそうでした。(^^;)
でもそれかなりもったいないですよ。理由はこちらリツアンSTCの紹介記事を見てみてください。
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
blog.suganoo.net