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 GA
연결된 소비자 전달 규칙
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 GA
사용된 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 엔드포인트backends 모두 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. 알림 채널을 만들지 않고 알림을 받으려면 알림 채널 수정을 클릭하고 알림 채널을 추가합니다. 채널을 추가한 후 알림 페이지로 돌아갑니다.
  3. 알림 페이지에서 정책 만들기를 클릭합니다.
  4. 측정항목을 선택하려면 측정항목 선택 메뉴를 확장한 후 다음을 수행합니다.
    1. 메뉴를 관련 항목으로 제한하려면 필터 표시줄에 the resource type을 입력합니다. 메뉴를 필터링한 후 결과가 없으면 활성 리소스 및 측정항목만 표시 전환을 중지합니다.
    2. 리소스 유형에서 리소스 유형을 선택합니다.
    3. 측정항목 카테고리에서 Private_service_connect를 선택합니다.
    4. 측정항목에서 이 정책에 사용할 측정항목을 선택합니다.
    5. 적용을 선택합니다.
  5. 다음을 클릭합니다.
  6. 알림 트리거 구성 페이지의 설정에 따라 알림이 트리거되는 시점이 결정됩니다. 조건 유형을 선택하고 필요한 경우 기준점을 지정합니다. 자세한 내용은 측정항목 기준점 알림 정책 만들기를 참조하세요.
  7. 다음을 클릭합니다.
  8. 선택사항: 알림 정책에 알림을 추가하려면 알림 채널을 클릭합니다. 대화상자의 메뉴에서 하나 이상의 알림 채널을 선택한 다음 확인을 클릭합니다.
  9. 선택사항: 이슈 자동 종료 기간을 업데이트합니다. 이 필드는 측정항목 데이터가 없어 Monitoring에서 이슈를 닫을 시간을 결정합니다.
  10. 선택사항: 문서를 클릭한 후 알림 메시지에 포함할 정보를 추가합니다.
  11. 알림 이름을 클릭하고 알림 정책 이름을 입력합니다.
  12. 정책 만들기를 클릭합니다.
자세한 내용은 알림 정책을 참조하세요.

로그 보기

Cloud Logging을 사용하여 Private Service Connect 엔드포인트와 게시된 서비스의 로그를 볼 수 있습니다. Cloud Logging은 로깅 데이터 및 이벤트에 대해 저장, 검색, 분석, 모니터링, 알림을 수행할 수 있게 해주는 완전 관리형 서비스입니다.

  • 감사 로그를 사용하면 Private Service Connect 활동을 모니터링할 수 있습니다. 관리자 활동 감사 로그는 항상 기록됩니다.
  • VPC 흐름 로그를 사용하면 Private Service Connect 트래픽을 모니터링할 수 있습니다. 모니터링하려는 각 서브넷에 VPC 흐름 로그를 사용 설정해야 합니다.

이러한 로그를 사용하여 서비스 소비자와 서비스 프로듀서 간 이벤트의 상관관계를 확인할 수 있습니다. 예를 들어 소비자 전달 규칙의 연결 상태가 예기치 않게 변경되면 서비스 프로듀서에게 서비스 연결 삭제 또는 업데이트 이벤트에 대한 로그를 확인해 달라고 요청할 수 있습니다.

콘솔

  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 흐름 로그
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 흐름 로그
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 측정항목이 소비자 또는 생산자에 대해 생성되지 않을 수 있는 알려진 문제가 있습니다.

  • 소비자 리소스가 한 리전에 있습니다.
  • 소비자 리소스가 전역 액세스를 사용하여 다른 리전의 Private Service Connect 엔드포인트에 액세스합니다.
  • 엔드포인트의 리전에 소비자 가상 머신(VM) 인스턴스가 없습니다.

해결 방법

이 시나리오에서 측정항목을 생성하려면 액세스 중인 엔드포인트와 동일한 리전에 VM 인스턴스를 만듭니다.

다음 단계