Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
对ansible使用其他命令而不是ssh_Ssh_Ansible - Fatal编程技术网

对ansible使用其他命令而不是ssh

对ansible使用其他命令而不是ssh,ssh,ansible,Ssh,Ansible,我有一个ansible配置,我知道它可以在本地机器上运行。然而,我现在正试图在我公司的机器上设置它,这些机器使用类似于ssh的包装器命令(让我们称之为“myssh”) 例如,访问这些机器,而不是编写 ssh myuser@123.123.123.123 你写 myssh myuser@123.123.123.123 最终调用ssh,以及其他一些东西 我的问题是,有没有办法交换ansible用于访问计算机的命令?您可以创建一个用于存档的命令。看看ssh插件,它看起来就像在中替换ssh\u cm

我有一个ansible配置,我知道它可以在本地机器上运行。然而,我现在正试图在我公司的机器上设置它,这些机器使用类似于ssh的包装器命令(让我们称之为“myssh”)

例如,访问这些机器,而不是编写

ssh myuser@123.123.123.123
你写

myssh myuser@123.123.123.123
最终调用ssh,以及其他一些东西

我的问题是,有没有办法交换ansible用于访问计算机的命令?

您可以创建一个用于存档的命令。看看ssh插件,它看起来就像在中替换
ssh\u cmd
一样简单。还可以在中指定
myssh

请参见放置修改文件的位置。除此之外,您还可以指定自定义位置,并在中告知Ansible

最后,在
ansible.cfg
中再次设置新插件:

transport = myssh

PS:我以前从未做过这样的事。这只是文档中的信息。

酷。文件中完全没有提到。但是当我尝试这个方法时,我得到了:“FAILED=>不支持的连接类型:myssh”。“传输”命令是否可能只支持已知的传输命令?我会继续查的我自己还没做过。但据我所知,传输“name”将是插件的
transport
方法中返回的内容,它位于ssh插件的第69行。如果该模块被放入正确的文件夹或配置为通过ansible.cfg找到,我认为它应该可以工作。事实上,我最终让它工作了。你说的一切都是正确的,只是我在/etc/ansible/plugins中定制插件时遇到了问题。它说我缺少一些python中的Ansible包。我最终在/usr/local/ceral/ansible/1.9.1_1/libexec/lib/python2.7/site-packages/ansible/runner/connection_plugins中找到了真正的插件目录。我不得不改变一些事情,使它与mysh程序的工作,但后来它的工作!谢谢