29.4. Ansible を使用した IdM DNS でのプライマリーゾーンの作成
Ansible Playbook を使用して、プライマリー DNS ゾーンが存在する状態にするには、次の手順を実行します。以下の手順で使用する例では、zone.idm.example.com DNS ゾーンが存在するようにします。
前提条件
次の要件を満たすように Ansible コントロールノードを設定している。
- Ansible バージョン 2.15 以降を使用している。
-
freeipa.ansible_freeipaコレクションがインストールされている。 - ~/MyPlaybooks/ ディレクトリーに、IdM サーバーの完全修飾ドメイン名 (FQDN) を使用して Ansible インベントリーファイル が作成されている (この例の場合)。
-
secret.yml Ansible vault に
ipaadmin_passwordが保存されており、secret.yml ファイルを保護するパスワードを格納しているファイルにアクセスできる (この例の場合)。
-
ターゲットノード (
freeipa.ansible_freeipaモジュールが実行されるノード) が、IdM クライアント、サーバー、またはレプリカとして IdM ドメインに含まれている。 - IdM 管理者パスワードを把握している。
手順
/usr/share/ansible/collections/ansible_collections/freeipa/ansible_freeipa/playbooks/dnszoneディレクトリーに移動します。$ cd /usr/share/ansible/collections/ansible_collections/freeipa/ansible_freeipa/playbooks/dnszoneインベントリーファイルを開き、設定する IdM サーバーが
[ipaserver]セクションに記載されていることを確認します。たとえば、Ansible に対して server.idm.example.com を設定するように指示するには、次のコマンドを実行します。[ipaserver] server.idm.example.comAnsible Playbook ファイルのコピー (dnszone-present.yml) を作成します。以下に例を示します。
$ cp dnszone-present.yml dnszone-present-copy.yml- dnszone-present-copy.yml ファイルを編集のために開きます。
ipadnszoneタスクセクションに以下の変数を設定してファイルを調整します。-
ipaadmin_password変数は IdM 管理者パスワードに設定します。 zone_name変数は zone.idm.example.com に設定します。以下は、今回の例で使用するように変更した Ansible Playbook ファイルです。
--- - name: Ensure dnszone present hosts: ipaserver become: true tasks: - name: Ensure zone is present. ipadnszone: ipaadmin_password: "{{ ipaadmin_password }}" zone_name: zone.idm.example.com state: present-
- ファイルを保存します。
Playbook を実行します。
$ ansible-playbook --vault-password-file=password_file -v -i inventory.file dnszone-present-copy.yml