如何在Ansible清单中指定其他域名

时间:2016-09-19 04:48:21

标签: ansible

我正在使用Linux VM管理许多Linux机箱(在不同的域中),我发现在每个服务器上使用FQDN很烦人,因为我们的内部域名很长。

例如

[web]
serve1.part.one.of.very.long.internal.domain.name.com
anotherserver.part.one.of.very.long.internal.domain.name.com

有没有办法为库存中的服务器组指定默认域?我尝试在库存文件中添加andible_domain变量作为变量但不起作用。

1 个答案:

答案 0 :(得分:10)

默认情况下,Ansible会假设你的inventory_hostname(清单文件中第一个字符串)是你用来连接它的那个。

但是,您可以使用ansible_host(或旧版本中的ansible_ssh_host)来覆盖此内容,如果由于某些原因不是主机或域的FQDN,这将非常有用主机不在您的DNS搜索域列表中。

所以你可以这样做:

[all:vars]
host_domain=part.one.of.very.long.internal.domain.name.com
ansible_host='{{ inventory_hostname }}.{{ host_domain }}'

[web]
server1
anotherserver