Private Service Connect の接続をモニタリングする

Private Service Connect は主要な指標を Cloud Monitoring に出力します。それらの指標は、Private Service Connect の接続に関する分析情報を確認するのに役立ちます。

指標は自動的に Monitoring に送信されます。カスタム ダッシュボードを作成してアラートを設定し、指標をクエリできます。

公開サービスをモニタリングする

事前定義されたダッシュボードまたは Google Cloud 指標を使用して、公開サービスをモニタリングできます。

公開サービスのダッシュボードを表示する

Private Service Connect には、公開サービスについて次の指標を表示する事前定義のダッシュボードが用意されています。

  • 接続済みの転送ルール
  • 使用中の NAT IP アドレス
  • オープン接続
  • 新しい接続の数
  • 閉じた接続の数
  • ネットワーク トラフィック
  • ネットワークのパケット
  • ドロップした送信パケット数
  • ドロップした受信パケット数

特定の Private Service Connect 公開サービスの詳細ページで事前定義のダッシュボードを表示するには、次の操作を行います。

コンソール

  1. Google Cloud コンソールで [Private Service Connect] ページに移動します。

    [Private Service Connect] に移動

  2. [公開サービス] タブをクリックします。

  3. 既存のサービスをクリックします。

  4. [モニタリング] タブをクリックします。

    ページの上部にあるコントロールを使用して、グラフの表示を変更できます。グラフ上のポイントにカーソルを合わせると、その特定の時間の詳細が表示されます。

公開サービスの指標

次の表の指標タイプの文字列には、compute.googleapis.com/ という接頭辞を付ける必要があります。この接頭辞は、表中の項目では省略されています。

Google Cloud の指標の完全なリストについては、Google Cloud の指標をご覧ください。

指標タイプリリース ステージ
表示名
種類、タイプ、単位
モニタリング対象リソース
説明
ラベル
private_service_connect/producer/closed_connections_count ベータ版
閉じた接続数
DELTAINT64{connection}
gce_service_attachment
PSC アタッチメント ID を経由する閉じた接続の数。60 秒ごとにサンプリングされます。サンプリング後、データは最長 315 秒間表示されません。
ip_protocol: 接続のプロトコル。TCP または UDP になります。
psc_connection_id: Private Service Connect 転送ルールの Private Service Connect 接続 ID。
private_service_connect/producer/connected_consumer_forwarding_rules 一般提供
接続されたコンシューマ転送ルール
GAUGEINT641
gce_service_attachment
PSC アタッチメント ID に接続しているコンシューマ転送ルールの数。60 秒ごとにサンプリングされます。サンプリング後、データは最長 165 秒間表示されません。
private_service_connect/producer/dropped_received_packets_count ベータ版
破棄された受信パケット数
DELTAINT64{packet}
gce_service_attachment
PSC アタッチメント ID によって破棄された受信パケット数。60 秒ごとにサンプリングされます。サンプリング後、データは最長 315 秒間表示されません。
ip_protocol: 接続のプロトコル。TCP または UDP になります。
psc_connection_id: Private Service Connect 転送ルールの Private Service Connect 接続 ID。
private_service_connect/producer/dropped_sent_packets_count ベータ版
破棄された送信パケット数
DELTAINT64{packet}
gce_service_attachment
PSC アタッチメント ID によって破棄された送信パケットの数。60 秒ごとにサンプリングされます。サンプリング後、データは最長 315 秒間表示されません。
ip_protocol: 接続のプロトコル。TCP または UDP になります。
psc_connection_id: Private Service Connect 転送ルールの Private Service Connect 接続 ID。
private_service_connect/producer/new_connections_count ベータ版
新しい接続数
DELTAINT64{connection}
gce_service_attachment
PSC アタッチメント ID 経由で作成された新しい接続の数。60 秒ごとにサンプリングされます。サンプリング後、データは最長 315 秒間表示されません。
ip_protocol: 接続のプロトコル。TCP または UDP になります。
psc_connection_id: Private Service Connect 転送ルールの Private Service Connect 接続 ID。
private_service_connect/producer/open_connections ベータ版
開いている接続
GAUGEINT64{connection}
gce_service_attachment
PSC アタッチメント ID で現在開いている接続の数。60 秒ごとにサンプリングされます。サンプリング後、データは最長 315 秒間表示されません。
ip_protocol: 接続のプロトコル。TCP または UDP になります。
psc_connection_id: Private Service Connect 転送ルールの Private Service Connect 接続 ID。
private_service_connect/producer/received_bytes_count ベータ版
受信バイト数
DELTAINT64By
gce_service_attachment
PSC アタッチメント ID 経由で受信したバイト数(PSC -> サービス)。60 秒ごとにサンプリングされます。サンプリング後、データは最長 315 秒間表示されません。
ip_protocol: 接続のプロトコル。TCP または UDP になります。
psc_connection_id: Private Service Connect 転送ルールの Private Service Connect 接続 ID。
private_service_connect/producer/received_packets_count ベータ版
受信パケット数
DELTAINT64{packet}
gce_service_attachment
PSC アタッチメント ID 経由で受信したパケット数(PSC -> サービス)。60 秒ごとにサンプリングされます。サンプリング後、データは最長 315 秒間表示されません。
ip_protocol: 接続のプロトコル。TCP または UDP になります。
psc_connection_id: Private Service Connect 転送ルールの Private Service Connect 接続 ID。
private_service_connect/producer/sent_bytes_count ベータ版
送信バイト数
DELTAINT64By
gce_service_attachment
PSC アタッチメント ID 経由で送信されたバイト数(サービス -> PSC)。60 秒ごとにサンプリングされます。サンプリング後、データは最長 315 秒間表示されません。
ip_protocol: 接続のプロトコル。TCP または UDP になります。
psc_connection_id: Private Service Connect 転送ルールの Private Service Connect 接続 ID。
private_service_connect/producer/sent_packets_count ベータ版
送信パケット数
DELTAINT64{packet}
gce_service_attachment
PSC アタッチメント ID 経由で送信されたパケット数(サービス -> PSC)。60 秒ごとにサンプリングされます。サンプリング後、データは最長 315 秒間表示されません。
ip_protocol: 接続のプロトコル。TCP または UDP になります。
psc_connection_id: Private Service Connect 転送ルールの Private Service Connect 接続 ID。
private_service_connect/producer/used_nat_ip_addresses 一般提供
使用された NAT IP アドレス
GAUGEINT641
gce_service_attachment
モニタリング対象サービス アタッチメントの IP 使用量。60 秒ごとにサンプリングされます。サンプリング後、データは最長 165 秒間表示されません。

エンドポイントとバックエンドをモニタリングする

事前定義されたダッシュボードまたは Google Cloud 指標を使用して、公開サービスに接続するエンドポイントをモニタリングできます。Google Cloud の指標を使用して、公開サービスに接続するバックエンドをモニタリングできます。

エンドポイントのダッシュボードを表示する

Private Service Connect には、公開サービスに接続するエンドポイントについて次の指標を表示する事前定義のダッシュボードが用意されています。

  • オープン接続
  • 新しい接続の数
  • 閉じた接続の数
  • ネットワーク トラフィック
  • ネットワークのパケット
  • ドロップした送信パケット数
  • ドロップした受信パケット数

特定の Private Service Connect エンドポイントの詳細ページで事前定義のダッシュボードを表示する手順は次のとおりです。

コンソール

  1. Google Cloud コンソールで [Private Service Connect] ページに移動します。

    [Private Service Connect] に移動

  2. [接続エンドポイント] タブをクリックします。

  3. 公開サービスに接続するエンドポイントをクリックします。

  4. [モニタリング] タブをクリックします。

    ページの上部にあるコントロールを使用して、グラフの表示を変更できます。グラフ上のポイントにカーソルを合わせると、その特定の時間の詳細が表示されます。

エンドポイントとバックエンドの指標

Private Service Connect のエンドポイントバックエンドの両方が、Private Service Connect エンドポイント リソースとしてモニタリングされます。

この表の指標は、Google API に接続するエンドポイントまたはバックエンドに対して生成されません。

次の表の指標タイプの文字列には、compute.googleapis.com/ という接頭辞を付ける必要があります。この接頭辞は、表中の項目では省略されています。

Google Cloud の指標の完全なリストについては、Google Cloud の指標をご覧ください。

指標タイプリリース ステージ
表示名
種類、タイプ、単位
モニタリング対象リソース
説明
ラベル
private_service_connect/consumer/closed_connections_count ベータ版
閉じた接続数
DELTAINT64{connection}
compute.googleapis.com/PrivateServiceConnectEndpoint
PSC 接続 ID を介して閉じた TCP/UDP 接続の数。60 秒ごとにサンプリングされます。サンプリング後、データが表示可能になるまで、最長で 315 秒かかります。
ip_protocol: 接続のプロトコル。TCP または UDP のいずれかです。
private_service_connect/consumer/dropped_received_packets_count ベータ版
破棄された受信パケット数
DELTAINT64{packet}
compute.googleapis.com/PrivateServiceConnectEndpoint
PSC 接続 ID によって破棄された受信パケット数。60 秒ごとにサンプリングされます。サンプリング後、データが表示可能になるまで、最長で 315 秒かかります。
ip_protocol: 接続のプロトコル。TCP または UDP のいずれかです。
private_service_connect/consumer/dropped_sent_packets_count ベータ版
破棄された送信パケット数
DELTAINT64{packet}
compute.googleapis.com/PrivateServiceConnectEndpoint
PSC 接続 ID によって破棄された送信パケットの数。60 秒ごとにサンプリングされます。サンプリング後、データが表示可能になるまで、最長で 315 秒かかります。
ip_protocol: 接続のプロトコル。TCP または UDP のいずれかです。
private_service_connect/consumer/new_connections_count ベータ版
新しい接続数
DELTAINT64{connection}
compute.googleapis.com/PrivateServiceConnectEndpoint
PSC 接続 ID を介して作成された新しい TCP/UDP 接続の数。60 秒ごとにサンプリングされます。サンプリング後、データが表示可能になるまで、最長で 315 秒かかります。
ip_protocol: 接続のプロトコル。TCP または UDP のいずれかです。
private_service_connect/consumer/open_connections ベータ版
開いている接続
GAUGEINT64{connection}
compute.googleapis.com/PrivateServiceConnectEndpoint
現在 PSC 接続 ID 上で開いている TCP/UDP 接続の数。60 秒ごとにサンプリングされます。サンプリング後、データが表示可能になるまで、最長で 315 秒かかります。
ip_protocol: 接続のプロトコル。TCP または UDP のいずれかです。
private_service_connect/consumer/received_bytes_count ベータ版
受信バイト数
DELTAINT64By
compute.googleapis.com/PrivateServiceConnectEndpoint
PSC 接続 ID を介して受信したバイト数(PSC -> クライアント)。60 秒ごとにサンプリングされます。サンプリング後、データが表示可能になるまで、最長で 315 秒かかります。
ip_protocol: 接続のプロトコル。TCP または UDP のいずれかです。
private_service_connect/consumer/received_packets_count ベータ版
受信パケット数
DELTAINT64{packet}
compute.googleapis.com/PrivateServiceConnectEndpoint
PSC 接続 ID を介して受信したパケット数(PSC -> クライアント)。60 秒ごとにサンプリングされます。サンプリング後、データが表示可能になるまで、最長で 315 秒かかります。
ip_protocol: 接続のプロトコル。TCP または UDP のいずれかです。
private_service_connect/consumer/sent_bytes_count ベータ版
送信バイト数
DELTAINT64By
compute.googleapis.com/PrivateServiceConnectEndpoint
PSC 接続 ID 経由で送信されたバイト数(クライアント -> PSC)。60 秒ごとにサンプリングされます。サンプリング後、データが表示可能になるまで、最長で 315 秒かかります。
ip_protocol: 接続のプロトコル。TCP または UDP のいずれかです。
private_service_connect/consumer/sent_packets_count ベータ版
送信パケット数
DELTAINT64{packet}
compute.googleapis.com/PrivateServiceConnectEndpoint
PSC 接続 ID 経由で送信されたパケット数(クライアント -> PSC)。60 秒ごとにサンプリングされます。サンプリング後、データが表示可能になるまで、最長で 315 秒かかります。
ip_protocol: 接続のプロトコル。TCP または UDP のいずれかです。

アラート ポリシーを定義する

指標ベースのアラート ポリシーを作成する手順は次のとおりです。公開サービスに関する指標には、Service Attachment のリソースタイプを使用します。エンドポイントまたはバックエンドに関する指標には、Private Service Connect Endpoint のリソースタイプを使用します。

コンソール

アラート ポリシーを作成して指標の値をモニタリングすると、指標が条件に違反した場合に通知できます。

  1. Google Cloud コンソールで、[アラート] ページに移動します。

    [アラート] に移動

    検索バーを使用してこのページを検索する場合は、小見出しが [Monitoring] の結果を選択します。

  2. 通知チャンネルを作成せずに通知を受け取る場合は、[EDIT NOTIFICATION CHANNELS] をクリックして、通知チャンネルを追加します。チャンネルを追加したら、[アラート] ページに戻ります。
  3. [アラート] ページで、[CREATE POLICY] をクリックします。
  4. 指標を選択するには、[指標を選択] メニューを開き、次の操作を行います。
    1. メニューを関連するエントリに限定するには、フィルタバーに「the resource type」と入力します。結果が表示されない場合は、[アクティブなリソースと指標のみを表示] をオフに切り替えます。
    2. リソースタイプとして目的のリソースタイプを選択します。
    3. 指標のカテゴリとして、[Private_service_connect] を選択します。
    4. 指標として、このポリシーに使用する指標を選択します。
    5. [適用] を選択します。
  5. [次へ] をクリックします。
  6. [Configure alert trigger] ページの設定によって、アラートがトリガーされるタイミングが決まります。条件タイプを選択し、必要に応じてしきい値を指定します。詳細については、指標しきい値のアラート ポリシーを作成するをご覧ください。
  7. [次へ] をクリックします。
  8. (省略可)アラート ポリシーに通知を追加するには、[通知チャネル] をクリックします。ダイアログで、メニューから 1 つ以上の通知チャンネルを選択し、[OK] をクリックします。
  9. (省略可)インシデントの自動クローズ期間を更新します。このフィールドは、指標データがない場合に Monitoring がインシデントを閉じるタイミングを決定します。
  10. (省略可)[Documentation] をクリックして、通知メッセージに追加する情報を入力します。
  11. [アラート名] をクリックして、アラート ポリシーの名前を入力します。
  12. [Create Policy] をクリックします。
詳細については、アラート ポリシーをご覧ください。

ログを表示する

Private Service Connect エンドポイントと公開サービスのログは、Cloud Logging を使用して表示できます。Cloud Logging は、ロギングデータとイベントの保存、検索、分析、モニタリング、アラート通知を可能にするフルマネージド サービスです。

  • 監査ログを使用すると、Private Service Connect のアクティビティをモニタリングできます。管理アクティビティ監査ログは常に書き込まれます。
  • VPC Flow Logs を使用すると、Private Service Connect トラフィックをモニタリングできます。モニタリングするサブネットごとに VPC Flow Logs を有効にする必要があります。

これらのログを使用して、サービス コンシューマーとサービス プロデューサー間のイベントを関連付けることができます。たとえば、コンシューマー転送ルールの接続ステータスが予期せず変更された場合は、サービス アタッチメントの削除イベントや更新イベントがないかログを確認するようサービス プロデューサーに依頼できます。

コンソール

  1. Google Cloud コンソールで、[ログ エクスプローラ] ページに移動します。

    [ログ エクスプローラ] に移動

  2. [クエリ] ペインにクエリ エディタ フィールドが表示されない場合は、[クエリを表示] をクリックします。

  3. クエリエディタ フィールドにクエリを入力します。たとえば、エンドポイントの接続ステータスの変更を表示するには、次のクエリを入力します。CONSUMER_PROJECT_ID はコンシューマー プロジェクト ID に置き換えます。

    resource.type="gce_forwarding_rule"
    log_name="projects/CONSUMER_PROJECT_ID/logs/cloudaudit.googleapis.com%2Fsystem_event"
    protoPayload.methodName="LogPscConnectionStatusUpdate"
    

    一般的なロギング イベントを表示するために実行できるクエリの例については、エンドポイントの一般的なロギング イベントをご覧ください。

  4. [クエリを実行] をクリックします。

監査ログのクエリの詳細については、監査ログの表示をご覧ください。

公開サービスの一般的なロギング イベント

次の表に、Private Service Connect 公開サービスの一般的なロギング イベントを示します。

イベントの説明 Logging の高度なフィルタ
サービス アタッチメントの削除
resource.type="audited_resource"
log_name="projects/PRODUCER_PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity"
resource.labels.method="compute.serviceAttachments.delete"
接続調整を有効にするサービス アタッチメント
resource.type="audited_resource"
log_name="projects/PRODUCER_PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity"
resource.labels.method="compute.serviceAttachments.patch"
protoPayload.request.reconcileConnections="true"
コンシューマー プロジェクトの URI を拒否するサービス アタッチメント
resource.type="audited_resource"
log_name="projects/PRODUCER_PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity"
protoPayload.request.consumerRejectLists="CONSUMER_PROJECT_ID"
Private Service Connect サブネットから任意のバックエンド VM インスタンス(GKE ノードを含む)へのトラフィックの VPC Flow Logs
resource.type="gce_subnetwork"
logName="projects/PRODUCER_PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows"
json_payload.connection.src_ip=~"PSC_SUBNET_REGEX.*"
jsonPayload.dest_instance.vm_name=~"VM_INSTANCE_PREFIX.*"

次のように置き換えます。

  • PRODUCER_PROJECT_ID: サービス プロデューサーのプロジェクト ID。
  • CONSUMER_PROJECT_ID: サービス コンシューマーのプロジェクト ID。
  • PSC_SUBNET_REGEX: Private Service Connect サブネットのパターンに一致する正規表現。たとえば、Private Service Connect サブネットが 172.16.0.0/23 の場合は、PSC_SUBNET_REGEX172\.16\.[0-1] に置き換えます。
  • VM_INSTANCE_PREFIX: バックエンド VM インスタンスの接頭辞。

エンドポイントの一般的なロギング イベント

次の表に、Private Service Connect エンドポイントの一般的なロギング イベントを示します。

イベントの説明 Logging の高度なフィルタ
Private Service Connect エンドポイントの作成
resource.type="gce_forwarding_rule"
log_name="projects/CONSUMER_PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity"
protoPayload.methodName="v1.compute.forwardingRules.insert"
"compute.forwardingRules.pscCreate"
Private Service Connect エンドポイントの作成エラー
resource.type="gce_forwarding_rule"
log_name="projects/CONSUMER_PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity"
protoPayload.methodName="v1.compute.forwardingRules.insert"
"compute.forwardingRules.pscCreate"
severity>=ERROR
Private Service Connect エンドポイントの接続ステータスの変更
resource.type="gce_forwarding_rule"
log_name="projects/CONSUMER_PROJECT_ID/logs/cloudaudit.googleapis.com%2Fsystem_event"
protoPayload.methodName="LogPscConnectionStatusUpdate"
Private Service Connect エンドポイント接続の拒否
resource.type="gce_forwarding_rule"
log_name="projects/CONSUMER_PROJECT_ID/logs/cloudaudit.googleapis.com%2Fsystem_event"
protoPayload.methodName="LogPscConnectionStatusUpdate"
protoPayload.metadata.pscConnectionStatus="REJECTED"
割り当て PSC_INTERNAL_LB_FORWARDING_RULES の超過
resource.type="gce_forwarding_rule"
log_name="projects/CONSUMER_PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity"
protoPayload.methodName="v1.compute.forwardingRules.insert"
"QUOTA_EXCEEDED"
severity=ERROR
VM インスタンスから Private Service Connect エンドポイントへのトラフィックの VPC Flow Logs
resource.type="gce_subnetwork"
logName="projects/CONSUMER_PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows"
jsonPayload.connection.dest_ip="PSC_ENDPOINT_IP_ADDRESS"
jsonPayload.src_instance.vm_name="VM_INSTANCE_NAME"

次のように置き換えます。

  • CONSUMER_PROJECT_ID: サービス コンシューマーのプロジェクト ID。
  • PSC_ENDPOINT_IP_ADDRESS: Private Service Connect エンドポイントの IP アドレス。
  • VM_INSTANCE_NAME: ソース VM インスタンスの名前。

既知の問題

クロスリージョン グローバル アクセスに対して指標が生成されない

次のシナリオでは、このページの Private Service Connect 指標がコンシューマーまたはプロデューサーに対して生成されないという既知の問題があります。

  • コンシューマー リソースが 1 つのリージョンに存在する。
  • コンシューマー リソースは、グローバル アクセスを使用して、別のリージョンの Private Service Connect エンドポイントにアクセスします。
  • エンドポイントのリージョンにコンシューマー仮想マシン(VM)インスタンスが含まれていない。

回避策

このシナリオで指標を生成するには、アクセス先のエンドポイントと同じリージョンに VM インスタンスを作成します。

次のステップ