Ansibleコマンドの使用方法


Ansible で設定を実行するコマンドの基本的な使い方を紹介します。
詳細はAnsibleのドキュメントを参考にしてください。
なお、実行にはあらかじめ環境設定をしておく必要があります。

1.Ansible

  引数に従い、単発でモジュールを実行します。
 
  $ ansible (対象機器名) -u (ユーザー名) -k -m (実行モジュール) -a (モジュールの引数)
 
   引数の説明:
    (対象機器名) 設定を行う機器名。インベントリファイルに定義しておく必要があります。
            1台のホスト、ホストグループという複数のホストをまとめたグループを指定します。
            また、ALL とするとインベントリファイルに記述した全ての設定を行います。

     -u      対象機器に接続するユーザー名。省略すると現在のユーザー名で接続します。
     -k      対象機器にssh接続するときにパスワード入力する。
     -m      モジュール名
     -a      モジュールの引数。(引数名)=(値) で記述します。”で囲むこともできます。

  例)centos2 に対して、モジュールPINGを使用し、pingを実行します。

    $ ansible centos2 -a data=pong -m ping -k

 ※上記以外にも様々な引数があります。詳細は以下を見てください。
 参考URL:https://docs.ansible.com/ansible/latest/cli/ansible.html

2.Ansible-Playbook

 引数に指定したplaybookに書かれた処理を上から順に連続で実行します。
 複数のplaybookを指定することで、連続で実行することもできます。

 $ ansible-playbook -k (playbookファイル名) ...

     -k           対象機器にssh接続するときにパスワード入力する。
     (playbookファイル名)  実行内容を記述したplaybookファイル名。絶対パス指定も可能。 

 例) playbook sample.yml を実行

   $ ansible-playbook -k sample.yml

 ※その他の引数(一部)
   ansible-playbookには様々な引数がありますが、おそらくよく使うことになるplaybookの書式チェックや実行内容確認の引数を紹介します。

     --syntax-check    playbookの書式のエラーチェック
     -C           dry-run。対象機器に接続するが、変更などは行わない。(何をやろうとするのか確認する)

  使用例)
    ansible-playbook の引数はplaybookファイル名より前にも後ろにも記述できます。
    確認系の引数は最後に書くと、後末尾を消すだけで実際の処理ができるので便利です。

    $ ansible-playbook sample.yml --syntax-check
    $ ansible-playbook -k sample.yml -C

 ※上記以外にも様々な引数があります。詳細は以下を見てください。
 参考URL:https://docs.ansible.com/ansible/latest/cli/ansible-playbook.html