16.7. 既存の IdM サーバーに IdM DNS の場所が割り当てられていることの確認
Ansible Playbook の ipaserver
ansible-freeipa
モジュールを使用して、既存の Identity Management (IdM) サーバーに特定の IdM DNS の場所が割り当てられていることを確認します。
ipaserver
Ansible モジュールは、IdM サーバーをインストールしないことに注意してください。
前提条件
-
IdM
admin
のパスワードを把握している。 - IdM DNS の場所が存在します。サンプルの場所は germany です。
-
サーバーへの
root
アクセス権限がある。サンプルサーバーは server123.idm.example.com である。 次の要件を満たすように Ansible コントロールノードを設定した。
- Ansible バージョン 2.13 以降を使用している。
-
ansible-freeipa
パッケージをインストールしている。 - この例では、~/MyPlaybooks/ ディレクトリーに、IdM サーバーの完全修飾ドメイン名 (FQDN) を使用して Ansible インベントリーファイル を作成したことを前提としている。
-
この例では、secret.yml Ansible Vault に
ipaadmin_password
が保存されていることを前提としています。
ターゲットノード (
ansible-freeipa
モジュールが実行されるノード) が、IdM クライアント、サーバー、またはレプリカとして IdM ドメインに含まれている。-
制御ノードからインベントリーファイルに定義した IdM サーバーへの
SSH
接続が正常に動作している。
-
制御ノードからインベントリーファイルに定義した IdM サーバーへの
手順
~/MyPlaybooks/ ディレクトリーに移動します。
cd ~/MyPlaybooks/
$ cd ~/MyPlaybooks/
Copy to Clipboard Copied! /usr/share/doc/ansible-freeipa/playbooks/server/
ディレクトリーにあるserver-location.yml
Ansible Playbook ファイルをコピーします。cp /usr/share/doc/ansible-freeipa/playbooks/server/server-location.yml server-location-copy.yml
$ cp /usr/share/doc/ansible-freeipa/playbooks/server/server-location.yml server-location-copy.yml
Copy to Clipboard Copied! -
server-location-copy.yml
ファイルを開いて編集します。 ipaserver
タスクセクションで次の変数を設定してファイルを調整し、ファイルを保存します。-
ipaadmin_password
変数は IdMadmin
のパスワードに設定します。 -
name
変数を server123.idm.example.com に設定します。 -
location
変数を germany に設定します。
以下は、今回の例で使用するように変更した Ansible Playbook ファイルです。
--- - name: Server enabled example hosts: ipaserver vars_files: - /home/user_name/MyPlaybooks/secret.yml tasks: - name: Ensure server server123.idm.example.com with location “germany” is present ipaserver: ipaadmin_password: "{{ ipaadmin_password }}" name: server123.idm.example.com location: germany
--- - name: Server enabled example hosts: ipaserver vars_files: - /home/user_name/MyPlaybooks/secret.yml tasks: - name: Ensure server server123.idm.example.com with location “germany” is present ipaserver: ipaadmin_password: "{{ ipaadmin_password }}" name: server123.idm.example.com location: germany
Copy to Clipboard Copied! -
Ansible Playbook を実行し、Playbook ファイルとインベントリーファイルを指定します。
ansible-playbook --vault-password-file=password_file -v -i inventory server-location-copy.yml
$ ansible-playbook --vault-password-file=password_file -v -i inventory server-location-copy.yml
Copy to Clipboard Copied! SSH
を使用して、root
として server123.idm.example.com に接続します。ssh root@server123.idm.example.com
ssh root@server123.idm.example.com
Copy to Clipboard Copied! 更新を直ちに有効にするには、サーバー上の
指定された
サービスを再起動します。[root@server123.idm.example.com ~]# systemctl restart named
[root@server123.idm.example.com ~]# systemctl restart named
Copy to Clipboard Copied!