第2章 RHEL システムロールを使用するためのコントロールノードと管理対象ノードの準備
個々の RHEL システムロールを使用してサービスと設定を管理するには、その前に、コントロールノードと管理対象ノードを準備する必要があります。
2.1. RHEL 8 でのコントロールノードの準備 リンクのコピーリンクがクリップボードにコピーされました!
RHEL システムロールを使用する前に、コントロールノードを設定する必要があります。次に、このシステムは、Playbook に従ってインベントリーから管理対象ホストを設定します。
前提条件
- RHEL 7.9 がインストールされている。RHEL のインストールの詳細は、インストールガイド を参照してください。
- システムはカスタマーポータルに登録されます。
-
Red Hat Enterprise Linux Serverサブスクリプションがシステムにアタッチされている。 -
カスタマーポータルのアカウントで利用可能な場合は、
Ansible Automation Platformサブスクリプションがシステムにアタッチされている。
手順
rhel-system-rolesパッケージをインストールします。yum install rhel-system-roles
[root@control-node]# yum install rhel-system-rolesCopy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドは、
ansible-coreパッケージを依存関係としてインストールします。Playbook を管理および実行するための
ansibleという名前のユーザーを作成します。useradd ansible
[root@control-node]# useradd ansibleCopy to Clipboard Copied! Toggle word wrap Toggle overflow 新しく作成した
ansibleユーザーに切り替えます。su - ansible
[root@control-node]# su - ansibleCopy to Clipboard Copied! Toggle word wrap Toggle overflow このユーザーとして残りの手順を実行します。
SSH の公開鍵と秘密鍵を作成します。
ssh-keygen
[ansible@control-node]$ ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/home/ansible/.ssh/id_rsa): <password> ...Copy to Clipboard Copied! Toggle word wrap Toggle overflow キーファイルの推奨されるデフォルトの場所を使用します。
- オプション: 接続を確立するたびに Ansible が SSH キーのパスワードを要求しないように、SSH エージェントを設定します。
~/.ansible.cfgファイルを次の内容で作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記~/.ansible.cfgファイルの設定は優先度が高く、グローバルな/etc/ansible/ansible.cfgファイルの設定をオーバーライドします。これらの設定を使用して、Ansible は次のアクションを実行します。
- 指定されたインベントリーファイルでホストを管理します。
-
管理対象ノードへの SSH 接続を確立するときに、
remote_userパラメーターで設定されたアカウントを使用します。 -
sudoユーティリティーを使用して、rootユーザーとして管理対象ノードでタスクを実行します。 - Playbook を適用するたびに、リモートユーザーの root パスワードの入力を求められます。これは、セキュリティー上の理由から推奨されます。
管理対象ホストのホスト名をリストする
~/inventoryファイルを INI または YAML 形式で作成します。インベントリーファイルでホストのグループを定義することもできます。たとえば、以下は、3 つのホストとUSという名前の 1 つのホストグループを含む INI 形式のインベントリーファイルです。managed-node-01.example.com [US] managed-node-02.example.com ansible_host=192.0.2.100 managed-node-03.example.com
managed-node-01.example.com [US] managed-node-02.example.com ansible_host=192.0.2.100 managed-node-03.example.comCopy to Clipboard Copied! Toggle word wrap Toggle overflow コントロールノードはホスト名を解決できる必要があることに注意してください。DNS サーバーが特定のホスト名を解決できない場合は、ホストエントリーの横に
ansible_hostパラメーターを追加して、その IP アドレスを指定します。
次のステップ
- 管理対象ノードを準備します。詳細は、管理対象ノードの準備 を参照してください。