搜索

6.12. 使用 Ansible 确保 DNS 转发区域 在 IdM 中有多个转发器

download PDF

按照以下流程,使用 Ansible playbook 确保 IdM 中的 DNS Forward Zone 有多个转发器。在以下示例中,IdM 管理员确保 example.com 的 DNS 转发区转发到 8.8.8.84.4.4.4

先决条件

  • 您已配置了 Ansible 控制节点以满足以下要求:

    • 您使用 Ansible 版本 2.14 或更高版本。
    • 您已在 Ansible 控制器上安装了 ansible-freeipa 软件包。
    • 示例假定在 ~/MyPlaybooks/ 目录中,您已创建了带有 IdM 服务器的完全限定域名(FQDN)的 Ansible 清单文件
    • 示例假定 secret.yml Ansible vault 存储了 ipaadmin_password
  • 目标节点(这是执行 ansible-freeipa 模块的节点)是 IdM 域的一部分,来作为 IdM 客户端、服务器或副本。
  • 您知道 IdM 管理员密码。

步骤

  1. 进入 /usr/share/doc/ansible-freeipa/playbooks/dnsconfig 目录:

    $ cd /usr/share/doc/ansible-freeipa/playbooks/dnsconfig
  2. 打开清单文件,并确保 [ipaserver] 部分中列出了您要配置的 IdM 服务器。例如,要指示 Ansible 配置 server.idm.example.com,请输入:

    [ipaserver]
    server.idm.example.com
  3. 复制 forwarders-absent.yml Ansible playbook 文件。例如:

    $ cp forwarders-absent.yml ensure-presence-multiple-forwarders.yml
  4. 打开 ensure-presence-multiple-forwarders.yml 文件进行编辑。
  5. 通过设置以下变量来调整文件:

    1. 将 playbook 的 name 变量更改为 Playbook,以确保 IdM DNS 中的 dnsforwardzone 中存在多个转发器
    2. tasks 项中,把任务的 name 改为 Ensure presence of 8.8.8.8 and 4.4.4.4 forwarders in dnsforwardzone for example.com
    3. tasks 部分中,将 ipadnsconfig 标题更改为 ipadnsforwardzone
    4. ipadnsforwardzone 部分:

      1. 添加 ipaadmin_password 变量,并将其设置为您的 IdM 管理员密码。
      2. 添加 name 变量,并将它设置为 example.com
      3. forwarders 部分:

        1. 删除 ip_addressport 行。
        2. 添加您要保证的 DNS 服务器的 IP 地址存在,在前面添加一个短划线:

          - 8.8.8.8
          - 4.4.4.4
      4. 将 state 变量更改为 present。

      对于当前示例为修改过的 Ansible playbook 文件:

    ---
    - name: name: Playbook to ensure the presence of multiple forwarders in a dnsforwardzone in IdM DNS
      hosts: ipaserver
    
      vars_files:
      - /home/user_name/MyPlaybooks/secret.yml
      tasks:
      - name: Ensure presence of 8.8.8.8 and 4.4.4.4 forwarders in dnsforwardzone for example.com
      ipadnsforwardzone:
          ipaadmin_password: "{{ ipaadmin_password }}"
         name: example.com
          forwarders:
              - 8.8.8.8
              - 4.4.4.4
          state: present
  6. 保存这个文件。
  7. 运行 playbook:

    $ ansible-playbook --vault-password-file=password_file -v -i inventory.file ensure-presence-multiple-forwarders.yml

其他资源

  • 请参阅 /usr/share/doc/ansible-freeipa/ 目录中的 README-dnsforwardzone.md 文件。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.