web-dev-qa-db-ja.com

Ansibleで、Windowsホストに接続する方法は?

Ansibleウィンドウモジュールで立ち往生しています。 Windowsマシンにpingを実行しようとしていますが、「接続タイムアウト」が発生します

ホスト

[windows]
192.168.1.13

group_vars/windows.yaml

ansible_user: raja
ansible_password: myPassword
ansible_port: 5986
ansible_connection: winrm
ansible_winrm_server_cert_validation: ignore

そして私が走っている間:ansible windows -vvv -i hosts -m win_ping

Using /etc/ansible/ansible.cfg as config file
<192.168.1.13> ESTABLISH WINRM CONNECTION FOR USER: raja on PORT 5986 TO 192.168.1.13
192.168.1.13 | UNREACHABLE! => {
"changed": false,
"msg": "ssl: HTTPSConnectionPool(Host='192.168.1.13', port=5986): Max retries exceeded with url: /wsman (Caused by ConnectTimeoutError(<requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x7fcb12024a90>, 'Connection to 192.168.1.13 timed out. (connect timeout=30)'))",
"unreachable": true
}

ただし、ping 192.168.1.13を使用してそのWindowsマシンにpingを実行できます。

6
rajagopalx

PowerShellリモート管理用にWindowsマシンを準備する必要があります。そうしないと、ansibleはそれに接続できません。ほとんどの機能を動作させるには、少なくとも PowerShell 3.0がインストールされている (Windows 7SP1またはWindowsServer 2008 SP1以降のバージョンでのみサポートされています)が必要です。また、 このスクリプト を実行する必要があります。 =、これはWinRMを有効にするだけでなく、接続が機能するために必要ないくつかの証明書をインストールします。

ConfigureRemotingForAnsible.ps1ファイルをダウンロードすると、コマンドラインから次のコマンドが実行されます。

powershell.exe-ファイルConfigureRemotingForAnsible.ps1

13
SztupY