Private Service Connect の接続をモニタリングする (original) (raw)
Private Service Connect は主要な指標を Cloud Monitoring に出力します。それらの指標は、Private Service Connect の接続に関する分析情報を確認するのに役立ちます。
指標は自動的に Monitoring に送信されます。カスタム ダッシュボードを作成してアラートを設定し、指標をクエリできます。
公開サービスをモニタリングする
事前定義されたダッシュボードまたはGoogle Cloud 指標を使用して、公開サービスをモニタリングできます。
公開サービスのダッシュボードを表示する
Private Service Connect には、公開サービスについて次の指標を表示する事前定義のダッシュボードが用意されています。
- 接続済みの転送ルール
- 使用中の NAT IP アドレス
- オープン接続
- 新しい接続の数
- 閉じた接続の数
- ネットワーク トラフィック
- ネットワークのパケット
- ドロップした送信パケット数
- ドロップした受信パケット数
特定の Private Service Connect 公開サービスの詳細ページで事前定義のダッシュボードを表示するには、次の操作を行います。
コンソール
- Google Cloud コンソールで、[Private Service Connect] ページに移動します。
[Private Service Connect] に移動 - [公開サービス] タブをクリックします。
- 既存のサービスをクリックします。
- [モニタリング] タブをクリックします。
ページの上部にあるコントロールを使用して、グラフの表示を変更できます。グラフ上のポイントにカーソルを合わせると、その特定の時間の詳細が表示されます。
公開サービスの指標
次の表の指標タイプの文字列には、compute.googleapis.com/ という接頭辞を付ける必要があります。この接頭辞は、表中の項目では省略されています。
Google Cloud 指標の一覧については、Google Cloud 指標をご覧ください。
これらの指標をトラブルシューティングに使用する方法については、公開サービスのトラブルシューティングをご覧ください。
| 指標タイプリリース ステージ (リソース階層レベル)表示名 | |
|---|---|
| 種類、タイプ、単位モニタリング対象リソース | 説明ラベル |
| private_service_connect/producer/closed_connections_count GA (プロジェクト) 閉じられた接続の数 | |
| DELTA、INT64、{connection} gce_service_attachment | _PSC サービス アタッチメント リソース ID を介して閉じた TCP / UDP 接続の数。60 秒ごとにサンプリングされます。サンプリング後、データは最長 345 秒間表示されません。_ip_protocol: 接続のプロトコル。TCP または UDP になります。psc_connection_id: Private Service Connect 転送ルールの Private Service Connect 接続 ID。 |
| private_service_connect/producer/connected_consumer_forwarding_rules GA (プロジェクト) 接続されたコンシューマー転送ルール | |
| GAUGE、INT64、1 gce_service_attachment | PSC サービス アタッチメント リソース ID に接続しているコンシューマー転送ルールの数。60 秒ごとにサンプリングされます。サンプリング後、データは最長 165 秒間表示されません。 |
| private_service_connect/producer/dropped_received_packets_count GA (プロジェクト) ドロップされた受信パケット数 | |
| DELTA、INT64、{packet} gce_service_attachment | _PSC サービス アタッチメント リソース ID によって破棄された受信パケット数。60 秒ごとにサンプリングされます。サンプリング後、データは最長 345 秒間表示されません。_ip_protocol: 接続のプロトコル。TCP または UDP になります。psc_connection_id: Private Service Connect 転送ルールの Private Service Connect 接続 ID。 |
| private_service_connect/producer/dropped_sent_packets_count GA (プロジェクト) ドロップされた送信パケット数 | |
| DELTA、INT64、{packet} gce_service_attachment | _PSC サービス アタッチメント リソース ID によって破棄された送信パケットの数。60 秒ごとにサンプリングされます。サンプリング後、データは最長 345 秒間表示されません。_ip_protocol: 接続のプロトコル。TCP または UDP になります。psc_connection_id: Private Service Connect 転送ルールの Private Service Connect 接続 ID。 |
| private_service_connect/producer/nat_ip_address_capacity GA (プロジェクト) NAT IP アドレス容量 | |
| GAUGE、INT64、1 gce_service_attachment | PSC サービス アタッチメント リソース ID の IP アドレスの合計数(値 -1 は、数値が INT64 の最大値より大きいことを意味します)。60 秒ごとにサンプリングされます。サンプリング後、データは最長 165 秒間表示されません。 |
| private_service_connect/producer/new_connections_count GA (プロジェクト) 新規接続の数 | |
| DELTA、INT64、{connection} gce_service_attachment | _PSC サービス アタッチメント リソース ID を介して作成された新しい TCP / UDP 接続の数。60 秒ごとにサンプリングされます。サンプリング後、データは最長 345 秒間表示されません。_ip_protocol: 接続のプロトコル。TCP または UDP になります。psc_connection_id: Private Service Connect 転送ルールの Private Service Connect 接続 ID。 |
| private_service_connect/producer/open_connections GA (プロジェクト) 開いている接続 | |
| GAUGE、INT64、{connection} gce_service_attachment | _現在 PSC サービス アタッチメント リソース ID で開いている TCP / UDP 接続の数。60 秒ごとにサンプリングされます。サンプリング後、データは最長 345 秒間表示されません。_ip_protocol: 接続のプロトコル。TCP または UDP になります。psc_connection_id: Private Service Connect 転送ルールの Private Service Connect 接続 ID。 |
| private_service_connect/producer/received_bytes_count GA (プロジェクト) 受信バイト数 | |
| DELTA、INT64、By gce_service_attachment | _PSC サービス アタッチメント リソース ID 経由で受信したバイト数(PSC -> サービス)。60 秒ごとにサンプリングされます。サンプリング後、データは最長 345 秒間表示されません。_ip_protocol: 接続のプロトコル。TCP または UDP になります。psc_connection_id: Private Service Connect 転送ルールの Private Service Connect 接続 ID。 |
| private_service_connect/producer/received_packets_count GA (プロジェクト) 受信パケット数 | |
| DELTA、INT64、{packet} gce_service_attachment | _PSC サービス アタッチメント リソース ID 経由で受信したパケット数(PSC -> サービス)。60 秒ごとにサンプリングされます。サンプリング後、データは最長 345 秒間表示されません。_ip_protocol: 接続のプロトコル。TCP または UDP になります。psc_connection_id: Private Service Connect 転送ルールの Private Service Connect 接続 ID。 |
| private_service_connect/producer/sent_bytes_count GA (プロジェクト) 送信バイト数 | |
| DELTA、INT64、By gce_service_attachment | _PSC サービス アタッチメント リソース ID 経由で送信されたバイト数(サービス -> PSC)。60 秒ごとにサンプリングされます。サンプリング後、データは最長 345 秒間表示されません。_ip_protocol: 接続のプロトコル。TCP または UDP になります。psc_connection_id: Private Service Connect 転送ルールの Private Service Connect 接続 ID。 |
| private_service_connect/producer/sent_packets_count GA (プロジェクト) 送信パケット数 | |
| DELTA、INT64、{packet} gce_service_attachment | _PSC サービス アタッチメント リソース ID 経由で送信されたパケット数(サービス -> PSC)。60 秒ごとにサンプリングされます。サンプリング後、データは最長 345 秒間表示されません。_ip_protocol: 接続のプロトコル。TCP または UDP になります。psc_connection_id: Private Service Connect 転送ルールの Private Service Connect 接続 ID。 |
| private_service_connect/producer/used_nat_ip_addresses GA (プロジェクト) 使用された NAT IP アドレス | |
| GAUGE、INT64、1 gce_service_attachment | モニタリング対象サービス アタッチメントの IP 使用量。60 秒ごとにサンプリングされます。サンプリング後、データは最長 165 秒間表示されません。 |
エンドポイントとバックエンドをモニタリングする
事前定義されたダッシュボードまたは Google Cloud 指標を使用して、公開サービスに接続するエンドポイントをモニタリングできます。 Google Cloud 指標を使用して、公開サービスに接続するバックエンドをモニタリングできます。
エンドポイントのダッシュボードを表示する
Private Service Connect には、公開サービスに接続するエンドポイントについて次の指標を表示する事前定義のダッシュボードが用意されています。
- オープン接続
- 新しい接続の数
- 閉じた接続の数
- ネットワーク トラフィック
- ネットワークのパケット
- ドロップした送信パケット数
- ドロップした受信パケット数
特定の Private Service Connect エンドポイントの詳細ページで事前定義のダッシュボードを表示する手順は次のとおりです。
コンソール
- Google Cloud コンソールで、[Private Service Connect] ページに移動します。
[Private Service Connect] に移動 - [接続エンドポイント] タブをクリックします。
- 公開サービスに接続するエンドポイントをクリックします。
- [モニタリング] タブをクリックします。
ページの上部にあるコントロールを使用して、グラフの表示を変更できます。グラフ上のポイントにカーソルを合わせると、その特定の時間の詳細が表示されます。
エンドポイントとバックエンドの指標
Private Service Connect のエンドポイントとバックエンドの両方が、Private Service Connect エンドポイント リソースとしてモニタリングされます。
この表の指標は、Google API に接続するエンドポイントまたはバックエンドに対して生成されません。
次の表の指標タイプの文字列には、compute.googleapis.com/ という接頭辞を付ける必要があります。この接頭辞は、表中の項目では省略されています。
Google Cloud 指標の一覧については、Google Cloud 指標をご覧ください。
これらの指標を使用してエンドポイントのトラブルシューティングを行う方法については、エンドポイントのトラブルシューティングをご覧ください。
これらの指標を使用してバックエンドのトラブルシューティングを行う方法については、バックエンドのトラブルシューティングをご覧ください。
| 指標タイプリリース ステージ (リソース階層レベル)表示名 | |
|---|---|
| 種類、タイプ、単位モニタリング対象リソース | 説明ラベル |
| private_service_connect/consumer/closed_connections_count GA (プロジェクト) 閉じられた接続の数 | |
| DELTA、INT64、{connection} compute.googleapis.com/PrivateServiceConnectEndpoint | _PSC 接続 ID を介して閉じた TCP/UDP 接続の数。60 秒ごとにサンプリングされます。サンプリング後、データは最長 345 秒間表示されません。_ip_protocol: 接続のプロトコル。TCP または UDP になります。 |
| private_service_connect/consumer/dropped_received_packets_count GA (プロジェクト) ドロップされた受信パケット数 | |
| DELTA、INT64、{packet} compute.googleapis.com/PrivateServiceConnectEndpoint | _PSC 接続 ID によって破棄された受信パケット数。60 秒ごとにサンプリングされます。サンプリング後、データは最長 345 秒間表示されません。_ip_protocol: 接続のプロトコル。TCP または UDP になります。 |
| private_service_connect/consumer/dropped_sent_packets_count GA (プロジェクト) ドロップされた送信パケット数 | |
| DELTA、INT64、{packet} compute.googleapis.com/PrivateServiceConnectEndpoint | _PSC 接続 ID によって破棄された送信パケットの数。60 秒ごとにサンプリングされます。サンプリング後、データは最長 345 秒間表示されません。_ip_protocol: 接続のプロトコル。TCP または UDP になります。 |
| private_service_connect/consumer/new_connections_count GA (プロジェクト) 新規接続の数 | |
| DELTA、INT64、{connection} compute.googleapis.com/PrivateServiceConnectEndpoint | _PSC 接続 ID を介して作成された新しい TCP/UDP 接続の数。60 秒ごとにサンプリングされます。サンプリング後、データは最長 345 秒間表示されません。_ip_protocol: 接続のプロトコル。TCP または UDP になります。 |
| private_service_connect/consumer/open_connections GA (プロジェクト) 開いている接続 | |
| GAUGE、INT64、{connection} compute.googleapis.com/PrivateServiceConnectEndpoint | _現在 PSC 接続 ID 上で開いている TCP/UDP 接続の数。60 秒ごとにサンプリングされます。サンプリング後、データは最長 345 秒間表示されません。_ip_protocol: 接続のプロトコル。TCP または UDP になります。 |
| private_service_connect/consumer/received_bytes_count GA (プロジェクト) 受信バイト数 | |
| DELTA、INT64、By compute.googleapis.com/PrivateServiceConnectEndpoint | _PSC 接続 ID を介して受信したバイト数(PSC -> クライアント)。60 秒ごとにサンプリングされます。サンプリング後、データは最長 345 秒間表示されません。_ip_protocol: 接続のプロトコル。TCP または UDP になります。 |
| private_service_connect/consumer/received_packets_count GA (プロジェクト) 受信パケット数 | |
| DELTA、INT64、{packet} compute.googleapis.com/PrivateServiceConnectEndpoint | _PSC 接続 ID を介して受信したパケット数(PSC -> クライアント)。60 秒ごとにサンプリングされます。サンプリング後、データは最長 345 秒間表示されません。_ip_protocol: 接続のプロトコル。TCP または UDP になります。 |
| private_service_connect/consumer/sent_bytes_count GA (プロジェクト) 送信バイト数 | |
| DELTA、INT64、By compute.googleapis.com/PrivateServiceConnectEndpoint | _PSC 接続 ID 経由で送信されたバイト数(クライアント -> PSC)。60 秒ごとにサンプリングされます。サンプリング後、データは最長 345 秒間表示されません。_ip_protocol: 接続のプロトコル。TCP または UDP になります。 |
| private_service_connect/consumer/sent_packets_count GA (プロジェクト) 送信パケット数 | |
| DELTA、INT64、{packet} compute.googleapis.com/PrivateServiceConnectEndpoint | _PSC 接続 ID 経由で送信されたパケット数(クライアント -> PSC)。60 秒ごとにサンプリングされます。サンプリング後、データは最長 345 秒間表示されません。_ip_protocol: 接続のプロトコル。TCP または UDP になります。 |
アラート ポリシーを定義する
指標ベースのアラート ポリシーを作成する手順は次のとおりです。公開サービスに関する指標には、Service Attachment のリソースタイプを使用します。エンドポイントまたはバックエンドに関する指標には、Private Service Connect Endpoint のリソースタイプを使用します。
コンソール
アラート ポリシーを作成して指標の値をモニタリングすると、指標が条件に違反した場合に通知できます。
- Google Cloud コンソールで、 [アラート] ページに移動します。
[アラート] に移動
検索バーを使用してこのページを検索する場合は、小見出しが [Monitoring] の結果を選択します。 - 通知チャンネルを作成せずに通知を受け取る場合は、[EDIT NOTIFICATION CHANNELS] をクリックして、通知チャンネルを追加します。チャンネルを追加したら、[アラート] ページに戻ります。
- [アラート] ページで、[CREATE POLICY] をクリックします。
- 指標を選択するには、[指標を選択] メニューを開き、次の操作を行います。
- メニューを関連するエントリに限定するには、フィルタバーに「
the resource type」と入力します。結果が表示されない場合は、[アクティブなリソースと指標のみを表示] をオフに切り替えます。 - リソースタイプとして目的のリソースタイプを選択します。
- 指標のカテゴリとして、[Private_service_connect] を選択します。
- 指標として、このポリシーに使用する指標を選択します。
- [適用] を選択します。
- メニューを関連するエントリに限定するには、フィルタバーに「
- [次へ] をクリックします。
- [Configure alert trigger] ページの設定によって、アラートがトリガーされるタイミングが決まります。条件タイプを選択し、必要に応じてしきい値を指定します。詳細については、指標しきい値のアラート ポリシーを作成するをご覧ください。
- [次へ] をクリックします。
- (省略可)アラート ポリシーに通知を追加するには、[通知チャネル] をクリックします。ダイアログで、メニューから 1 つ以上の通知チャンネルを選択し、[OK] をクリックします。
- (省略可)インシデントの自動クローズ期間を更新します。このフィールドは、指標データがない場合に Monitoring がインシデントを閉じるタイミングを決定します。
- (省略可)[Documentation] をクリックして、通知メッセージに追加する情報を入力します。
- [アラート名] をクリックして、アラート ポリシーの名前を入力します。
- [ポリシーを作成] をクリックします。 詳細については、アラートの概要をご覧ください。
ログを表示する
Private Service Connect エンドポイントと公開サービスのログは、Cloud Logging を使用して表示できます。Cloud Logging は、ロギングデータとイベントの保存、検索、分析、モニタリング、アラート通知を可能にするフルマネージド サービスです。
- 監査ログを使用すると、Private Service Connect のアクティビティをモニタリングできます。管理アクティビティ監査ログは常に書き込まれます。
- VPC Flow Logs を使用すると、Private Service Connect トラフィックをモニタリングできます。モニタリングするサブネット、Cloud Interconnect の VLAN アタッチメント、または Cloud VPN トンネルごとに VPC Flow Logs を有効にする必要があります。
これらのログを使用して、サービス コンシューマーとサービス プロデューサー間のイベントを関連付けることができます。たとえば、コンシューマー転送ルールの接続ステータスが予期せず変更された場合は、サービス アタッチメントの削除イベントや更新イベントがないかログを確認するようサービス プロデューサーに依頼できます。
コンソール
- Google Cloud コンソールで、[ログ エクスプローラ] ページに移動します。
[ログ エクスプローラ] に移動 - [クエリ] ペインにクエリ エディタ フィールドが表示されない場合は、[クエリを表示] をクリックします。
- クエリエディタ フィールドにクエリを入力します。たとえば、エンドポイントの接続ステータスの変更を表示するには、次のクエリを入力します。
CONSUMER_PROJECT_IDはコンシューマー プロジェクト ID に置き換えます。
resource.type="gce_forwarding_rule"
log_name="projects/CONSUMER_PROJECT_ID/logs/cloudaudit.googleapis.com%2Fsystem_event"
protoPayload.methodName="LogPscConnectionStatusUpdate"
一般的なロギング イベントを表示するために実行できるクエリの例については、エンドポイントの一般的なロギング イベントをご覧ください。 - [クエリを実行] をクリックします。
監査ログのクエリの詳細については、監査ログの表示をご覧ください。
公開サービスの一般的なロギング イベント
次の表に、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" |
| サービス アタッチメント接続ポリシーまたは組織のポリシーによるエンドポイント接続ステータスの変更 | resource.type="gce_service_attachment" log_name="projects/PRODUCER_PROJECT_ID/logs/cloudaudit.googleapis.com%2Fsystem_event" protoPayload.methodName="LogPscProducerConnectionStatusChange" |
| 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_REGEXを172\.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" |
| ゲートウェイから Private Service Connect エンドポイントへのトラフィックの VPC Flow Logs | resource.type="vpc_flow_logs_config" logName="projects/CONSUMER_PROJECT_ID/logs/networkmanagement.googleapis.com%2Fvpc_flows" jsonPayload.connection.dest_ip="PSC_ENDPOINT_IP_ADDRESS" jsonPayload.src_gateway.name="GATEWAY_NAME" |
次のように置き換えます。
CONSUMER_PROJECT_ID: サービス コンシューマーのプロジェクト ID。PSC_ENDPOINT_IP_ADDRESS: Private Service Connect エンドポイントの IP アドレス。VM_INSTANCE_NAME: サービス コンシューマーのプロジェクトのソース VM インスタンスの名前。GATEWAY_NAME: サービス コンシューマーのプロジェクトのソース VLAN アタッチメントまたは Cloud VPN トンネルの名前。
既知の問題
クロスリージョン グローバル アクセスに対して指標が生成されない
次のシナリオでは、このページの Private Service Connect 指標がコンシューマーまたはプロデューサーに対して生成されないという既知の問題があります。
- コンシューマー リソースが 1 つのリージョンに存在する。
- コンシューマー リソースは、グローバル アクセスを使用して、別のリージョンの Private Service Connect エンドポイントにアクセスします。
- エンドポイントのリージョンにコンシューマー仮想マシン(VM)インスタンスが含まれていない。
回避策
このシナリオで指標を生成するには、アクセス先のエンドポイントと同じリージョンに VM インスタンスを作成します。