16.4. Ansible を使用して IdM にトポロジー接尾辞が存在することを確認する
新しい契約を設定する前に、Ansible を使用してレプリケーションインフラストラクチャーを検証し、IdM デプロイメントに必要なトポロジーサフィックスが存在することを確認します。
Identity Management (IdM) のレプリカ合意のコンテキストでは、トポロジー接尾辞はレプリケートされるデータを保存します。IdM は、domain と ca の 2 種類のトポロジー接尾辞に対応します。それぞれの接尾辞は、個別のバックエンドである個別のレプリケーショントポロジーを表します。レプリカ合意が設定されると、同じタイプのトポロジー接尾辞を 2 つの異なるサーバーに結合します。
domain 接尾辞には、ユーザー、グループ、ポリシーに関するデータなど、ドメイン関連のすべてのデータが含まれます。ca 接尾辞には、Certificate System コンポーネントのデータが含まれます。これは認証局 (CA) がインストールされているサーバーにのみ存在します。
この例では、IdM に domain 接尾辞を存在させる方法を説明します。
前提条件
次の要件を満たすように Ansible コントロールノードを設定している。
- Ansible バージョン 2.15 以降を使用している。
-
ansible-freeipaパッケージがインストールされている。 - ~/MyPlaybooks/ ディレクトリーに、IdM サーバーの完全修飾ドメイン名 (FQDN) を使用して Ansible インベントリーファイル が作成されている (この例の場合)。
-
secret.yml Ansible vault に
ipaadmin_passwordが保存されており、secret.yml ファイルを保護するパスワードを格納しているファイルにアクセスできる (この例の場合)。
-
ターゲットノード (
freeipa.ansible_freeipaモジュールが実行されるノード) が、IdM クライアント、サーバー、またはレプリカとして IdM ドメインに含まれている。
手順
~/MyPlaybooks/ ディレクトリーに移動します。
$ cd ~/MyPlaybooks/ansible-freeipaパッケージによって提供されるverify-topologysuffix.ymlAnsible Playbook ファイルをコピーします。$ cp /usr/share/ansible/collections/ansible_collections/freeipa/ansible_freeipa/playbooks/topology/ verify-topologysuffix.yml verify-topologysuffix-copy.yml-
編集する Ansible Playbook ファイル
verify-topologysuffix-copy.ymlを開きます。 freeipa.ansible_freeipa.ipatopologysuffixセクションで次の変数を設定して、ファイルを変更します。-
ipaadmin_password変数の値が secret.yml Ansible vault ファイルで定義されていることを示します。 -
suffix変数はdomainに設定します。ca接尾辞が存在することを確認する場合は、変数をcaに設定します。 -
state変数がverifiedに設定されていることを確認します。他のオプションは使用できません。
以下は、今回の例で使用するように変更した Ansible Playbook ファイルです。
--- - name: Playbook to handle topologysuffix hosts: ipaserver vars_files: - /home/user_name/MyPlaybooks/secret.yml tasks: - name: Verify topology suffix freeipa.ansible_freeipa.ipatopologysuffix: ipaadmin_password: "{{ ipaadmin_password }}" suffix: domain state: verified-
ファイルを保存します。
FreeIPA Ansible コレクション内の変数とサンプル Playbook の詳細は、コントロールノードの
/usr/share/ansible/collections/ansible_collections/freeipa/ansible_freeipa/README-topology.mdファイルと/usr/share/ansible/collections/ansible_collections/freeipa/ansible_freeipa/playbooks/topologyディレクトリーを参照してください。Ansible Playbook を実行します。Playbook ファイル、secret.yml ファイルを保護するパスワードを格納するファイル、およびインベントリーファイルを指定します。
$ ansible-playbook --vault-password-file=password_file -v -i inventory verify-topologysuffix-copy.yml