Google Cloud Run for Anthos
概要
Google Cloud Run for Anthos は、ハイブリッドおよびマルチクラウド環境のための柔軟なサーバーレス開発プラットフォームです。Cloud Run for Anthos は、Knative サービスをフルサポートする、Google のマネージドサービスです。フルマネージドの Google Cloud をご利用の場合は、Google Cloud Run ドキュメントをご参照ください。
Datadog Google Cloud Platform インテグレーションを使用して、Google Cloud Run for Anthos からメトリクスを収集できます。
セットアップ
メトリクスの収集
インストール
Google Cloud Platform インテグレーションをまだセットアップしていない場合は、最初にセットアップします。
Workload Identity を使用してすでに Cloud Run for Anthos サービスを認証している場合は、他に必要な操作はありません。
Workload Identity を有効にしていない場合、Knative メトリクスの収集には Workload Identity を使用するよう変更する必要があります。これには、Kubernetes サービスアカウントと Google サービスアカウントのバインディングと、Workload Identity を使用してメトリクスを回収する各サービスの構成が含まれます。
セットアップの詳しい手順については、Google Cloud Workload Identity をご覧ください。
収集データ
Google Cloud Run for Anthos はサービスログも公開します。
Google Cloud Run のログは Google Cloud Logging で収集し、Cloud Pub/Sub トピックを通じて Dataflow ジョブに送信することができます。まだの場合は、Datadog Dataflow テンプレートでロギングをセットアップしてください。
これが完了したら、Google Cloud Run のログを Google Cloud Logging から Pub/Sub トピックへエクスポートします。
Cloud Run for Anthos へ移動し、希望するサービスをクリックして Logs タブを開きます。
View in Logs Explorer をクリックして Google Cloud Logging Page へ移動します。
シンクを作成し、シンクに適宜名前を付けます。
宛先として “Cloud Pub/Sub” を選択し、その目的で作成された Pub/Sub トピックを選択します。注: Pub/Sub トピックは別のプロジェクトに配置できます。
作成をクリックし、確認メッセージが表示されるまで待ちます。
トレースとカスタムメトリクス
Datadog Admission Controller を使用して、APM トレーサーと DogStatsD クライアントを自動的に構成します。次のいずれかの方法を使用して、DD_AGENT_HOST
および DD_ENTITY_ID
の環境変数を挿入します。
admission.datadoghq.com/enabled: "true"
ラベルをポッドに追加する。mutateUnlabelled: true
を設定して Cluster Agent の Admission Controller を構成します。
ポッドで環境変数を受信しないようにするには、admission.datadoghq.com/enabled: "false"
ラベルを追加します。これは mutateUnlabelled: true
を設定している場合でも機能します。詳細については、Datadog Admission Controller のドキュメントを参照してください。
収集データ
メトリクス
gcp.knative.eventing.broker.event_count (count) | Number of events received by a broker. |
gcp.knative.eventing.trigger.event_count (count) | Number of events received by a trigger. |
gcp.knative.eventing.trigger.event_dispatch_latencies.avg (gauge) | Average of time spent dispatching an event to a trigger subscriber. Shown as millisecond |
gcp.knative.eventing.trigger.event_dispatch_latencies.p99 (gauge) | 99th percentile of time spent dispatching an event to a trigger subscriber. Shown as millisecond |
gcp.knative.eventing.trigger.event_dispatch_latencies.p95 (gauge) | 95th percentile of time spent dispatching an event to a trigger subscriber. Shown as millisecond |
gcp.knative.eventing.trigger.event_processing_latencies.avg (gauge) | Average of time spent processing an event before it is dispatched to a trigger subscriber. Shown as millisecond |
gcp.knative.eventing.trigger.event_processing_latencies.p99 (gauge) | 99th percentile of time spent processing an event before it is dispatched to a trigger subscriber. Shown as millisecond |
gcp.knative.eventing.trigger.event_processing_latencies.p95 (gauge) | 95th percentile of time spent processing an event before it is dispatched to a trigger subscriber. Shown as millisecond |
gcp.knative.serving.activator.request_count (count) | The number of requests that are routed to the activator. Shown as request |
gcp.knative.serving.activator.request_latencies.avg (gauge) | Average of service request times in milliseconds for requests that go through the activator. Shown as millisecond |
gcp.knative.serving.activator.request_latencies.p99 (gauge) | 99th percentile of service request times in milliseconds for requests that go through the activator. Shown as millisecond |
gcp.knative.serving.activator.request_latencies.p95 (gauge) | 95th percentile of service request times in milliseconds for requests that go through the activator. Shown as millisecond |
gcp.knative.serving.autoscaler.actual_pods (gauge) | Number of pods that are allocated currently. |
gcp.knative.serving.autoscaler.desired_pods (gauge) | Number of pods autoscaler wants to allocate. |
gcp.knative.serving.autoscaler.panic_mode (gauge) | Set to 1 if autoscaler is in panic mode for the revision, otherwise 0. |
gcp.knative.serving.autoscaler.panic_request_concurrency (gauge) | Average requests concurrency observed per pod during the shorter panic autoscaling window. Shown as request |
gcp.knative.serving.autoscaler.requested_pods (gauge) | Number of pods autoscaler requested from Kubernetes. |
gcp.knative.serving.autoscaler.stable_request_concurrency (gauge) | Average requests concurrency observed per pod during the stable autoscaling window. Shown as request |
gcp.knative.serving.autoscaler.target_concurrency_per_pod (gauge) | The desired average requests concurrency per pod during the stable autoscaling window. Shown as request |
gcp.knative.serving.revision.request_count (count) | The number of requests reaching the revision. Shown as request |
gcp.knative.serving.revision.request_latencies.avg (gauge) | Average of service request times in milliseconds for requests reaching the revision. Shown as millisecond |
gcp.knative.serving.revision.request_latencies.p99 (gauge) | 99th percentile of service request times in milliseconds for requests reaching the revision. Shown as millisecond |
gcp.knative.serving.revision.request_latencies.p95 (gauge) | 95th percentile of service request times in milliseconds for requests reaching the revision. Shown as millisecond |
イベント
Google Cloud Run for Anthos インテグレーションには、イベントは含まれません。
サービスチェック
Google Cloud Run for Anthos インテグレーションには、サービスのチェック機能は含まれません。
トラブルシューティング
ご不明な点は、Datadog のサポートチームまでお問合せください。
その他の参考資料