Chef infra 如何在使用ssh时跳过无法访问的节点

Chef infra 如何在使用ssh时跳过无法访问的节点,chef-infra,knife,Chef Infra,Knife,我正在尝试使用ssh以以下方式在多个节点上运行shell命令: knife ssh -V "role:web" --ssh-gateway ec2-user@aws_ssh_gateway \ --ssh-user ubuntu \ "sudo chef-client" 当我的所有角色为“web”的实例都启动时,它可以正常工作,但当我只关闭一个实例时,此命令将挂起,并显示以下消息: WARNING: Failed to connect to -- Ne

我正在尝试使用
ssh
以以下方式在多个节点上运行shell命令:

knife ssh -V "role:web" --ssh-gateway ec2-user@aws_ssh_gateway \
          --ssh-user ubuntu \
          "sudo chef-client"
当我的所有角色为“web”的实例都启动时,它可以正常工作,但当我只关闭一个实例时,此命令将挂起,并显示以下消息:

WARNING: Failed to connect to  -- Net::SSH::Disconnect: connection closed by remote host
有没有一种方法可以告诉刀子跳过无法到达的节点,继续使用已启动的节点


更新:刀子默认情况下应跳过无法访问的节点,但不会发生这种情况。可能的原因是SSH网关。正在调查。

从Chef 11开始,刀子只会自动警告和跳过无法访问的节点。

它对我来说就像预期的那样工作,跳过无法访问的节点,所以我想说,这个问题在你的环境中几乎是一个问题。由于您使用的是SSH网关,我建议您首先单独检查到网关的连接。另外(尽管不相关),如果您使用此GW访问VPC上的私有子网,请允许我建议您在网关上安装一个OpenVPN服务器,并使用它——在我看来,这更简单、更可靠。@cbl gateway就可以了。如果查询返回的所有节点都运行正常,那么只有当其中一个节点出现故障时才会出现问题。谢谢你关于OpenVPN的提示,我想我会走这条路。请不要忘记将答案标记为正确的!:)适用于“刀剑ssh”,但不适用于厨师13上的“刀剑winrm”