ちょっと自分のメモがてら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