2

根据http://docs.ansible.com/ansible/intro_installation.html

运行 env-setup 脚本后,您将从结帐中运行,默认清单文件将是 /etc/ansible/hosts。

我需要创建一个/etc/ansible/hosts文件吗?

在此下方有一个警告:

注意 ANSIBLE_INVENTORY 从 1.9 开始可用,并替换了已弃用的 > ANSIBLE_HOSTS

那么,我应该使用主机文件的替代品吗?

4

3 回答 3

3

我需要创建一个/etc/ansible/hosts文件吗?

从技术上讲,此路径中的此文件不是 Ansible 运行所必需的。

清单文件,因为它被称为,是必需的,但它可以放在文件系统的其他地方,并且是在命令行 ( -i)、ansible.cfg文件中(在您的主目录或当前目录中)或环境变量 ( ANSIBLE_INVENTORY) 中引用的路径。

来自 OS X 上 Homebrew 的 Ansible 将文件放入/usr/local/etc/ansible以允许普通用户修改文件,而无需在/etc分支下授予帐户写入权限。

你甚至可以使用一个未记录的技巧,它允许 Ansible 针对临时创建的服务器列表运行。

注意 ANSIBLE_INVENTORY 从 1.9 开始可用,并替代了已弃用的 ANSIBLE_HOSTS

那么,我应该使用主机文件的替代品吗?

此通知表示指向清单文件的环境变量的名称。它不是“ hosts 文件的替代品”,它是ANSIBLE_HOSTS 变量的替代品

源代码中有一条注释表明更改的原因是混淆了命名。

Ansible 社区开始将包含主机和组定义的文件称为“主机文件”,但由于它与系统主机队列具有不同的结构,因此实施了一个新名称“库存”。仍然存在一些引用(如默认文件名)。

于 2016-08-10T04:39:47.073 回答
1

是的,您需要创建 /etc/ansible/hosts 文件。

如果您在其他任何地方创建文件,您可以使用ANSIBLE_HOSTS或者-i在调用 ansible 时使用开关。

于 2016-08-09T13:48:01.780 回答
0

是的,您需要手动创建主机文件。
/etc/ansible/hosts是默认的。
您可以在任何您喜欢的地方创建文件并使用ANSIBLE_HOSTS环境变量指向您的文件。
此外,您可能想要使用ansible.cfg文件并在那里设置主机文件的路径。

于 2016-08-09T12:22:30.233 回答