Cloud Monitoring のサービス ディスカバリの変更点と適応方法
Leonid Yankulin
Senior Developer Relations Engineer
Ethan Truong
Software Engineer


この通知は、Cloud Monitoring でのサービスの定義方法が最近変更されたことをお知らせするものです。変更前は、AppEngine、Cloud Run、Google Kubernetes Engine(GKE)にプロビジョニングされたサービスが Cloud Monitoring により自動的に検出されていました。検出されたサービスは [サービスの概要] ダッシュボードに自動的に追加されました。
現在は、[サービスの概要] ダッシュボードのすべてのサービスを明示的に作成する必要があります。この作業が簡単にできるよう、新しいサービスを定義するときには、自動検出されたサービスに基づく候補リストがコンソールの UI に表示されます。自動検出されたサービスの完全なリストには、AppEngine、Cloud Run、Istio のマネージド サービスに加え、GKE のワークロードとサービスが含まれます。
UI を使用する以外に、services.create API または Terraform の google_monitoring_service リソースを使用して Cloud Monitoring にマネージド サービスを追加することもできます。
たとえば、cluster-001 という GKE クラスタが us-central1 リージョンにプロビジョニングされ、デフォルトの名前空間にサービス frontend がある場合、Cloud Shell で次のコマンドを実行することで、このサービスを Cloud Monitoring の対象として定義できます。
サービスの定義が、いずれかのマネージド サービスと 1 対 1 で対応しない場合は、カスタム サービスを定義することでそれを Cloud Monitoring に追加できます。使用する API リクエストは同じです。
Terraform ではそのための Terraform リソース google_monitoring_custom_service を使用します。
カスタム サービスとは異なり、自動検出されるサービスには、可用性とレイテンシの 2 つの事前定義された SLI があります。これらの SLI は、リクエストの処理時間や HTTP リクエストのステータスなど、自動的に取得されるマネージド サービスの指標を使用します。カスタム サービスについては、リクエスト ベースまたはウィンドウ ベースの SLI を使用して、これらの SLI を明示的に定義する必要があります。
サービスの SLO やエラー バジェットのトラッキングの詳細については、SLO の作成と SLO ベースのアラートに関する説明をご覧ください。可用性とレイテンシの SLO で使用される事前定義の SLI については、こちらのブログ投稿をご覧ください。
-シニア デベロッパーリレーションズ エンジニア Leonid Yankulin
-ソフトウェア エンジニア Ethan Truong

