生产(库存文件):
#main ansible_host=54.293.2785.210 ansible_port=22 ansible_ssh_user=ubuntu
54.293.2785.210 ansible_ssh_user=ubuntu
运行ad-hoc命令:ansible all -i production -a "hostname"
正常工作!
但是当我取消注释第一行并评论第二行时:
ansible main -i production -a "hostname" -vvvv
给出以下错误:
main | FAILED => SSH Error: ssh: Could not resolve hostname main: Name or service not known
It is sometimes useful to re-run the command using -vvvv, which prints SSH debug output to help diagnose the issue.
为什么这不起作用?
答案 0 :(得分:4)
ansible_ssh_host
是new (>=2.0) syntax。
之前只是ansible_ssh_host
,但在最新版本的Ansible(> = 2.0)中已弃用此内容:
Ansible 2.0已将ansible_ssh_user,ansible_ssh_host和ansible_ssh_port中的“ssh”弃用为ansible_user,ansible_host和ansible_port。如果您使用2.0之前的Ansible版本,则应继续使用较旧的样式变量(ansible_ssh_ *)。在较旧版本的Ansible中,这些较短的变量在没有警告的情况下被忽略。
如果您使用的是早期版本的Ansible,那么$url ="http://rates.fxcm.com/RatesXML3";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, 0);
$data = curl_exec($ch);
curl_close($ch);
应该适合您。