GKE のオブザーバビリティ


このページでは、アプリケーションの状態を把握し、その可用性と信頼性を維持する方法について説明します。

GKE クラスタを作成すると、Cloud Logging、Cloud Monitoring、Google Cloud Managed Service for Prometheus がデフォルトで有効になり、Kubernetes に特化したオブザーバビリティ機能が提供されます。

  • 組み込みのダッシュボードを使用して、デフォルトの指標とログを表示し、推奨アラートを設定します。
  • 追加のオブザーバビリティ パッケージを有効にして、Kubernetes のコンポーネントとオブジェクトをモニタリングし、収集したデータをデバッグとトラブルシューティングに使用できます。
  • クラスタ上で実行されているサードパーティ アプリケーションのデータ収集を構成します。
  • ニーズに合わせて独自の指標、ダッシュボード、アラートを定義できます。

GKE には、Cloud Logging や Cloud Monitoring との統合に加えて、アプリケーションの健全性の監視と維持に役立つ機能もあります。

デフォルトのオブザーバビリティ機能

デフォルトでは、GKE クラスタは次のように構成されます。

データ収集のカスタマイズと強化

GKE クラスタから Cloud Logging と Cloud Monitoring に送信するログと指標(存在する場合)を制御できます。

Google Cloud Managed Service for Prometheus を有効にするかどうかも制御できます。構成手順については、GKE のロギングとモニタリングの構成をご覧ください。

GKE Autopilot クラスタでは、Cloud Monitoring と Cloud Logging のインテグレーションを無効にすることはできません。

その他のオブザーバビリティ指標

1 つ以上のオブザーバビリティ指標パッケージを有効にすると、追加のオブザーバビリティ指標を収集できます。

  • コントロール プレーンの指標: Kubernetes API サーバー、スケジューラ、コントローラ マネージャーの指標を収集して、Kubernetes コンポーネントの状態をモニタリングします。これらの指標は、サービスレベル目標(SLO)を定義する際にサービスの状態を把握するのに有用なシグナルです。
  • Kube 状態指標: Deployment、ノード、Pod などの Kubernetes オブジェクトの状態をモニタリングします。

プロジェクトで GKE Enterprise を有効にしている場合、クラスタの作成時にフリートに登録すると、これらの指標がデフォルトで有効になります。

サードパーティの指標とユーザー定義の指標

Postgres、MongoDB、Redis などのクラスタで実行されているサードパーティ アプリケーションをモニタリングするには、Google Cloud Managed Service for Prometheus の Prometheus エクスポーターを使用します。

カスタム エクスポーターを作成して、健全性とパフォーマンスについて他のシグナルをモニタリングすることもできます。

収集したデータを使用する

収集したデータを使用すると、アプリケーションの開発、デプロイ、保守の際に、アプリケーションの健全性の分析、デバッグ、トラブルシューティング、テストを行うことができます。

GKE には、すぐに使用できる組み込みのオブザーバビリティ機能が用意されています。

  • クラスタとワークロードの収集されたデータを GKE オブザーバビリティ ダッシュボードに表示します。提供されるダッシュボードは、次の目的でカスタマイズできます。

    • CPU 使用率、メモリ使用率、対応待ちのインシデント数など、主要なクラスタ指標を表示します。
    • インフラストラクチャ、ワークロード、Service 別にクラスタを表示します。
    • Namespace、ノード、ワークロード、Service、Pod、コンテナを検査します。
    • Pod とコンテナについて、時間の関数として指標を表示し、ログエントリを表示します。

    必要に応じて、独自のダッシュボードを作成することも、Grafana ダッシュボードをインポートすることもできます。

  • [オブザーバビリティ] タブでは、推奨されるアラート ポリシーを作成して、問題に関する通知を受け取ることができます。アラートの詳細については、アラートの概要をご覧ください。

  • SLO を作成し、収集した GKE 指標を使用してサービスのパフォーマンス目標をモニタリングします。

  • GKE ハンドブックを使用して、スケジュールできない Pod再起動後に繰り返しクラッシュするコンテナなどの一般的な問題のトラブルシューティングを行います。

  • ログ エクスプローラMetrics ExplorerError Reporting などのツールを使用してデータを探索し、分析します。

  • Cloud Audit Logs の一部として管理アクティビティとアクセスを記録する GKE の監査ログを確認します。監査ログポリシーは、記録されるイベントと、ログエントリが管理アクティビティ ログとデータアクセス ログのどちらに属するかを決めます。

その他の機能

GKE は他の Google Cloud サービスと統合できるため、クラスタとワークロードのモニタリングと管理に役立ちます。

料金

Cloud Logging(Cloud Audit Logs を含む)、Cloud Monitoring、Google Cloud Managed Service for Prometheus との統合の料金は、収集されたログと指標の量に基づきます。詳細については、料金のページをご覧ください。

その他の機能に記載されている他の Google Cloud サービスが提供する機能には、別の料金が設定されています。詳細については、これらのドキュメント ページの料金セクションをご覧ください。

次のステップ