Ansible 簡単動作確認

このページではAnsible でCentOS 8.2 から Windows 10 をリモートコントロールする環境の設定方法を紹介します。
Ansible 初体験の方でも確認できるよう、可能な限り簡単に書くつもりです。実際に自分も初めてこのときに動作確認しました。
コントロールノードはCentOS 8.2を使用しました。無料でダウンロード、インストールが可能です。管理される側はWindows 10 です。
CentOSからWindows10へのAnsible接続

CentOS 8.2 及び Ansible 関連のインストール

コントロールノード(コントロールする側)として使用する CentOS 8.2 のインストールを行います。無料でダウンロード、及びインストールが可能です。
詳しくは以下の手順を参考にしてください。

参考:CentOS 8.2 及び Ansible インストール

Windows 10 セットアップ

Windows 10 インストール方法は省略します。インストール後で必要な設定をまとめます。
Windows 10にはコントロールノードからRemotePowershellでログインされるため構成が必要です。それ以外にも多くの設定変更が必要です。手動で設定してもよいのですが、一括設定が用意されています。ダウンロードした後で手動で実行します。
PS>  Invoke-WebRequest -Uri https://raw.githubusercontent.com/ansible/ansible/devel/examples/scripts/ConfigureRemotingForAnsible.ps1 -OutFile ConfigureRemotingForAnsible.ps1

PS>  powershell -ExecutionPolicy RemoteSigned .\ConfigureRemotingForAnsible.ps1
このスクリプトで以下設定が実行されます。
結果はWindows イベントログに記録されます。
・VMware Player で Windows 10 を動作させる場合は仮想マシンのネットワーク接続設定を NAT から ブリッジへ変更します。
(*)Windows 10 側は Remote Powershell で接続されるため、OpenSSH サーバ機能は不要です。

Ansibleコントロールノードのインストール

CentOS への Ansible のコントロールノード(管理する側)をインストールします。次のページを参考にしてください。

試してみる

簡単なインベントリファイルです。[ ~ ] セクションで囲われた部分がグループとして認識されます。そのセクションに記載したホスト名がそのグループに属するホストとして認識されます。
このファイルをコントロールノード側 (CentOS 8.2) 側の /ansible ディレクトリに保存します。
[windows]
192.168.11.100

[windows:vars]
ansible_user=username
#ansible_password=
ansible_connection=winrm
ansible_port=5986
ansible_winrm_server_cert_validation=ignore

コントロールノード側で実行するコマンドは以下の通りです。/ansible ディレクトリから実行します。Playbook なしで直接コマンドを実行しています。192.168.11.100 .側から PING 応答がある場合は以下のように pong が戻されます。
 # ansible windows -i inventory -m win_ping --ask-pass
SSH password:
192.168.11.100 | SUCCESS => {
"changed": false,
"ping": "pong"
}

[Ansible まとめ]