4

我正在尝试使用刀命令引导 Windows winrm。

我已启用 tcp 端口 5985。但我仍然收到以下错误:

错误:网络错误:连接被拒绝 - connect(2) (http://:5985)

我也可以通过提供用户名和密码来远程登录机器

我无法解决。有没有人遇到过这个问题并找到了解决方案?

4

2 回答 2

8

检查您是否可以telnet remote_host 5985。这应该会打开一个哑会话,您可以在其中输入“退出”。如果没有,请再次查看您是如何在远程主机上启用 winrm 和防火墙的。

我让 winrm 引导程序在没有启用防火墙的 Windows 虚拟机上工作,如下所示:

您要引导的远程 Windows 机器上的所有以下内容...

启用winrm:

winrm quickconfig -q

启用并启动防火墙服务(这样我们就可以成功配置 winrm):

sc config mpssvc start= demand
sc start mpssvc

根据厨师的建议配置 winrm:

winrm set winrm/config/winrs @{MaxMemoryPerShellMB="300"}
winrm set winrm/config @{MaxTimeoutms="1800000"}
winrm set winrm/config/service @{AllowUnencrypted="true"}
winrm set winrm/config/service/auth @{Basic="true"}

再次停止防火墙服务:

sc stop mpssvc

...或将其配置为允许从工作站进行 winrm 连接。

现在,在您的工作站上,验证设置:

验证远程主机是否正在侦听默认的 winrm 端口

telnet remote_host 5985

(如果连接成功,会打开一个空白的telnet会话,可以输入“quit”退出。)

可选地验证刀 winrm 可以连接到远程主机(例如列出 c:\ 目录)

knife winrm -m remote_host -x remote_user -P remote_password 'dir c:\'

引导节点

knife bootstrap windows winrm remote_host -x remote_user -P remote_password

由于您要求从可靠和/或官方来源获得答案,因此我发现在弄清楚如何让 winrm 引导程序工作时有用的参考资料:

于 2014-01-29T13:42:29.997 回答
0

我遇到了类似的问题。其中一个原因可能是您的刀窗 gem 没有安装在预期的位置。

刀窗解析目标主机名。如果它没有正确安装winrm刀无法解析目标名称。所以要克服这个安装刀窗如下

要使用 RubyGems 安装刀 Windows 插件,请运行以下命令:

    $ /opt/chef/embedded/bin/gem install knife-windows

如果安装正确,您应该能够在 /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/ 找到刀窗

于 2014-06-23T05:35:00.510 回答