9.6. コアプラットフォームモニタリングのアラートルールの管理
コアプラットフォームモニタリングのアラートルールの作成と変更は、テクノロジープレビュー機能のみです。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
OpenShift Container Platform 4.13 モニタリングには、プラットフォームメトリクスのデフォルトのアラートルールのセットが同梱されます。クラスター管理者は、このルールセットを 2 つの方法でカスタマイズできます。
-
しきい値を調整するか、ラベルを追加および変更して、既存のプラットフォームのアラートルールの設定を変更します。たとえば、アラートの
severity
ラベルをwarning
からcritical
に変更すると、アラートのフラグが付いた問題のルーティングおよびトリアージに役立ちます。 -
openshift-monitoring
namespace のコアプラットフォームメトリクスに基づいてクエリー式を作成することにより、新しいカスタムアラートルールを定義して追加します。
コアプラットフォームのアラートルールの考慮事項
- 新規のアラートルールはデフォルトの OpenShift Container Platform モニタリングメトリクスをベースとする必要があります。
-
openshift-monitoring
namespace にAlertingRule
オブジェクトとAlertRelabelConfig
オブジェクトを作成する必要があります。 - アラートルールのみを追加および変更できます。新しい記録ルールを作成したり、既存の記録ルールを変更したりすることはできません。
-
AlertRelabelConfig
オブジェクトを使用して既存のプラットフォームのアラートルールを変更する場合、変更は Prometheus アラート API に反映されません。そのため、削除されたアラートは Alertmanager に転送されていなくても OpenShift Container Platform Web コンソールに表示されます。さらに、重大度
ラベルの変更など、アラートへの変更は Web コンソールには表示されません。
9.6.1. コアプラットフォームのアラートルールの変更
クラスター管理者は、Alertmanager がコアプラットフォームアラートをレシーバーにルーティングする前に変更できます。たとえば、アラートの重大度のラベルを変更したり、カスタムラベルを追加したり、アラートの送信から Alertmanager に送信されないようにしたりできます。
前提条件
-
cluster-admin
クラスターロールを持つユーザーとしてクラスターにアクセスできる。 -
OpenShift CLI (
oc
) がインストールされている。 - テクノロジープレビュー機能を有効にし、クラスター内のすべてのノードが準備状態にある。
手順
-
example-modified-alerting-rule.yaml
という名前の新しい YAML 設定ファイルを作成します。 AlertRelabelConfig
リソースを YAML ファイルに追加します。以下の例では、デフォルトのプラットフォームwatchdog
アラートルールのseverity
設定をcritical
に変更します。apiVersion: monitoring.openshift.io/v1alpha1 kind: AlertRelabelConfig metadata: name: watchdog namespace: openshift-monitoring 1 spec: configs: - sourceLabels: [alertname,severity] 2 regex: "Watchdog;none" 3 targetLabel: severity 4 replacement: critical 5 action: Replace 6
重要openshift-monitoring
namespace にAlertRelabelConfig
オブジェクトを作成する必要があります。それ以外の場合は、アラートラベルが変更しません。設定ファイルをクラスターに適用します。
$ oc apply -f example-modified-alerting-rule.yaml
9.6.2. 新規アラートルールの作成
クラスター管理者は、プラットフォームメトリクスに基づいて新規のアラートルールを作成できます。これらのアラートルールは、選択したメトリクスの値に基づいてアラートをトリガーします。
-
既存のプラットフォームアラートルールに基づいてカスタマイズされた
AlertingRule
リソースを作成する場合は、元のアラートをサイレントに設定して、競合するアラートを受信しないようにします。 - ユーザーがアラートの影響と原因を理解できるように、アラートルールにアラートメッセージと重大度値が含まれていることを確認します。
前提条件
-
cluster-admin
クラスターロールを持つユーザーとしてクラスターにアクセスできる。 -
OpenShift CLI (
oc
) がインストールされている。 - テクノロジープレビュー機能を有効にし、クラスター内のすべてのノードが準備状態にある。
手順
-
example-alerting-rule.yaml
という名前の新しい YAML 設定ファイルを作成します。 AlertingRule
リソースを YAML ファイルに追加します。以下の例では、デフォルトのWatchdog
アラートと同様にexample
という名前の新規アラートルールを作成します。apiVersion: monitoring.openshift.io/v1alpha1 kind: AlertingRule metadata: name: example namespace: openshift-monitoring 1 spec: groups: - name: example-rules rules: - alert: ExampleAlert 2 for: 1m 3 expr: vector(1) 4 labels: severity: warning 5 annotations: message: This is an example alert. 6
重要openshift-monitoring
namespace にAlertingRule
オブジェクトを作成する必要があります。それ以外の場合は、アラートルールが受け入れられません。設定ファイルをクラスターに適用します。
$ oc apply -f example-alerting-rule.yaml
関連情報
- OpenShift Container Platform 4.18 モニタリングアーキテクチャーの詳細は、モニタリングの概要 を参照してください。
- アラートルールの詳細は、Alertmanager ドキュメント を参照してください。
- 再ラベル付けの動作に関する詳細は、Prometheus の再ラベル付けに関するドキュメント を参照してください。
- アラートの最適化に関する追加のガイドラインは、Prometheus アラートのドキュメント を参照してください。