我有这个已知的问题.所以我尝试修复它,但我没有看到我在哪里创建我的ansible.cfg(或它已经存在)?我在我的家庭目录中尝试过,但它仍然无法正常工作.
sudo vi ~/.ansible.cfg
Run Code Online (Sandbox Code Playgroud)
我读了很多关于/ etc/ansible的内容,但在我的系统上却没有.我在Mac El Capitan.我用安装安装了ansible pip.
ansible --version
ansible 1.9.4
configured module search path = None
Run Code Online (Sandbox Code Playgroud)
udo*_*dan 15
来自文档:
可以在配置文件中进行更改并使用,该文件将按以下顺序处理:
- ANSIBLE_CONFIG(环境变量)
- ansible.cfg(在当前目录中)
- .ansible.cfg(在主目录中)
- /etc/ansible/ansible.cfg
我不确定这是否100%适用于1.9.4.Ansible在编写文档时非常糟糕.(=只有一个版本,并不总是提到引入或更改功能的版本)
但是我确信除了~/.ansible.cfg1.x 之外的所有东西都是我之前尝试过的.
因此,如果您已创建~/.ansible.cfg并且未使用它,请检查是否ANSIBLE_CONFIG已设置环境var ,或者您调用ansible的目录中是否有一个文件.找到的第一个将被使用.按以下顺序处理并不意味着它们将按该顺序合并.第一个获胜.
我读了很多关于/ etc/ansible的内容,但在我的系统上却没有.
是的,这取决于Ansible的安装方式.如果它不在那里你可以创建它但如果你不需要它,就不需要创建它.我实际上删除了我的,因为我觉得没用.
小智 11
对于最新版本 (2.7.6),如果您通过 pip 安装,您将不会在 /etc 中获得 ansible 文件夹。所以这就是你做 ansible --version 时得到的
ansible --version
ansible 2.7.6
config file = None
configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python2.7/site-packages/ansible
executable location = /usr/bin/ansible
Run Code Online (Sandbox Code Playgroud)
但是一旦您在 /etc 下手动创建目录作为 ansible 并添加 ansible.cfg 文件,ansible 就会自动检测到它。但是您必须像 hosts file..etc 一样手动配置其余部分。所以在这之后我们得到
ansible --version
ansible 2.7.6
config file = /etc/ansible/ansible.cfg
configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python2.7/site-packages/ansible
executable location = /usr/bin/ansible
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
21659 次 |
| 最近记录: |