11.15. ha_cluster RHEL システムロールを使用して高可用性クラスターのアラートを設定する


(RHEL 9.5 以降) リソースやノードの障害、設定の変更などの Pacemaker イベントが発生した場合、何らかの外部アクションを実行する場合があります。たとえば、メールメッセージを送信したり、ファイルにログを記録したり、監視システムを更新したりする場合があります。

アラートエージェントを使用すると、外部アクションを実行するようにシステムを設定できます。アラートエージェントは、クラスターがリソースの設定と操作を処理するためにリソースエージェントを呼び出すのと同じ方法でクラスターが呼び出す外部プログラムです。クラスターは、環境変数を介してイベントに関する情報をエージェントに渡します。

注記

ha_cluster RHEL システムロールは、アラートを処理する外部プログラムを呼び出すようにクラスターを設定します。外部プログラムを提供し、クラスターノードに配布するのは、管理者が行う必要があります。

アラートエージェントの詳細は、クラスターイベントのスクリプトのトリガー を参照してください。

この手順の例では、ha_cluster RHEL システムロールを使用して、Pacemaker アラートを設定する高可用性クラスターを自動的に作成します。

警告

ha_cluster RHEL システムロールは、指定されたノードの既存のクラスター設定を置き換えます。Playbook に指定されていない設定はすべて失われます。

前提条件

手順

  1. 機密性の高い変数を暗号化されたファイルに保存します。

    1. vault を作成します。

      $ ansible-vault create ~/vault.yml
      New Vault password: <vault_password>
      Confirm New Vault password: <vault_password>
      Copy to Clipboard
    2. ansible-vault create コマンドでエディターが開いたら、機密データを <key>: <value> 形式で入力します。

      cluster_password: <cluster_password>
      Copy to Clipboard
    3. 変更を保存して、エディターを閉じます。Ansible は vault 内のデータを暗号化します。
  2. 次の内容を含む Playbook ファイル (例: ~/playbook.yml) を作成します。

    ---
    - name: Create a high availability cluster
      hosts: node1 node2
      vars_files:
        - ~/vault.yml
      tasks:
        - name: Configure a cluster with alerts
          ansible.builtin.include_role:
            name: redhat.rhel_system_roles.ha_cluster
          vars:
              ha_cluster_cluster_name: my-new-cluster
              ha_cluster_hacluster_password: "{{ cluster_password }}"
              ha_cluster_manage_firewall: true
              ha_cluster_manage_selinux: true
              ha_cluster_alerts:
                - id: alert1
                  path: /alert1/path
                  description: Alert1 description
                  instance_attrs:
                    - attrs:
                        - name: alert_attr1_name
                          value: alert_attr1_value
                  meta_attrs:
                    - attrs:
                        - name: alert_meta_attr1_name
                          value: alert_meta_attr1_value
                  recipients:
                    - value: recipient_value
                      id: recipient1
                      description: Recipient1 description
                      instance_attrs:
                        - attrs:
                            - name: recipient_attr1_name
                              value: recipient_attr1_value
                      meta_attrs:
                        - attrs:
                            - name: recipient_meta_attr1_name
                              value: recipient_meta_attr1_value
    Copy to Clipboard

    サンプル Playbook で指定されている設定は次のとおりです。

    ha_cluster_cluster_name: <cluster_name>
    作成するクラスターの名前。
    ha_cluster_hacluster_password: <password>
    hacluster ユーザーのパスワード。hacluster ユーザーには、クラスターへのフルアクセス権が付与されます。
    ha_cluster_manage_firewall: true
    ha_cluster RHEL システムロールがファイアウォールを管理するかどうかを決定する変数。
    ha_cluster_manage_selinux: true
    ha_cluster RHEL システムロールが selinux RHEL システムロールを使用してファイアウォール高可用性サービスのポートを管理するかどうかを決定する変数。
    ha_cluster_alerts: <alert definitions>

    Pacemaker アラートを定義する変数。

    • id - アラートの ID。
    • path - アラートエージェント実行可能ファイルへのパス。
    • description - アラートの説明。
    • instance_attrs - アラートのインスタンス属性セットのリスト。現在、サポートされているセットは 1 つだけであるため、最初のセットが使用され、残りは無視されます。
    • meta_attrs - アラートのメタ属性セットのリスト。現在、サポートされているセットは 1 つだけであるため、最初のセットが使用され、残りは無視されます。
    • recipients - アラートの受信者のリスト。
    • value - 受信者の値。
    • id - 受信者の ID。
    • description - 受信者の説明。
    • instance_attrs - 受信者のインスタンス属性セットのリスト。現在、サポートされているセットは 1 つだけであるため、最初のセットが使用され、残りは無視されます。
    • meta_attrs - 受信者のメタ属性セットのリスト。現在、サポートされているセットは 1 つだけであるため、最初のセットが使用され、残りは無視されます。

    Playbook で使用されるすべての変数の詳細は、コントロールノードの /usr/share/ansible/roles/rhel-system-roles.ha_cluster/README.md ファイルを参照してください。

  3. Playbook の構文を検証します。

    $ ansible-playbook --syntax-check --ask-vault-pass ~/playbook.yml
    Copy to Clipboard

    このコマンドは構文を検証するだけであり、有効だが不適切な設定から保護するものではないことに注意してください。

  4. Playbook を実行します。

    $ ansible-playbook --ask-vault-pass ~/playbook.yml
    Copy to Clipboard
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat