【Ansible Tower/AWX】win_pingモジュールで、Windowsの疎通確認


この記事はプロモーションを含みます。

Ansible

ホーム > Ansible Tower・AWX リファレンス

疎通確認を行う際、必ずと言っていいほど使用する「ping」コマンドですが、今回は、WindowsOS向けのモジュールである「win_ping」の使用方法を解説したいと思います。

環境と設定

今回使用する環境は、Ansible AWXです(以降は、AWXと表記)
ここでは、AWXの各種設定について記載しています。

本記事で解説する win_pingモジュールは、Windows向けのモジュールです。
Linux向けには、pingモジュールとして提供されています。
どちらも、pingを行う処理ですが、それぞれのOSに合うモジュールを使用しないとエラーになるので、注意が必要です。

テンプレート

今回実行するテンプレートの設定になります。

  • 名前:Windows
  • ジョブタイプ:実行
  • インベントリー:Windows Inventory
  • プロジェクト:秋拓プロジェクト
  • PLAYBOOK:win_ping.yml
  • 詳細:1(Verbose)

認証情報

今回実行する認証情報の設定になります。

  • 名前:Windows
  • 認証情報タイプ:マシン
  • ユーザー名:Windowsにログインするためのユーザー
  • パスワード:ユーザー名に対応したパスワード

インベントリー

今回実行するインベントリーの設定になります。

  • 名前:Windows Inventory

ホストは、接続先のWindows機器のIPアドレスを設定しています。
以下が、インベントリー変数の設定です。

---
ansible_connection: winrm
ansible_ssh_port: 5985
ansible_winrm_transport: basic
ansible_winrm_server_cert_validation: ignore

プレイブック

今回実行するプレイブックの内容になります。
[win_ping]モジュールの使い方は簡単で、[win_ping:]と記述すればOKです。
サンプルでは、[win_ping]モジュールの実行時のログ出力に名前を付けたいため、[name]ディレクティブを「疎通確認」と設定しています。

---
- hosts: all
  gather_facts: False
  tasks:

  - name: "疎通確認"
    win_ping:

実行結果

今回のジョブの実行結果になります。

Using /etc/ansible/ansible.cfg as config file
SSH password: 
PLAY [all] *********************************************************************
TASK [疎通確認] ********************************************************************
ok: [192.168.11.10] => {"changed": false, "ping": "pong"}
PLAY RECAP *********************************************************************
192.168.11.10              : ok=1    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

結果は「ok=1」で正常終了しましたね。

5行目のwin_pingモジュールの詳細結果です。
赤字部分の[ping]に対して、[pong]が返ってきているため、疎通が成功したということになります。

{
    "changed": false,
    "invocation": {
        "module_args": {
            "data": "pong"
        }
    },
    "ping": "pong",
    "_ansible_no_log": false
}

疎通に失敗する場合

疎通に失敗する場合、以下のように様々の原因が考えられます。

  • Ansible側の設定が間違っている
  • Windows側の設定が間違っている
  • WinRMの設定が間違っている

以下の記事を参考に設定などを見直してみて下さい。

記事は以上になります。
簡単に疎通確認することが出来ましたね!
このように、Ansibleでは簡単に使用出来るモジュールが多く提供されています。
今後も様々なモジュールの使用方法を解説していきますのでよろしくお願いします。

コメント

タイトルとURLをコピーしました