1.3. 可観測性のカスタマイズ
可観測性サービスが収集するデータのカスタマイズ、管理、および表示については、以下のセクションを参照してください。
must-gather
コマンドで可観測性リソース用に作成される新規情報についてのログを収集します。詳細は、『トラブルシューティング』ドキュメントの「Must-gather」のセクションを参照してください。
1.3.1. カスタムルールの作成
Prometheus レコードルール および アラートルール を可観測性リソースに追加して、可観測性のインストール時のカスタムルールを作成できます。詳細は、Prometheus configuration を参照してください。
- レコードルールでは、必要に応じてコストの掛かる式を事前に計算するか、コンピュートできます。結果は新たな時系列のセットとして保存されます。
- アラートルールでは、アラートを外部サービスに送信する方法に基づいてアラート条件を指定する機能を提供します。
Prometheus でカスタムルールを定義してアラート条件を作成し、通知を外部メッセージングサービスに送信します。注記: カスタムルールを更新すると、observability-thanos-rule
Pod は自動的に再起動されます。
カスタムルールを作成するには、以下の手順を実行します。
- Red Hat Advanced Cluster Management ハブクラスターにログインします。
open-cluster-management-observability
namespace にthanos-ruler-custom-rules
という名前の ConfigMap を作成します。以下の例のように、キーはcustom_rules.yaml
という名前を指定する必要があります。設定には、複数のルールを作成できます。デフォルトでは、同梱のアラートルールは
open-cluster-management-observability
namespace のthanos-ruler-default-rules
ConfigMap に定義されます。たとえば、CPU の使用状況が定義値を超えた場合に通知するカスタムのアラートルールを作成できます。YAML の内容は以下のようになります。
data: custom_rules.yaml: | groups: - name: cluster-health rules: - alert: ClusterCPUHealth-jb annotations: summary: Notify when CPU utilization on a cluster is greater than the defined utilization limit description: "The cluster has a high CPU usage: {{ $value }} core for {{ $labels.cluster }} {{ $labels.clusterID }}." expr: | max(cluster:cpu_usage_cores:sum) by (clusterID, cluster, prometheus) > 0 for: 5s labels: cluster: "{{ $labels.cluster }}" prometheus: "{{ $labels.prometheus }}" severity: critical
thanos-ruler-custom-rules
ConfigMap 内にカスタムの録画ルールを作成することもできます。たとえば、Pod のコンテナーメモリーキャッシュの合計を取得できるようにする記録ルールを作成することができます。YAML の内容は以下のようになります。
data: custom_rules.yaml: | groups: - name: container-memory rules: - record: pod:container_memory_cache:sum expr: sum(container_memory_cache{pod!=""}) BY (pod, container)
注記: これが最初の新規カスタムルールである場合には、すぐに作成されます。ConfigMap に変更が加えられると、設定は自動的に再読み込みされます。この設定は、
observability-thanos-ruler
サイドカー内のconfig-reload
により再読み込みされます。
アラートルールが適切に機能していることを確認するには、以下の手順を実行します。
- Grafana ダッシュボードにアクセスし、Explore アイコンをクリックします。
-
メトリクス の検索バーで、「
ALERTS
」と入力してクエリーを実行します。システムにある現在保留中または実行状態にあるALERTS
がすべて表示されます。 - アラートが表示されない場合は、ルールを再度表示して、式が正しいかどうかを確認します。
カスタムルールが作成されました。