すべてのランタイムをモニタリング: Managed Service for Prometheus が Cloud Run に対応
Google Cloud Japan Team
※この投稿は米国時間 2024 年 1 月 23 日に、Google Cloud blog に投稿されたものの抄訳です。
アプリケーションを仮想マシン、Kubernetes、サーバーレス ランタイムのいずれで実行していようと、重要なビジネス指標とアプリケーション指標をモニタリングできる必要があります。近年、Prometheus はモニタリングや指標の選択肢としてよく使われるようになってきましたが、大規模に実行することは困難です。Google Cloud の Managed Service for Prometheus は、Google Kubernetes Engine(GKE)、Compute Engine、オンプレミス、さらにその他のクラウドで実行されるアプリケーションに対応しており、複数の環境にわたって Prometheus を大規模に実行する際の苦労を排除するものですが、このたび、Managed Service for Prometheus が Cloud Run にも対応したことをお知らせします。Cloud Run は Google Cloud のサーバーレス ランタイムです。
Cloud Run でアプリケーションをデプロイすることに関心を持ちながらも、Prometheus と Prometheus コミュニティの堅牢な指標やオブザーバビリティのベスト プラクティスをあきらめられないお客様が、両方の長所を利用できるようになりました。ネイティブの時系列データとユーザー定義の指標を Cloud Run からエクスポートする、公式にサポートされた方法が確立されたことにより、組織は Cloud Run のシンプルさと使いやすさのメリットを享受しながら Prometheus エコシステムを使い続けることができます。しかも、OpenTelemetry エコシステムを好む企業のために、このリリースは Cloud Run からの OTLP 指標のエクスポートにも対応しています。
あらゆるデプロイメントとランタイム向けの Prometheus 指標
この機能のリリースにより、一度 Prometheus または OTLP 指標でアプリケーションを計測すると、Compute Engine、GKE、Cloud Run にデプロイし、Cloud Monitoring または Grafana のいずれかで 1 行の PromQL を使ってデータのクエリやアラートをまとめて実行できるようになります。また、マネージド コレクションや OpenTelemetry を使って Google Cloud の外部から指標を収集するように Managed Service for Prometheus を構成すれば、オンプレミスや他のクラウドを含む複数の環境全体で Prometheus の指標データをクエリすることもできます。
Managed Service for Prometheus を使用すると、クロス環境、クロスランタイム、クロスクラウドのモニタリングが容易になります。
Cloud Run サイドカーの機能と柔軟性を Managed Service for Prometheus のシンプルさと組み合わせることで、コレクションを複雑に構成しなくても Cloud Run から指標を取り込むことができます。コレクタ サイドカーのイメージを Cloud Run サービスに追加すれば、後は Google Cloud が処理します。GKE または Compute Engine で同じ Prometheus 指標を収集したら、その指標をすべての環境にわたって簡単かつ直感的にクエリできます。
Cloud Monitoring UI で 1 行の PromQL を使って、ランタイム全体で同じ指標をクエリする際の画面。
サーバーレス環境におけるオブザーバビリティの向上
Cloud Run をご利用のお客様の多くは、Cloud Monitoring の Cloud Run 指標をそのまま使用しています。ただし、これらの指標はサービスのパフォーマンスについて有効な情報を提供しますが、アプリケーション内部の情報については提供しません。また、エンドユーザーがカスタマイズすることもできません。Cloud Run で Managed Service for Prometheus がサポートされたことにより、ビジネス指標、ランタイム指標、または時系列として提供されるその他のデータについて、Cloud Run デプロイメント内からモニタリングし、アラートを送信できるようになりました。
Cloud Run で Prometheus 指標がサポートされたことにより、Kubernetes から Cloud Run への移行も容易になりました。Prometheus は Kubernetes をモニタリングするための事実上の標準となり、クラウド ネイティブ コミュニティの 86% で使用されています。このリリースにより、ユーザーは指標を書き換えたり、オープンソース コミュニティで作成された豊富なリソースの活用をあきらめたり、モニタリング、クエリ、アラートの方法を変更したりすることなく、好みや設定に応じて同じアプリケーションを Cloud Run または GKE のいずれかにデプロイできます。また、使用するランタイム環境に関係なく、すでに導入しているものと同じ指標パッケージ、チャート、ダッシュボード、リアルタイム アラートを使用できます。
このリリースは、Prometheus の規則と(サーバーがスクレイピングする)「pull」指標をサポートしています。また、OpenTelemetry の規則や(サーバーに直接エクスポートされる)「push」指標を使いたいお客様のために、Cloud Run は OpenTelemetry サイドカーを使用した OTLP 指標の作成もサポートしています。
使ってみる
この機能はすべての Cloud Run デプロイメントですぐに使用できます。詳細と手順については、Managed Service for Prometheus ドキュメントの「Cloud Run 用の Prometheus サイドカーを使用する」セクションをご確認ください。
さらに詳しく知りたい方は、2024 年 3 月 5 日に開催されるウェブセミナー Instrumenting Cloud Run with Prometheus or OpenTelemetry metrics にぜひご参加ください。
ー シニア プロダクト マネージャー Lee Yanco
ー Google Cloud サーバーレス担当プロダクト マネージャー Sagar Randive