This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.9.4. アラートルールの管理
OpenShift Container Platform モニタリングには、デフォルトのアラートルールのセットが同梱されます。クラスター管理者は、デフォルトのアラートルールを表示できます。
OpenShift Container Platform 4.10 では、ユーザー定義プロジェクトでアラートルールを作成、表示、編集、および削除することができます。
アラートルールについての考慮事項
- デフォルトのアラートルールは OpenShift Container Platform クラスター用に使用され、それ以外の目的では使用されません。
- 一部のアラートルールには、複数の意図的に同じ名前が含まれます。それらは同じイベントについてのアラートを送信しますが、それぞれ異なるしきい値、重大度およびそれらの両方が設定されます。
- 抑制 (inhibition) ルールは、高い重大度のアラートが実行される際に実行される低い重大度のアラートの通知を防ぎます。
9.4.1. ユーザー定義プロジェクトのアラートの最適化
アラートルールの作成時に以下の推奨事項を考慮して、独自のプロジェクトのアラートを最適化できます。
- プロジェクト用に作成するアラートルールの数を最小限にします。影響を与える状況を通知するアラートルールを作成します。影響を与えない条件に対して多数のアラートを生成すると、関連するアラートに気づくのがさらに困難になります。
- 原因ではなく現象についてのアラートルールを作成します。根本的な原因に関係なく、状態を通知するアラートルールを作成します。次に、原因を調査できます。アラートルールのそれぞれが特定の原因にのみ関連する場合に、さらに多くのアラートルールが必要になります。そのため、いくつかの原因は見落される可能性があります。
- アラートルールを作成する前にプランニングを行います。重要な現象と、その発生時に実行するアクションを決定します。次に、現象別にアラートルールをビルドします。
- クリアなアラートメッセージングを提供します。アラートメッセージに現象および推奨されるアクションを記載します。
- アラートルールに重大度レベルを含めます。アラートの重大度は、報告される現象が生じた場合に取るべき対応によって異なります。たとえば、現象に個人または緊急対策チーム (Critical Response Team) による早急な対応が必要な場合は、重大アラートをトリガーする必要があります。
- アラートルーティングを最適化します。ルールがデフォルトの OpenShift Container Platform メトリクスをクエリーしない場合には、 - openshift-user-workload-monitoringプロジェクトの Prometheus インスタンスにアラートルールを直接デプロイします。これにより、アラートルールの待ち時間が短縮され、モニタリングコンポーネントへの負荷が最小限に抑えられます。警告- ユーザー定義プロジェクトのデフォルトの OpenShift Container Platform メトリクスは、CPU およびメモリーの使用状況、帯域幅の統計、およびパケットレートについての情報を提供します。ルールを - openshift-user-workload-monitoringプロジェクトの Prometheus インスタンスに直接ロート指定する場合、これらのメトリクスをアラートルールに含めることはできません。アラートルールの最適化は、ドキュメントを参照し、モニタリング用のアーキテクチャーの全体像を把握している場合にのみ使用してください。
9.4.2. ユーザー定義プロジェクトのアラートルールの作成
ユーザー定義のプロジェクトに対してアラートルールを作成できます。これらのアラートルールは、選択したメトリクスの値に基づいてアラートを実行します。
前提条件
- ユーザー定義プロジェクトのモニタリングを有効にしている。
- 
							アラートルールを作成する必要のある namespace の monitoring-rules-editクラスターロールを持つユーザーとしてログインしている。
- 
							OpenShift CLI (oc) がインストールされている。
手順
- 
							アラートルールの YAML ファイルを作成します。この例では、example-app-alerting-rule.yamlという名前です。
- アラートルール設定を YAML ファイルに追加します。以下に例を示します。 注記- アラートルールの作成時に、同じ名前のルールが別のプロジェクトにある場合に、プロジェクトのラベルがこのアラートルールに対して適用されます。 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - この設定により、 - example-alertという名前のアラートルールが作成されます。アラートルールは、サンプルサービスによって公開される- versionメトリクスが- 0になるとアラートを実行します。重要- ユーザー定義のアラートルールには、独自のプロジェクトおよびクラスターメトリクスのメトリクスを含めることができます。別のユーザー定義プロジェクトのメトリクスを含めることはできません。 - たとえば、ユーザー定義プロジェクト - ns1のアラートルールには、- ns1からのメトリックと、CPU やメモリーのメトリックなどのクラスターメトリックを含めることができます。ただし、ルールには- ns2からのメトリクスを含めることはできません。- さらに、 - openshift-*コア OpenShift Container Platform プロジェクトのアラートルールは作成できません。デフォルトで OpenShift Container Platform モニタリングはこれらのプロジェクトのアラートルールのセットを提供します。
- 設定ファイルをクラスターに適用します。 - oc apply -f example-app-alerting-rule.yaml - $ oc apply -f example-app-alerting-rule.yaml- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - アラートルールの作成には多少時間がかかります。 
9.4.3. プラットフォームメトリクスをクエリーしないアラートルールの待ち時間の短縮
					ユーザー定義プロジェクトのアラートルールがデフォルトのクラスターメトリクスをクエリーしない場合は、openshift-user-workload-monitoring プロジェクトの Prometheus インスタンスにルールを直接デプロイできます。これにより、Thanos Ruler が必要でない場合にこれをバイパスすることで、アラートルールの待ち時間が短縮されます。これは、モニタリングコンポーネントの全体的な負荷を最小限に抑えるのに役立ちます。
				
						ユーザー定義プロジェクトのデフォルトの OpenShift Container Platform メトリクスは、CPU およびメモリーの使用状況、帯域幅の統計、およびパケットレートについての情報を提供します。ルールを openshift-user-workload-monitoring プロジェクトの Prometheus インスタンスに直接デプロイする場合、これらのメトリクスをアラートルールに含めることはできません。このセクションで説明した手順は、ドキュメントを参照し、モニタリング用のアーキテクチャーの全体像を把握している場合にのみ使用してください。
					
前提条件
- ユーザー定義プロジェクトのモニタリングを有効にしている。
- 
							アラートルールを作成する必要のある namespace の monitoring-rules-editクラスターロールを持つユーザーとしてログインしている。
- 
							OpenShift CLI (oc) がインストールされている。
手順
- 
							アラートルールの YAML ファイルを作成します。この例では、example-app-alerting-rule.yamlという名前です。
- キーが - openshift.io/prometheus-rule-evaluation-scopeで、値が- leaf-prometheusのラベルが含まれる YAML ファイルにアラートルール設定を追加します。以下に例を示します。- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
					そのラベルがある場合、アラートルールは openshift-user-workload-monitoring プロジェクトの Prometheus インスタンスにデプロイされます。ラベルが存在しない場合、アラートルールは Theanos Ruler にデプロイされます。
				
- 設定ファイルをクラスターに適用します。 - oc apply -f example-app-alerting-rule.yaml - $ oc apply -f example-app-alerting-rule.yaml- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - アラートルールの作成には多少時間がかかります。 
- OpenShift Container Platform 4.10 モニタリングアーキテクチャーに関する詳細は、Monitoring overview を参照してください。
9.4.4. ユーザー定義プロジェクトのアラートルールへのアクセス
					ユーザー定義プロジェクトのアラートルールを一覧表示するには、プロジェクトの monitoring-rules-view クラスターロールが割り当てられている必要があります。
				
前提条件
- ユーザー定義プロジェクトのモニタリングを有効にしている。
- 
							プロジェクトの monitoring-rules-viewクラスターロールを持つユーザーとしてログインしている。
- 
							OpenShift CLI (oc) がインストールされている。
手順
- <project>でアラートルールを一覧表示できます。- oc -n <project> get prometheusrule - $ oc -n <project> get prometheusrule- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- アラートルールの設定を一覧表示するには、以下を実行します。 - oc -n <project> get prometheusrule <rule> -o yaml - $ oc -n <project> get prometheusrule <rule> -o yaml- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
9.4.5. 単一ビューでのすべてのプロジェクトのアラートルールの一覧表示
クラスター管理者は、OpenShift Container Platform のコアプロジェクトおよびユーザー定義プロジェクトのアラートルールを単一ビューで一覧表示できます。
前提条件
- 
							cluster-adminロールを持つユーザーとしてクラスターにアクセスできる。
- 
							OpenShift CLI (oc) がインストールされている。
手順
- 
							Administrator パースペクティブで、Observe Alerting Alerting Rules に移動します。 
- Filter ドロップダウンメニューで、Platform および User ソースを選択します。 注記- Platform ソースはデフォルトで選択されます。 
9.4.6. ユーザー定義プロジェクトのアラートルールの削除
ユーザー定義プロジェクトのアラートルールを削除できます。
前提条件
- ユーザー定義プロジェクトのモニタリングを有効にしている。
- 
							アラートルールを作成する必要のある namespace の monitoring-rules-editクラスターロールを持つユーザーとしてログインしている。
- 
							OpenShift CLI (oc) がインストールされている。
手順
- <namespace>のルール- <foo>を削除するには、以下を実行します。- oc -n <namespace> delete prometheusrule <foo> - $ oc -n <namespace> delete prometheusrule <foo>- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow