第2章 RHEL システムロールを使用するためのコントロールノードと管理対象ノードの準備
個々の RHEL システムロールを使用してサービスと設定を管理するには、その前に、コントロールノードと管理対象ノードを準備する必要があります。
2.1. RHEL 9 でのコントロールノードの準備 リンクのコピーリンクがクリップボードにコピーされました!
RHEL システムロールを使用する前に、コントロールノードを設定する必要があります。次に、このシステムは、Playbook に従ってインベントリーから管理対象ホストを設定します。
前提条件
- システムはカスタマーポータルに登録されます。
-
Red Hat Enterprise Linux Serverサブスクリプションがシステムにアタッチされている。 -
オプション:
Ansible Automation Platformサブスクリプションがシステムにアタッチされている。
手順
Playbook を管理および実行するための
ansibleという名前のユーザーを作成します。[root@control-node]# useradd ansible新しく作成した
ansibleユーザーに切り替えます。[root@control-node]# su - ansibleこのユーザーとして残りの手順を実行します。
SSH の公開鍵と秘密鍵を作成します。
[ansible@control-node]$ ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/home/ansible/.ssh/id_rsa): Enter passphrase (empty for no passphrase): <password> Enter same passphrase again: <password> ...キーファイルの推奨されるデフォルトの場所を使用します。
- オプション: 接続を確立するたびに Ansible が SSH キーのパスワードを要求しないように、SSH エージェントを設定します。
~/.ansible.cfgファイルを次の内容で作成します。[defaults] inventory = /home/ansible/inventory remote_user = ansible [privilege_escalation] become = True become_method = sudo become_user = root become_ask_pass = True注記~/.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コントロールノードはホスト名を解決できる必要があることに注意してください。DNS サーバーが特定のホスト名を解決できない場合は、ホストエントリーの横に
ansible_hostパラメーターを追加して、その IP アドレスを指定します。RHEL システムロールをインストールします。
Ansible Automation Platform のない RHEL ホストに、
rhel-system-rolesパッケージをインストールします。[root@control-node]# dnf install rhel-system-rolesこのコマンドは、
/usr/share/ansible/collections/ansible_collections/redhat/rhel_system_roles/ディレクトリーにコレクションをインストールし、依存関係としてansible-coreパッケージをインストールします。Ansible Automation Platform で、
ansibleユーザーとして次の手順を実行します。-
~/.ansible.cfgファイルで コンテンツのプライマリーソースとして Red Hat Automation Hub を定義します。 Red Hat Automation Hub から
redhat.rhel_system_rolesコレクションをインストールします。[ansible@control-node]$ ansible-galaxy collection install redhat.rhel_system_rolesこのコマンドは、コレクションを
~/.ansible/collections/ansible_collections/redhat/rhel_system_roles/ディレクトリーにインストールします。
-
次のステップ
- 管理対象ノードを準備します。詳細は、管理対象ノードの準備 を参照してください。