第28章 RHEL システムロールを使用した systemd ユニットの管理
systemd
RHEL システムロールを使用すると、Red Hat Ansible Automation Platform を使用してユニットファイルをデプロイし、複数のシステム上で systemd
ユニットを管理できます。
systemd
RHEL システムロール Playbook で systemd_units
変数を使用すると、ターゲットシステム上の systemd
ユニットのステータスを把握できます。この変数はディクショナリーのリストを表示します。各ディクショナリーエントリーは、マネージドホスト上に存在する 1 つの systemd
ユニットの状態と設定を記述します。systemd_units
変数は、タスク実行の最終ステップとして更新され、ロールがすべてのタスクを実行した後の状態をキャプチャーします。
28.1. systemd
RHEL システムロールを使用した systemd
ユニットのデプロイと起動
systemd
RHEL システムロールを適用して、ターゲットホスト上で systemd
ユニット管理に関連するタスクを実行できます。Playbook で systemd
RHEL システムロール変数を設定して、systemd
がどのユニットファイルを管理し、起動し、有効にするかを定義します。
前提条件
- コントロールノードと管理対象ノードを準備している。
- 管理対象ノードで Playbook を実行できるユーザーとしてコントロールノードにログインしている。
-
管理対象ノードへの接続に使用するアカウントに、そのノードに対する
sudo
権限がある。
手順
次の内容を含む Playbook ファイル (例:
~/playbook.yml
) を作成します。--- - name: Deploy and start systemd unit hosts: managed-node-01.example.com roles: - rhel-system-roles.systemd vars: systemd_unit_files: - <name1>.service - <name2>.service - <name3>.service systemd_started_units: - <name1>.service - <name2>.service - <name3>.service systemd_enabled_units: - <name1>.service - <name2>.service - <name3>.service
Playbook の構文を検証します。
$ ansible-playbook --syntax-check ~/playbook.yml
このコマンドは構文を検証するだけであり、有効だが不適切な設定から保護するものではないことに注意してください。
Playbook を実行します。
$ ansible-playbook ~/playbook.yml
関連情報
-
/usr/share/ansible/roles/rhel-system-roles.systemd/README.md
ファイル -
/usr/share/doc/rhel-system-roles/systemd/
ディレクトリー