karlmdavis.bind-dns
BIND DNS的Ansible角色
此角色可用于安装和管理BIND,即一个DNS服务器。与其他Ansible的BIND角色不同,这个角色允许使用Jinja模板来创建区域数据库文件,而不仅仅是复制文件而不做任何修改。这在许多情况下都很有用,尤其是在测试中。
要求
该角色支持Ansible 2.4.0.0及以后的版本,并要求在应用该角色的系统上使用Ubuntu Server 14.04或16.04。
角色变量
可以通过更改本节中列出的变量来配置此角色。有关默认值的信息,请参见defaults/main.yml。
主要配置变量是zones
列表。它指定了将由BIND服务的区域,以及用于创建区域数据库文件的源模板文件。
zones:
- {name: 'example.com', template_source: 'templates/db.example.com.j2'}
- {name: 'example.net', template_source: 'templates/db.example.net.j2'}
forwarders
变量指定了哪些服务器(如果有的话)将用于解析服务器非权威的查询。
forwarders:
- 192.0.2.1
- 203.0.113.1
zone_transfer_peers
变量指定了哪些其他DNS服务器(如果有的话)被允许对该服务器进行区域传输。应该设置为包含任何次级名称服务器,这些服务器是所包含域的。
zone_transfer_peers:
- 192.0.2.2
- 203.0.113.2
依赖关系
该角色不依赖于其他Ansible角色。
示例剧本
可以如下包含该角色:
- hosts: somebox
tasks:
- import_role:
name: karlmdavis.bind-dns
vars:
zones:
- {name: 'example.com', template_source: 'templates/db.example.com.j2'}
forwarders:
- 192.0.2.1
- 203.0.113.1
zone_transfer_peers:
- 192.0.2.2
- 203.0.113.2
许可证
作者信息
此插件由Karl M. Davis(https://justdavis.com/karl/)编写。