第5章 Prometheus クラスターモニタリング
5.1. 概要
OpenShift Container Platform には、Prometheus オープンソースプロジェクトおよびその幅広いエコシステムをベースとする事前に設定された、自己更新型のモニターリングスタックが同梱されます。これは、クラスターコンポーネントのモニターリング機能を提供し、一連のアラートと共に提供されるためにクラスター管理者に対して問題の発生について即時に通知し、一連の Grafana ダッシュボードを提供します。
上図でハイライトされているように、OpenShift Container Platform Cluster Monitoring Operator (CMO) はモニターリングスタックの中心に位置します。 これは、デプロイされたモニターリングコンポーネントおよびリソースを監視し、それらが最新の状態にあることを確認します。
Prometheus Operator (PO) は、Prometheus および Alertmanager インスタンスを作成し、設定し、管理します。また、Kubernetes ラベルのクエリーに基づいてモニタリングターゲットの設定を自動生成します。
Prometheus および Alertmanager に加えて、OpenShift Container Platform Monitoring には node-exporter および kube-state-metrics も含まれます。Node-exporter は、ノードについてのメトリクスを収集するために各ノードにデプロイされるエージェントです。kube-state-metrics exporter エージェントは、Kubernetes オブジェクトを Prometheus で消費できるメトリクスに変換します。
クラスターモニターリングの一部としてモニターされるターゲットには、以下が含まれます。
- Prometheus 自体
- Prometheus-Operator
- cluster-monitoring-operator
- Alertmanager クラスターインスタンス
- Kubernetes apiserver
- kubelet (コンテナーメトリクス用に kubelet で組み込まれる cAdvisor)
- kube-controllers
- kube-state-metrics
- node-exporter
- etcd (etcd モニターリングが有効にされる場合)
これらのコンポーネントはすべて自動的に更新されます。
OpenShift Container Platform Cluster Monitoring Operator についての詳細は、Cluster Monitoring Operator GitHub プロジェクトを参照してください。
互換性が保証された更新を提供できるようにするため、OpenShift Container Platform Monitoring スタックの設定は明示的に利用可能なオプションのみに制限されます。