10.6. コアプラットフォームモニタリングのアラートルールの管理

重要

コアプラットフォームモニタリングのアラートルールの作成と変更は、テクノロジープレビュー機能のみです。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビューの機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。

Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。

OpenShift Container Platform 4.12 モニタリングには、プラットフォームメトリクスのデフォルトのアラートルールのセットが同梱されます。クラスター管理者は、このルールセットを 2 つの方法でカスタマイズできます。

  • しきい値を調整するか、ラベルを追加および変更して、既存のプラットフォームのアラートルールの設定を変更します。たとえば、アラートの severity ラベルを warning から critical に変更すると、アラートのフラグが付いた問題のルーティングおよびトリアージに役立ちます。
  • openshift-monitoring namaespace のコアプラットフォームメトリックに基づいてクエリー式を作成することにより、新しいカスタムアラートルールを定義して追加します。

コアプラットフォームのアラートルールについての考慮事項

  • 新規のアラートルールはデフォルトの OpenShift Container Platform モニタリングメトリクスをベースとする必要があります。
  • openshift-monitoring namespace に AlertingRule オブジェクトと AlertRelabelConfig オブジェクトを作成する必要があります。
  • アラートルールのみを追加および変更できます。新しい記録ルールを作成したり、既存の記録ルールを変更したりすることはできません。
  • AlertRelabelConfig オブジェクトを使用して既存のプラットフォームのアラートルールを変更する場合、変更は Prometheus アラート API に反映されません。そのため、削除されたアラートは Alertmanager に転送されていなくても OpenShift Container Platform Web コンソールに表示されます。さらに、重大度 ラベルの変更など、アラートへの変更は Web コンソールには表示されません。

10.6.1. コアプラットフォームのアラートルールの変更

クラスター管理者は、Alertmanager がコアプラットフォームアラートをレシーバーにルーティングする前に変更できます。たとえば、アラートの重大度のラベルを変更したり、カスタムラベルを追加したり、アラートの送信から Alertmanager に送信されないようにしたりできます。

前提条件

  • cluster-admin クラスターロールを持つユーザーとしてクラスターにアクセスできます。
  • OpenShift CLI (oc) がインストールされている。
  • テクノロジープレビュー機能を有効にし、クラスター内のすべてのノードが準備状態にある。

手順

  1. example-modified-alerting-rule.yaml という名前の新しい YAML 設定ファイルを作成します。
  2. 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
    1
    namespace が openshift-monitoring であることを確認します。
    2
    変更する値のソースラベル。
    3
    sourceLabels の値が一致する正規表現。
    4
    変更する値のターゲットラベル。
    5
    ターゲットラベルを置き換える新しい値。
    6
    正規表現の一致に基づいて古い値を置き換える再ラベルアクション。デフォルトのアクションは Replace です。その他に使用可能な値は、KeepDrop 、HshModLabelMapLabelDrop、および LabelKeep です。
    重要

    openshift-monitoring namespace に AlertRelabelConfig オブジェクトを作成する必要があります。それ以外の場合は、アラートラベルが変更しません。

  3. 設定ファイルをクラスターに適用します。

    $ oc apply -f example-modified-alerting-rule.yaml

10.6.2. 新規アラートルールの作成

クラスター管理者は、プラットフォームメトリックに基づいて新規のアラートルールを作成できます。これらのアラートルールは、選択したメトリックの値に基づいてアラートをトリガーします。

注記
  • 既存のプラットフォームアラートルールに基づいてカスタマイズされた AlertingRule リソースを作成する場合は、元のアラートをサイレントに設定して、競合するアラートを受信しないようにします。
  • ユーザーがアラートの影響と原因を理解できるように、アラートルールにアラートメッセージと重大度値が含まれていることを確認します。

前提条件

  • cluster-admin クラスターロールを持つユーザーとしてクラスターにアクセスできる。
  • OpenShift CLI (oc) がインストールされている。
  • テクノロジープレビュー機能を有効にし、クラスター内のすべてのノードが準備状態にある。

手順

  1. example-alerting-rule.yaml という名前の新しい YAML 設定ファイルを作成します。
  2. 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
    1
    namespace が openshift-monitoring であることを確認します。
    2
    作成する必要のあるアラートルールの名前。
    3
    アラートが発せられる前に条件が真である必要がある期間。
    4
    新規ルールを定義する PromQL クエリー式。
    5
    アラートルールがアラートに割り当てる重大度。
    6
    アラートに関連付けられたメッセージ。
    重要

    openshift-monitoring namespace に AlertingRule オブジェクトを作成する必要があります。それ以外の場合は、アラートルールが受け入れられません。

  3. 設定ファイルをクラスターに適用します。

    $ oc apply -f example-alerting-rule.yaml

関連情報