刀子ssh命令-X user:如何根据节点平台自动指定用户
我有CentOS和UbuntuChef节点,由于OS部署过程,它们之间没有通用的ssh用户名(但它们接受通用的ssh用户私钥) 因此,要对它们运行ssh,我必须为它们指定不同的用户:刀子ssh命令-X user:如何根据节点平台自动指定用户,ssh,chef-infra,knife,Ssh,Chef Infra,Knife,我有CentOS和UbuntuChef节点,由于OS部署过程,它们之间没有通用的ssh用户名(但它们接受通用的ssh用户私钥) 因此,要对它们运行ssh,我必须为它们指定不同的用户: knife ssh "platform:centos" "command" -x userX knife ssh "platform:ubuntu" "command" -x userY 如何让knife根据节点平台使用合适的ssh用户名,如下所示: knife ssh name:* "command" -x '
knife ssh "platform:centos" "command" -x userX
knife ssh "platform:ubuntu" "command" -x userY
如何让knife根据节点平台使用合适的ssh用户名,如下所示:
knife ssh name:* "command" -x '${node['platform']=='centos'?'userX':'userY'}'
为此,您需要比
ssh
更复杂的东西。查看脚本化SSH客户端,如Fabric、Invoke和Capistrano。或者您可以使用一个较低级别的库,比如Ruby的NetSSH(这就是shove ssh
的基础)