16.7. Metrics RHEL システムロールを使用して PMIE Webhook を設定する
前提条件
- コントロールノードと管理対象ノードの準備が完了している。
- 管理対象ノードで Playbook を実行できるユーザーとしてコントロールノードにログインしている。
-
管理対象ノードへの接続に使用するアカウントに、そのノードに対する
sudo
権限がある。 -
Ansible インベントリーでは、
servers
およびmetrics_monitor
ホストグループを定義しました。この例では、servers
グループにはserver-node-01.example.com
とserver-node-02.example.com
が含まれます。metrics_monitor
グループには、pcp-monitor-node-01.example.com
が含まれます。
手順
次の内容を含む Playbook ファイル (例:
~/playbook.yml
) を作成します。--- - name: Configure PCP webhooks hosts: servers tasks: - name: Configure PCP metrics recording ansible.builtin.include_role: name: rhel-system-roles.metrics vars: metrics_retention_days: 7 metrics_manage_firewall: true - name: Configure the PMIE webhooks hosts: metrics_monitor tasks: - name: Configure the monitoring node ansible.builtin.include_role: name: redhat.rhel_system_roles.metrics vars: metrics_manage_firewall: true metrics_retention_days: 7 metrics_monitored_hosts: "{{ groups['servers'] }}" metrics_webhook_endpoint: "http://<webserver>:<port>/<endpoint>"
サンプル Playbook で指定されている設定は次のとおりです。
metrics_manage_firewall
-
true
の場合、firewall
RHEL システムロールは、metrics
ロールが使用するポートを管理します。 metrics_retention_days
- 収集されたメトリクスを保持する日数。
metrics_monitored_hosts
- 監視システムが監視するホスト。
metrics_webhook_endpoint
- 検出されたパフォーマンス問題に関する通知が送信される Webhook エンドポイント。デフォルトでは、これらの検出はローカルシステムにのみ記録されます。
Playbook で使用されるすべての変数の詳細は、コントロールノードの
/usr/share/ansible/roles/rhel-system-roles.metrics/README.md
ファイルを参照してください。Playbook は、pcp-monitor-node-01.example.com
ホストを、それ自体とserver-node-01.example.com
システムおよびserver-node-02.example.com
システムの中央監視サイトとして設定します。Playbook は、3 つのシステムすべてに対してglobal webhook_action
およびglobal webhook_endpoint
PMIE 設定オプションも設定し、PMIE サービスを再起動して変更を適用します。Playbook の構文を検証します。
$ ansible-playbook --syntax-check ~/playbook.yml
このコマンドは構文を検証するだけであり、有効だが不適切な設定から保護するものではないことに注意してください。
Playbook を実行します。
$ ansible-playbook ~/playbook.yml
検証
pcp-monitor-node-01.example.com
の設定概要を確認します。[root@pcp-monitor-node-01 ~]# pcp summary Performance Co-Pilot configuration on pcp-monitor-node-01.example.com: platform: Linux pcp-monitor-node-01.example.com 5.14.0-427.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Feb 23 01:51:18 EST 2024 x86_64 hardware: 8 cpus, 1 disk, 1 node, 1773MB RAM timezone: CEST-2 services: pmcd pmproxy pmcd: Version 6.2.0-1, 12 agents, 6 clients pmda: root pmcd proc pmproxy xfs linux nfsclient mmv kvm jbd2 dm openmetrics pmlogger: primary logger: /var/log/pcp/pmlogger/pcp-monitor-node-01.example.com/20240510.16.25 server-node-01.example.com: /var/log/pmlogger/server-node-01.example.com/20240510.16.25 server-node-02.example.com: /var/log/pmlogger/server-node-02.example.com/20240510.16.25 pmie: primary engine: /var/log/pcp/pmie/pcp-monitor-node-01.example.com/pmie.log server-node-01.example.com: : /var/log/pcp/pmie/server-node-01.example.com/pmie.log server-node-02.example.com: : /var/log/pcp/pmie/server-node-02.example.com/pmie.log
概要の最後の 3 行は、PMIE が 3 つのシステムすべてを監視するように設定されていることを示しています。
global webhook_action
PMIE 設定オプションが有効になっていることを確認します。[root@pcp-monitor-node-01 ~]# grep webbook_action /var/lib/pcp/config/pmie/config.default // 0 global webhook_action = yes