このドキュメントでは、Google Cloud Managed Service for Prometheus を使用して Kube 状態指標から指標を収集できるように、Google Kubernetes Engine のデプロイを構成する方法について説明します。このドキュメントでは、次の方法について説明します。
- 指標を報告するように Kube 状態指標を設定する。
- エクスポートされた指標を収集するために、Managed Service for Prometheus の PodMonitoring リソースを構成する。
- Cloud Monitoring のダッシュボードにアクセスして指標を表示する。
- 指標をモニタリングするようにアラートルールを構成する。
以下の手順は、Managed Service for Prometheus でマネージド コレクションを使用している場合にのみ適用されます。セルフデプロイ コレクションを使用している場合は、Kube 状態指標のソース リポジトリでインストール情報をご覧ください。
以下の手順は一例であり、ほとんどの Kubernetes 環境で機能します。セキュリティ ポリシーや組織のポリシーの制限により、アプリケーションやエクスポータのインストールに問題がある場合は、オープンソース ドキュメントでサポート情報を確認することをおすすめします。
前提条件
Managed Service for Prometheus およびマネージド コレクションを使用して Kube 状態指標から指標を収集するには、デプロイが次の要件を満たしている必要があります。
- クラスタで Google Kubernetes Engine バージョン 1.21.4-gke.300 以降を実行している必要があります。
- マネージド コレクションを有効にして、Managed Service for Prometheus を実行する必要があります。詳細については、マネージド コレクションを使ってみるをご覧ください。
- インテグレーションで Cloud Monitoring で利用可能なダッシュボードを使用するには、
kube-state-metrics
バージョン 2.4.2 以降を使用する必要があります。利用可能なダッシュボードの詳細については、ダッシュボードをインストールするをご覧ください。
マネージド Kube 状態指標
GKE では、この統合を構成する代わりに、kube 状態指標のフルマネージド デプロイを使用できます。インストール可能なパッケージを使用すると、セットアップが簡単な独自のキュレートされた kube 状態指標のセットを利用できます。詳細については、パッケージ: Kube 状態指標をご覧ください。
Kube 状態指標をインストールする
Kube 状態指標のインストールには、次の構成を使用します。
構成の変更をローカル ファイルから適用するには、次のコマンドを実行します。
kubectl apply -f FILE_NAME
Terraform を使用して構成を管理することもできます。
ルールとアラートを定義する
次の Rules
構成を使用して、指標に関するアラートを定義できます。
構成の変更をローカル ファイルから適用するには、次のコマンドを実行します。
kubectl apply -f FILE_NAME
Terraform を使用して構成を管理することもできます。
ルールをクラスタに適用する方法については、マネージド ルールの評価とアラートをご覧ください。
このRules
構成は kube-state-metrics リポジトリに反映されたルールとアラートを元にしています。
構成を確認する
Metrics Explorer を使用すると、エクスポータが正しく構成されていることを確認できます。Cloud Monitoring が指標を取り込むまでに 1~2 分かかる場合があります。
指標が取り込まれていることを確認します。
-
Google Cloud コンソールで、[leaderboardMetrics Explorer] ページに移動します。
検索バーを使用してこのページを検索する場合は、小見出しが [Monitoring] である結果を選択します。
- クエリビルダー ペインのツールバーで、[codeMQL] または [codePROMQL] という名前のボタンを選択します。
- [言語] で [PromQL] が選択されていることを確認します。言語切り替えボタンは、クエリの書式設定と同じツールバーにあります。
- 次のクエリを入力して実行します。
up{job="kube-state-metrics", cluster="CLUSTER_NAME", namespace="gmp-public"}
ダッシュボードをインストールする
Cloud Monitoring には、インテグレーション用サンプル ダッシュボードのライブラリが用意されています。サンプル ライブラリには、[Prometheus] ダッシュボードが含まれています。このダッシュボードをインストールして、Google Cloud コンソールでデータを表示できます。
[Kubernetes Cluster Prometheus Overview] ダッシュボードを使用するには、ノード エクスポータをインストールする必要があります。[Kubernetes Pod Prometheus Overview] ダッシュボードには、ノード エクスポータと cAdvisor / Kubelet をインストールする必要があります。
サンプル ライブラリからダッシュボードをインストールするには、次のように操作します。
-
Google Cloud コンソールで [ダッシュボード] ページに移動します。
検索バーを使用してこのページを検索する場合は、小見出しが [Monitoring] の結果を選択します。
- [サンプル ライブラリ] タブを選択します。
- [Other] カテゴリを選択します。
- (省略可)インストールすることなくダッシュボードの静的プレビューを表示するには、[プレビュー] をクリックします。
- インストールするダッシュボードを選択して、 [インポート] をクリックします。
ダッシュボードのインストールの詳細については、サンプル ダッシュボードのインストールをご覧ください。
トラブルシューティング
指標の取り込みに関する問題のトラブルシューティングについては、取り込み側の問題のトラブルシューティングのエクスポータからの収集に関する問題をご覧ください。