91.6. 使用 Ansible playbook 确保 IdM DNS 全局配置中设置了 forward first 策略
按照以下流程,使用 Ansible playbook 确保 IdM DNS 中的全局转发策略被设置为 forward first。
如果您使用 forward first DNS 转发策略,DNS 查询将转发到配置的转发器。如果因为服务器错误或超时查询失败,BIND 会使用 Internet 上的服务器回退到递归解析。forward first 策略是默认策略。它适用于流量优化。
先决条件
您已配置了 Ansible 控制节点以满足以下要求:
- 您使用 Ansible 版本 2.14 或更高版本。
-
您已在 Ansible 控制器上安装了
ansible-freeipa
软件包。 - 示例假定在 ~/MyPlaybooks/ 目录中,您已创建了一个具有 IdM 服务器的完全限定域名(FQDN)的 Ansible 清单文件。
-
示例假定 secret.yml Ansible 库存储了
ipaadmin_password
。
-
目标节点(这是执行
ansible-freeipa
模块的节点)是 IdM 域的一部分,作为 IdM 客户端、服务器或副本的一部分。 - 您知道 IdM 管理员密码。
- 您的 IdM 环境包含一个集成的 DNS 服务器。
流程
导航到
/usr/share/doc/ansible-freeipa/playbooks/dnsconfig
目录:$ cd /usr/share/doc/ansible-freeipa/playbooks/dnsconfig
打开清单文件,并确保
[ipaserver]
部分中列出了您要配置的 IdM 服务器。例如,要指示 Ansible 配置 server.idm.example.com,请输入:[ipaserver] server.idm.example.com
复制 set-configuration.yml Ansible playbook 文件。例如:
$ cp set-configuration.yml set-forward-policy-to-first.yml
- 打开 set-forward-policy-to-first.yml 文件进行编辑。
通过在
ipadnsconfig
task 部分中设置以下变量来调整文件:-
将
ipaadmin_password
变量设置为 IdM 管理员密码。 将
forward_policy
变量设置为 first。删除原始 playbook 的其他所有行。这是当前示例修改的 Ansible playbook 文件:
--- - name: Playbook to set global forwarding policy to first hosts: ipaserver become: true tasks: - name: Set global forwarding policy to first. ipadnsconfig: ipaadmin_password: "{{ ipaadmin_password }}" forward_policy: first
-
将
- 保存该文件。
运行 playbook:
$ ansible-playbook --vault-password-file=password_file -v -i inventory.file set-forward-policy-to-first.yml
其它资源
- 请参阅 IdM 中的 DNS 转发策略。
-
请参阅
/usr/share/doc/ansible-freeipa/
目录中的README-dnsconfig.md
文件。 -
如需更多 playbook 示例,请参阅
/usr/share/doc/ansible-freeipa/playbooks/dnsconfig
目录。