第26章 Ansible を使用して IdM にサービスを配置させる手順およびさせない手順
Ansible サービス モジュールを使用すると、Identity Management (IdM) 管理者は、IdM ネイティブではない特定のサービスが IdM に存在するか、存在しないかを確認できます。たとえば、サービス モジュールを使用すると以下を行うことができます。
手動でインストールしたサービスが IdM クライアントに存在ていることを確認します。サービスが存在しない場合には自動的にインストールされます。詳細は、次を参照してください。
- IdM に登録したサービスに、証明書がアタッチされていることを確認して、証明書がない場合には自動的にその証明書がインストールされます。詳細は、次を参照してください。
- IdM サービスエントリーで外部署名の証明書が存在することを確認する。
IdM ユーザーとホストが、サービスキータブを取得して作成できるようにします。詳細は、次を参照してください。
IdM ユーザーとホストが Kerberos エイリアスをサービスに追加できるようにします。詳細は、次を参照してください。
サービスが IdM クライアントにないかを確認して、そのサービスが存在する場合は自動的にそのサービスを削除します。詳細は、次を参照してください。
26.1. Ansible Playbook を使用して IdM に HTTP サービスを存在させる手順 リンクのコピーリンクがクリップボードにコピーされました!
以下の手順に従って、Ansible Playbook を使用して IdM に HTTP サーバーが存在することを確認します。
前提条件
- HTTP サービスをホストするシステムが IdM クライアントである。
- IdM 管理者パスワードがある。
手順
inventory.fileなどのインベントリーファイルを作成します。touch inventory.file
$ touch inventory.fileCopy to Clipboard Copied! Toggle word wrap Toggle overflow inventory.fileを開き、[ipaserver]セクションに、設定する IdM サーバーを定義します。たとえば、Ansible に対して server.idm.example.com を設定するように指示するには、次のコマンドを実行します。[ipaserver] server.idm.example.com
[ipaserver] server.idm.example.comCopy to Clipboard Copied! Toggle word wrap Toggle overflow Ansible Playbook ファイル (
/usr/share/doc/ansible-freeipa/playbooks/service/service-is-present.yml) のコピーを作成します。以下に例を示します。cp /usr/share/doc/ansible-freeipa/playbooks/service/service-is-present.yml /usr/share/doc/ansible-freeipa/playbooks/service/service-is-present-copy.yml
$ cp /usr/share/doc/ansible-freeipa/playbooks/service/service-is-present.yml /usr/share/doc/ansible-freeipa/playbooks/service/service-is-present-copy.ymlCopy to Clipboard Copied! Toggle word wrap Toggle overflow Ansible Playbook ファイル (
/usr/share/doc/ansible-freeipa/playbooks/service/service-is-present-copy.yml) を開きます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow ファイルを調整します。
-
ipaadmin_password変数で定義されている IdM 管理者パスワードを変更します。 -
ipaserviceタスクのname変数で定義されているように、HTTP サービスが実行されている IdM クライアントの名前を変更します。
-
- ファイルを保存し、終了します。
Ansible Playbook を実行します。Playbook ファイル、secret.yml ファイルを保護するパスワードを格納するファイル、およびインベントリーファイルを指定します。
ansible-playbook --vault-password-file=password_file -v -i path_to_inventory_directory/inventory.file /usr/share/doc/ansible-freeipa/playbooks/service/service-is-present-copy.yml
$ ansible-playbook --vault-password-file=password_file -v -i path_to_inventory_directory/inventory.file /usr/share/doc/ansible-freeipa/playbooks/service/service-is-present-copy.ymlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
- IdM 管理者として IdM Web UI にログインします。
-
IdentityServicesに移動します。
Services リストに HTTP/client.idm.example.com@IDM.EXAMPLE.COM がある場合は、Ansible Playbook は IdM に正常に追加されています。