我正在部署Windows 2012 R2 VSI,需要能够使用Ansible进行管理。
我正在使用此Ansible示例脚本ConfigureRemotingForAnsible.ps1,尽管已重命名并将脚本托管在SL Object存储上。我在订单中指定了一个安装后脚本URL,包括https
(应该在下载后导致脚本执行)。
Windows VSI准备就绪后,我尝试运行win-ping
,如下所示:
- name: ad1 ready
gather_facts: false
tags: setup
hosts: ad1
tasks:
- name: ping the windows vsi
win_ping:
输出失败:
fatal: [169.55.189.16]: UNREACHABLE! => {"changed": false, "msg": "ssl: HTTPSConnectionPool(host='169.55.189.16', port=5986): Max retries exceeded with url: /wsman (Caused by NewConnectionError('<requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x107c0b310>: Failed to establish a new connection: [Errno 61] Connection refused',))", "unreachable": true}
如果我连接到系统并查看c:\PostInstall
我看到我的脚本已下载。如果我然后打开PowerShell并运行脚本,我就可以成功运行上面的win-ping
。
这告诉我脚本已经干净地下载并且显然是正确的,但是尽管postinstall URL中有https
, 仍未执行
我找不到关于windows安装后脚本要求的任何文档,但我想知道问题是我是否使用PowerShell脚本,并且后期配置过程试图在标准中运行它CMD shell。
有没有人对可能出现的问题有任何想法或想法?
答案 0 :(得分:1)
它应该成功地与powershell一起使用,您应该能够在“C:\ postInstallScript.log”中看到powershell执行的日志,或许它包含有关错误的更多信息。
无论如何,如果您仍然遇到此问题,我建议您在Softlayer中打开带有“硬件问题”主题的票证,因为问题可能是由于Windows机器中的限制,不允许执行脚本。 / p>
此致
答案 1 :(得分:0)
我认为PowerShell作为配置脚本的问题是PowerShell的默认配置需要执行签名的PowerShell脚本(没有定义参数)。如果PowerShell脚本未签名,则必须在服务器上更改执行策略,或者传递给PowerShell解释器的标志以允许执行。