30.8. Ansible を使用して IdM に DNS グローバルフォワーダーを存在させる手順
以下の手順に従って、Ansible Playbook を使用して、IdM に DNS グローバルフォワーダーを追加します。以下の例では、IdM 管理者は、ポート 53
にインターネットプロトコル (IP) v4 アドレスが 7.7.9.9
、IPv6 アドレスが 2001:db8::1:0
で指定されている DNS サーバーに、DNS グローバルフォワーダーが配置されるようにします。
前提条件
次の要件を満たすように Ansible コントロールノードを設定した。
- Ansible バージョン 2.14 以降を使用している。
-
Ansible コントローラーに
ansible-freeipa
パッケージがインストールされている。 - この例では、~/MyPlaybooks/ ディレクトリーに、IdM サーバーの完全修飾ドメイン名 (FQDN) を使用して Ansible インベントリーファイル を作成したことを前提としている。
-
この例では、secret.yml Ansible vault に
ipaadmin_password
が保存されていることを前提としています。
-
ターゲットノード (
ansible-freeipa
モジュールが実行されるノード) が、IdM クライアント、サーバー、またはレプリカとして IdM ドメインに含まれている。 - IdM 管理者パスワードを把握している。
手順
/usr/share/doc/ansible-freeipa/playbooks/dnsconfig
ディレクトリーに移動します。$ cd /usr/share/doc/ansible-freeipa/playbooks/dnsconfig
インベントリーファイルを開き、設定する IdM サーバーが
[ipaserver]
セクションに記載されていることを確認します。たとえば、Ansible に対してserver.idm.example.com
を設定するように指示するには、次のコマンドを実行します。[ipaserver] server.idm.example.com
Ansible Playbook ファイル (
forwarders-absent.yml
) のコピーを作成します。以下に例を示します。$ cp forwarders-absent.yml ensure-presence-of-a-global-forwarder.yml
-
ensure-presence-of-a-global-forwarder.yml
ファイルを開いて編集します。 以下の変数を設定してファイルを調整します。
-
Playbook の
name
変数は、IdM DNS にグローバルフォワーダーを追加する Playbook
の設定に変更します。 -
tasks
セクションで、タスクのname
をEnsure the presence of a DNS global forwarder to 7.7.9.9 and 2001:db8::1:0 on port 53
に変更します。 ipadnsconfig
のforwarders
セクションで以下を行います。-
最初の
ip_address
の値は、グローバルフォワーダーの IPv4 アドレス (7.7.9.9
) に変更します。 -
2 番目の
ip_address
の値は、グローバルフォワーダーの IPv6 アドレス (2001:db8::1:0
) に変更します。 -
port
の値が53
に設定されていることを確認します。
-
最初の
state
をpresent
に変更します。今回の例で使用するように変更した Ansible Playbook ファイル:
--- - name: Playbook to ensure the presence of a global forwarder in IdM DNS hosts: ipaserver vars_files: - /home/user_name/MyPlaybooks/secret.yml tasks: - name: Ensure the presence of a DNS global forwarder to 7.7.9.9 and 2001:db8::1:0 on port 53 ipadnsconfig: forwarders: - ip_address: 7.7.9.9 - ip_address: 2001:db8::1:0 port: 53 state: present
-
Playbook の
- ファイルを保存します。
Playbook を実行します。
$ ansible-playbook --vault-password-file=password_file -v -i inventory.file ensure-presence-of-a-global-forwarder.yml
関連情報
-
/usr/share/doc/ansible-freeipa/
ディレクトリーのREADME-dnsconfig.md
ファイル