2.2. カスタムメトリックの追加
metrics_list.yaml
ファイルにメトリックを追加して、マネージドクラスターから収集されるようにします。
カスタムメトリックを追加する前に、oc get mco observability -o yaml
コマンドで、mco observability
が有効になっていることを確認します。status.conditions.message
の メッセージが Observability components are deployed and running
となっていることを確認します。
observability-metrics-custom-allowlist.yaml
という名前のファイルを作成し、metrics_list.yaml
パラメーターにカスタムメトリックの名前を追加します。ConfigMap の YAML は、以下の内容のようになります。
kind: ConfigMap apiVersion: v1 metadata: name: observability-metrics-custom-allowlist data: metrics_list.yaml: | names: - node_memory_MemTotal_bytes rules: - record: apiserver_request_duration_seconds:histogram_quantile_90 expr: histogram_quantile(0.90,sum(rate(apiserver_request_duration_seconds_bucket{job=\"apiserver\", verb!=\"WATCH\"}[5m])) by (verb,le))
ユーザーワークロードメトリクスについては、ユーザーワークロードメトリクスの追加 セクションを参照してください。
-
names
セクションで、マネージドクラスターから収集されるカスタムメトリックの名前を追加します。 -
rules
セクションで、パラメーターペアexpr
とrecord
に値を 1 つだけ入力し、クエリー式を定義します。メトリックは、マネージドクラスターのrecord
パラメーターで定義される名前で収集されます。クエリー式の実行後の結果が、メトリックの値として返されます。 -
names
とrules
セクションはオプションです。セクションのいずれかまたは両方を使用できます。
oc apply -n open-cluster-management-observability -f observability-metrics-custom-allowlist.yaml
のコマンドで、open-cluster-management-observability
namespace に observability-metrics-custom-allowlist
ConfigMap を作成します。
Grafana ダッシュボードから Explore ページからメトリックをクエリーし、カスタムメトリックからのデータが収集されていることを確認します。独自のダッシュボードでカスタムメトリックを使用することもできます。ダッシュボードの表示について、詳しくは Grafana ダッシュボードの使用 を参照してください。
2.2.1. ユーザーワークロードメトリクスの追加
OpenShift Container Platform のワークロードから OpenShift Container Platform ユーザー定義メトリクスを収集できます。監視を有効にする必要があります。ユーザー定義プロジェクトのモニタリングの有効化 を参照してください。
ユーザー定義のワークロードの監視が有効になっているマネージドクラスターがある場合、ユーザーのワークロードは test
namespace に配置され、メトリクスを生成します。これらのメトリクスは、OpenShift Container Platform ユーザーワークロードから Prometheus によって収集されます。
test
namespace に observability-metrics-custom-allowlist
という名前の ConfigMap を作成して、ユーザーワークロードからメトリクスを収集します。以下の例を参照してください。
kind: ConfigMap apiVersion: v1 metadata: name: observability-metrics-custom-allowlist namespace: test data: uwl_metrics_list.yaml: | names: - sample_metrics
-
uwl_metrics_list.yaml
は、ConfigMap データのキーです。 -
ConfigMap データの値は YAML 形式です。
names
セクションには、test
namespace から収集するメトリック名のリストが含まれます。ConfigMap を作成すると、ターゲット namespace から指定されたメトリクスが可観測性コレクターによって収集され、ハブクラスターにプッシュされます。
2.2.2. デフォルトメトリックの削除
マネージドクラスターで特定のメトリック用にデータを収集しない場合は、observability-metrics-custom-allowlist.yaml
ファイルからメトリックを削除します。メトリックを削除すると、メトリックデータはマネージドクラスターでは収集されません。前述したように、mco observability
が有効になっていることを確認します。
メトリック名の先頭にハイフン -
を指定して metrics_list.yaml
パラメーターにデフォルトのメトリック名を追加します。例: -cluster_infrastructure_provider
oc apply -n open-cluster-management-observability -f observability-metrics-custom-allowlist.yaml
のコマンドで、open-cluster-management-observability
namespace に observability-metrics-custom-allowlist
ConfigMap を作成します。
特定のメトリックがマネージドクラスターから収集されていないことを確認します。Grafana ダッシュボードからメトリックをクエリーしても、メトリックは表示されません。