bootstrap windows winrm因网络错误而失败

use*_*849 4 windows bootstrapping chef-infra winrm knife

我正在尝试使用knife命令引导Windows winrm.

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

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

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

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

sud*_*ode 8

检查一下你可以telnet remote_host 5985.这应该打开一个愚蠢的会话,您可以输入"退出".如果没有,请再次查看如何在远程主机上启用winrm和防火墙.

我在没有启用防火墙的 Windows VM 运行winrm bootstrap ,如下所示:

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

启用winrm:

winrm quickconfig -q
Run Code Online (Sandbox Code Playgroud)

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

sc config mpssvc start= demand
sc start mpssvc
Run Code Online (Sandbox Code Playgroud)

根据厨师的建议配置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"}
Run Code Online (Sandbox Code Playgroud)

再次停止防火墙服务:

sc stop mpssvc
Run Code Online (Sandbox Code Playgroud)

...或将其配置为允许来自工作站的winrm连接.

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

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

telnet remote_host 5985
Run Code Online (Sandbox Code Playgroud)

(如果连接成功,将打开一个空白的telnet会话.您可以输入"quit"退出它.)

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

knife winrm -m remote_host -x remote_user -P remote_password 'dir c:\'
Run Code Online (Sandbox Code Playgroud)

引导节点

knife bootstrap windows winrm remote_host -x remote_user -P remote_password
Run Code Online (Sandbox Code Playgroud)

既然您要求从可信和/或官方来源获得答案,那么在确定如何让winrm bootstrap工作时,我发现这些参考资料是有用的: