第5章 AlertingRule [monitoring.openshift.io/v1]


説明
AlertingRule は、アラートルールを含むユーザー定義の Prometheus ルールグループのセットを表します。このリソースは、OpenShift のプラットフォームモニタリングスタック (openshift-monitoring namespace にデプロイされた Prometheus インスタンス) によって記録されたメトリクスに基づいてクラスター管理者がアラートを作成するための、サポートされている方法です。これを使用して、CPU 使用率などのマシンレベルのメトリクスを提供する node_exporter や、Kubernetes の使用率に関するメトリクスを提供する kube-state-metrics などのコンポーネントからのメトリクスに基づいて、OpenShift に同梱されていないカスタムアラートルールを作成できます。API は、prometheus-operator のアップストリームの PrometheusRule タイプとほぼ互換性があります。主な違いは、ここでは記録ルールは許可されておらず、アラートルールのみが許可されていることです。作成された AlertingRule リソースごとに、対応する PrometheusRule が openshift-monitoring namespace に作成されます。OpenShift では、アップストリーム API を直接変更せずに、OpenShift 固有のデフォルト設定と検証をより適切に実行できるようにするために、管理者はアップストリームタイプではなく AlertingRule リソースを使用する必要があります。PrometheusRule リソースのアップストリーム API ドキュメントは、https://github.com/prometheus -Operator/prometheus -Operator/Blob/main/Documentation/api.md で参照できます。互換性レベル 1: メジャーリリース内で、最低 12 カ月または 3 つのの間 (いずれか長い方) は安定しています。
タイプ
object
必須
  • spec

5.1. 仕様

プロパティータイプ説明

apiVersion

string

APIVersion はオブジェクトのこの表現のバージョンスキーマを定義します。サーバーは認識されたスキーマを最新の内部値に変換し、認識されない値は拒否することがあります。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources を参照してください。

kind

string

kind はこのオブジェクトが表す REST リソースを表す文字列の値です。サーバーはクライアントが要求を送信するエンドポイントからこれを推測できることがあります。更新はできません。CamelCase を使用します。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds を参照してください。

metadata

ObjectMeta

標準オブジェクトのメタデータ。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata を参照してください。

spec

object

spec は、この AlertingRule オブジェクトの期待される状態を表します。

status

object

status は、この AlertOverrides オブジェクトの現在の状態を表します。

5.1.1. .spec

説明
spec は、この AlertingRule オブジェクトの期待される状態を表します。
タイプ
object
必須
  • グループ
プロパティータイプDescription

groups

array

groups はグループ化されたアラートルールのリストです。ルールグループは、Prometheus がルール処理を並列化する際の単位です。単一グループ内のすべてのルールは、設定された評価間隔を共有します。グループ内のすべてのルールは、この間隔でまとめて順番に処理され、すべてのルールが処理されます。一般的には、関連するアラートルールを 1 つの AlertingRule リソースにグループ化し、そのリソース内で密接に関連するアラート、または単に同じ間隔のアラートを個別のグループにまとめます。1 つのルールグループのみで AlertingRule リソースを作成することもできます。ただし、グループが非常に大きい場合や、評価するクエリー式が非常に複雑な場合は、Prometheus のパフォーマンスに影響する可能性があることに注意してください。別の一般的なユースケースとして、非常に複雑なルールを複数のグループに分散し、並行処理を可能にする場合もあります。

groups[]

object

RuleGroup は、順番に評価されるアラートルールのリストです。

5.1.2. .spec.groups

説明
groups はグループ化されたアラートルールのリストです。ルールグループは、Prometheus がルール処理を並列化する際の単位です。単一グループ内のすべてのルールは、設定された評価間隔を共有します。グループ内のすべてのルールは、この間隔でまとめて順番に処理され、すべてのルールが処理されます。一般的には、関連するアラートルールを 1 つの AlertingRule リソースにグループ化し、そのリソース内で密接に関連するアラート、または単に同じ間隔のアラートを個別のグループにまとめます。1 つのルールグループのみで AlertingRule リソースを作成することもできます。ただし、グループが非常に大きい場合や、評価するクエリー式が非常に複雑な場合は、Prometheus のパフォーマンスに影響する可能性があることに注意してください。別の一般的なユースケースとして、非常に複雑なルールを複数のグループに分散し、並行処理を可能にする場合もあります。
タイプ
array

5.1.3. .spec.groups[]

説明
RuleGroup は、順番に評価されるアラートルールのリストです。
タイプ
object
必須
  • name
  • rules
プロパティータイプDescription

interval

string

interval は、グループ内のルールが評価される頻度です。指定されていない場合は、Prometheus で設定された global.evaluation_interval がデフォルトとなり、そのデフォルトは 30 秒です。この値がクラスターのデフォルトから変更されているかどうかを確認するには、プラットフォームの Prometheus 設定を調べます。そのリソースの関連フィールド spec.evaluationInterval です。

name

string

name はグループの名前です。

rules

array

rules は、順番に評価されるアラートルールのリストです。Prometheus はルールグループを並列に処理することもありますが、単一グループ内のルールは常に順番に処理され、すべてのルールが処理されます。

rules[]

object

ルールはアラートルールを表します。Prometheus ドキュメントを参照してください: - https://www.prometheus.io/docs/prometheus/latest/configuration/alerting_rules

5.1.4. .spec.groups[].rules

説明
rules は、順番に評価されるアラートルールのリストです。Prometheus はルールグループを並列に処理することもありますが、単一グループ内のルールは常に順番に処理され、すべてのルールが処理されます。
タイプ
array

5.1.5. .spec.groups[].rules[]

説明
ルールはアラートルールを表します。Prometheus ドキュメントを参照してください: - https://www.prometheus.io/docs/prometheus/latest/configuration/alerting_rules
タイプ
object
必須
  • alert
  • expr
プロパティータイプDescription

alert

string

alert はアラートの名前です。有効なラベル値である必要があります。つまり、任意の Unicode 文字を含めることができます。

annotations

object (string)

各アラートに追加するアノテーション。アラートの説明やランブックのリンクなど、クエリーを実行しない長い追加情報を保存するために使用できる値です。

expr

integer-or-string

expr は評価する PromQL 式です。評価サイクルごとに、これが現在の時刻で評価され、結果として生じるすべての時系列は保留中になるか、アラートが発生します。ほとんどの場合、これは PromQL 式を表す文字列です (例: mapi_current_pending_csr > mapi_max_pending_csr)。まれに、常に発生しているアラートを作成することが目的の場合は、単純な整数 (たとえば "1") になることがあります。これは、アラートパイプラインが機能していることを確認するために、常に発生する "Watchdog" アラートの作成に使用されることがあります。

for

string

for は、最初に結果が返された後にアラートが発動したと見なされるまでの時間間隔です。発動してからの時間が不十分なアラートは保留中とみなされます。

labels

object (string)

各アラートに追加または上書きするラベル。アラートの PromQL 式の結果は、アラートの既存のラベルセットになります。式を評価した後、ここで指定されたラベルがそのセット内のラベルと同じ名前である場合、ここでのラベルが優先され、以前の値を上書きします。これらは通常、クエリーの実行に役立つ短い識別値である必要があります。一般的な例としては、アラートの重大度が挙げられます。その場合、labels キーの下に severity: warning を設定します。

5.1.6. .status

説明
status は、この AlertOverrides オブジェクトの現在の状態を表します。
タイプ
object
プロパティータイプDescription

observedGeneration

integer

observedGeneration は、処理した最後の世代変更です

prometheusRule

object

prometheusRule は、この AlertingRule に対して生成された PrometheusRule です。各 AlertingRule インスタンスにより、同じ namespace (常に openshift-monitoring namespace) に PrometheusRule オブジェクトが生成されます。

5.1.7. .status.prometheusRule

説明
prometheusRule は、この AlertingRule に対して生成された PrometheusRule です。各 AlertingRule インスタンスにより、同じ namespace (常に openshift-monitoring namespace) に PrometheusRule オブジェクトが生成されます。
タイプ
object
必須
  • name
プロパティータイプ説明

name

string

参照される PrometheusRule の名前。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.