9.7. FlowMetric API を使用したカスタムグラフの設定
OpenShift Container Platform Web コンソールでダッシュボードのグラフを生成できます。グラフは、FlowMetric
リソースの charts
セクションを定義することで、管理者の Dashboard メニューで表示できます。
手順
-
Web コンソールで、Operators
Installed Operators に移動します。 - NetObserv Operator の Provided APIs 見出しで、FlowMetric を選択します。
- Project: ドロップダウンリストで、Network Observability Operator インスタンスのプロジェクトを選択します。
- Create FlowMetric をクリックします。
-
次のサンプル設定と同じように
FlowMetric
リソースを設定します。
例9.3 クラスターの外部ソースから受信した Ingress バイト数を追跡するためのチャート
- 1
FlowMetric
リソースは、FlowCollector
spec.namespace
で定義された namespace (デフォルトではnetobserv
) に作成する必要があります。
検証
-
Pod が更新されたら、Observe
Dashboards に移動します。 NetObserv / Main ダッシュボードを検索します。NetObserv / Main ダッシュボードの下、または必要に応じて作成したダッシュボード名の下にある次の 2 つのパネルを確認します。
- すべてのディメンションにわたりグローバルな外部 Ingress レートを合計したテキスト形式の単一の統計
- 上記と同じメトリクスを示す、宛先ワークロードごとの時系列グラフ
クエリー言語の詳細は、Prometheus のドキュメント を参照してください。
例9.4 クラスター外部 Ingress トラフィックの RTT 遅延のグラフ
この例では、histogram_quantile
関数を使用して p50
と p99
を表示します。
ヒストグラムを作成するときに自動的に生成されるメトリクス $METRIC_sum
をメトリクス $METRIC_count
で割ることで、ヒストグラムの平均を表示できます。前述の例では、これを実行するための Prometheus クエリーは次のとおりです。
promQL: "(sum(rate($METRIC_sum{DstK8S_Namespace!=\"\"}[2m])) by (DstK8S_Namespace,DstK8S_OwnerName) / sum(rate($METRIC_count{DstK8S_Namespace!=\"\"}[2m])) by (DstK8S_Namespace,DstK8S_OwnerName))*1000"
promQL: "(sum(rate($METRIC_sum{DstK8S_Namespace!=\"\"}[2m])) by (DstK8S_Namespace,DstK8S_OwnerName) / sum(rate($METRIC_count{DstK8S_Namespace!=\"\"}[2m])) by (DstK8S_Namespace,DstK8S_OwnerName))*1000"
検証
-
Pod が更新されたら、Observe
Dashboards に移動します。 - NetObserv / Main ダッシュボードを検索します。NetObserv / Main ダッシュボードの下、または必要に応じて作成したダッシュボード名の下にある新しいパネルを表示します。
クエリー言語の詳細は、Prometheus のドキュメント を参照してください。