未正在执行的PowerShell配置脚本

时间:2017-02-08 18:13:18

标签: windows powershell ibm-cloud-infrastructure

我正在部署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。

有没有人对可能出现的问题有任何想法或想法?

2 个答案:

答案 0 :(得分:1)

它应该成功地与powershell一起使用,您应该能够在“C:\ postInstallScript.log”中看到powershell执行的日志,或许它包含有关错误的更多信息。

无论如何,如果您仍然遇到此问题,我建议您在Softlayer中打开带有“硬件问题”主题的票证,因为问题可能是由于Windows机器中的限制,不允许执行脚本。 / p>

此致

答案 1 :(得分:0)

我认为PowerShell作为配置脚本的问题是PowerShell的默认配置需要执行签名的PowerShell脚本(没有定义参数)。如果PowerShell脚本未签名,则必须在服务器上更改执行策略,或者传递给PowerShell解释器的标志以允许执行。