第33章 Ansible Playbook を使用して IdM を管理する環境の準備
Identity Management (IdM) を管理するシステム管理者は、Red Hat Ansible Engine を使用する際に以下を行うことが推奨されます。
- ホームディレクトリーに Ansible Playbook 専用のサブディレクトリー (例: ~/MyPlaybooks) を作成します。
-
/usr/share/doc/ansible-freeipa/*
と/usr/share/doc/rhel-system-roles/*
ディレクトリーおよびサブディレクトリーから ~/MyPlaybooks ディレクトリーにサンプル Ansible Playbook をコピーして調整します。 - ~/MyPlaybooks ディレクトリーにインベントリーファイルを追加します。
このプラクティスを使用すると、すべての Playbook を 1 カ所で見つけることができます。また、root 権限を呼び出しなくても Playbook を実行できます。
マネージドノードで root
権限があれば、ipaserver
、ipareplica
、ipaclient
、および ipabackup
ansible-freeipa
ロールを実行できます。これらのロールには、ディレクトリーおよび dnf
ソフトウェアパッケージマネージャーへの特権アクセスが必要です。
~/MyPlaybooks ディレクトリーを作成し、それを使用して Ansible Playbook を保存および実行できるように設定するには、次の手順に従います。
前提条件
- マネージドノードに IdM サーバー (server.idm.example.com および replica.idm.example.com) をインストールした。
- DNS およびネットワークを設定し、コントロールノードから直接マネージドノード (server.idm.example.com および replica.idm.example.com) にログインすることができる。
-
IdM
admin
のパスワードを把握している。
手順
Ansible 設定および Playbook のディレクトリーをホームディレクトリーに作成します。
$ mkdir ~/MyPlaybooks/
~/MyPlaybooks/ ディレクトリーに移動します。
$ cd ~/MyPlaybooks
~/MyPlaybooks/ansible.cfg ファイルを以下の内容で作成します。
[defaults] inventory = /home/your_username/MyPlaybooks/inventory [privilege_escalation] become=True
~/MyPlaybooks/inventory ファイルを以下の内容で作成します。
[eu] server.idm.example.com [us] replica.idm.example.com [ipaserver:children] eu us
この設定は、これらの場所にあるホストの 2 つのホストグループ (eu と us) を定義します。さらに、この設定は、eu および us グループのすべてのホストを含む ipaserver ホストグループを定義します。
オプション: SSH 公開鍵および秘密鍵を作成します。テスト環境でのアクセスを簡素化するには、秘密鍵にパスワードを設定しないでください。
$ ssh-keygen
各マネージドノードの IdM
admin
アカウントに SSH 公開鍵をコピーします。$ ssh-copy-id admin@server.idm.example.com $ ssh-copy-id admin@replica.idm.example.com
これらのコマンドでは、IdM
管理者
パスワードを入力します。