tec*_*raf 17 ansible ansible-2.x ansible-inventory
我正在尝试使用除我登录控制计算机之外的帐户对服务器运行Ansible playbook.我尝试ansible_user根据Inventory上的文档在库存文件中指定一个:
[srv1]
192.168.1.146 ansible_connection=ssh ansible_user=user1
Run Code Online (Sandbox Code Playgroud)
然而Ansible调用ansible-playbook -i inventory playbook.yml -vvvv打印以下内容:
GATHERING FACTS ***************************************************************
<192.168.1.146> ESTABLISH CONNECTION FOR USER: techraf
Run Code Online (Sandbox Code Playgroud)
对我remote_user有用的是在剧本中加入论点:
- hosts: srv1
remote_user: user1
Run Code Online (Sandbox Code Playgroud)
现在,相同的Ansible命令连接为user1:
GATHERING FACTS ***************************************************************
<192.168.1.146> ESTABLISH CONNECTION FOR USER: user1
Run Code Online (Sandbox Code Playgroud)
同时添加remote_user变量ansible.cfg使Ansible使用目标用户而不是登录用户.
是ansible_user库存文件和remote_user剧本/ ansible.cfg用于不同目的?
什么是ansible_user干什么用的?或者为什么Ansible没有观察清单中的设置?
nit*_*one 18
您可能遇到了一个常见问题:已发布的ansible文档适用于开发版本(目前为2.0),我们不会保留旧版本.这是一个很大的争论点......假设您使用的是2.0之前的版本,那么您需要的库存var名称就是ansible_ssh_user.ansible_user在2.0中工作(就像ansible_ssh_user- 它得到别名).
小智 7
我通常添加我的远程用户名,/etc/ansible/ansible.cfg如下所示:
remote_user = MY_REMOTE_USERNAME
Run Code Online (Sandbox Code Playgroud)
这样就不需要在清单文件中为每个主机条目配置 ansible_user。
| 归档时间: |
|
| 查看次数: |
28154 次 |
| 最近记录: |