根据http://docs.ansible.com/ansible/intro_installation.html
运行env-setup脚本后,您将从checkout运行,默认的库存文件将是/ etc / ansible / hosts。
我是否需要创建/etc/ansible/hosts
文件?
就在这下面有一个警告:
请注意 ANSIBLE_INVENTORY从1.9开始可用,并替换已弃用的> ANSIBLE_HOSTS
那么,我应该使用hosts文件的替代方法吗?
答案 0 :(得分:3)
我是否需要创建
/etc/ansible/hosts
文件?
从技术上讲,此路径中的此文件不是Ansible运行所必需的。
调用inventory file是必需的,但它可以放在文件系统的其他位置,并在-i
文件的命令行(ansible.cfg
)中引用路径(在您的主目录或当前目录中)或环境变量(ANSIBLE_INVENTORY
)。
在OS X上来自Homebrew的Ansible将文件放在/usr/local/etc/ansible
中,以允许普通用户修改文件,而无需在/etc
分支下提供帐户写入权限。
您甚至可以使用an undocumented trick来允许Ansible针对临时创建的服务器列表运行。
注意ANSIBLE_INVENTORY从1.9开始可用,并替换已弃用的ANSIBLE_HOSTS
那么,我应该使用hosts文件的替代方法吗?
此通知表示指向库存文件的环境变量的名称。它不是" 替代主机文件",它是替代ANSIBLE_HOSTS变量。
有a comment in the source表示更改的原因令人困惑。
Ansible社区开始将包含主机和组定义的文件称为" hosts文件",但由于它与系统主机队列具有不同的结构,因此新名称"库存"实施了。还存在一些引用(如默认文件名)。
答案 1 :(得分:1)
是, 您需要创建/ etc / ansible / hosts文件。
如果您在其他任何地方创建文件,则可以使用ANSIBLE_HOSTS
,也可以在调用ansible时使用-i
开关。
答案 2 :(得分:0)
是的,您需要手动创建主机文件
/etc/ansible/hosts
是默认值
您可以在任何地方创建文件,并使用ANSIBLE_HOSTS
环境变量指向您的文件
您也可以使用ansible.cfg
文件并在那里设置主机文件的路径。