연결 테스트 개요

연결 테스트는 네트워크 엔드포인트 간 연결을 확인할 수 있게 해주는 진단 도구입니다. 구성을 분석하고 경우에 따라 엔드포인트 간에 실시간 데이터 영역 분석을 수행합니다. 엔드포인트란 VM, Google Kubernetes Engine(GKE) 클러스터, 부하 분산기 전달 규칙, 인터넷 IP 주소와 같은 네트워크 트래픽의 소스 또는 대상을 의미합니다.

연결 테스트는 네트워크 구성을 분석하기 위해 Virtual Private Cloud(VPC) 네트워크, Cloud VPN 터널 또는 VLAN 연결을 통해 패킷의 예상 전달 경로를 시뮬레이션합니다. 연결 테스트는 VPC 네트워크의 리소스에 대한 예상 인바운드 전달 경로를 시뮬레이션할 수도 있습니다.

일부 연결 시나리오의 경우 연결 테스트는 실시간 데이터 영역 분석도 수행합니다. 이 기능은 데이터 영역을 통해 패킷을 전송하여 연결을 검증하고 지연 시간 및 패킷 손실에 대한 기준 진단을 제공합니다. 경로가 이 기능을 지원하는 경우 실행하는 각 테스트에는 실시간 데이터 영역 분석 결과가 포함됩니다.

다양한 시나리오에 대한 테스트를 만들고 실행하는 방법은 연결 테스트 만들기 및 실행을 참조하세요.

연결 테스트에 사용되는 API는 Network Management API입니다. 자세한 내용은 API 문서를 참조하세요.

연결 테스트를 사용하는 이유

연결 테스트를 사용하면 다음과 같은 네트워크 연결 문제를 해결할 수 있습니다.

  • 의도하지 않은 일관성이 없는 구성
  • 네트워크 구성 변경 또는 마이그레이션으로 인해 사용되지 않는 구성
  • 다양한 네트워크 서비스 및 기능의 구성 오류

연결 테스트는 Google 관리형 서비스를 테스트할 때 VPC 네트워크 또는 서비스 리소스에 사용되는 Google 소유 VPC 네트워크에 문제가 있는지 확인하는 데도 도움이 됩니다.

연결 테스트에서 구성을 분석하는 방법

네트워크 구성을 분석할 경우 연결 테스트는 추상 상태 머신을 사용하여 VPC 네트워크가 패킷을 처리하는 방법을 모델링합니다. Google Cloud는 여러 논리적 단계로 패킷을 처리합니다.

분석은 수많은 경로를 취할 수 있음

구성 분석에서 다양한 VPC 네트워크 서비스와 기능을 지원하므로 VPC 네트워크 구성을 통과하는 테스트 패킷은 수많은 경로를 취할 수 있습니다.

다음 다이어그램에서는 구성 분석이 Compute Engine 가상 머신(VM) 인스턴스 두 개(왼쪽에 하나, 오른쪽에 하나) 간에 trace 트래픽을 시뮬레이션하는 방법의 모델을 보여줍니다.

분석은 네트워크 인프라에 따라 달라짐

Google Cloud 네트워크 및 리소스 구성에 따라 이 트래픽은 대상 VM 인스턴스에 도달하기 전에 Cloud VPN 터널, VPC 네트워크, Google Cloud 부하 분산기 또는 피어링된 VPC 네트워크를 통과할 수 있습니다.

네트워크 추상 상태 머신
네트워크 추상 상태 머신

분석은 수많은 유한 상태 중 하나를 따름

패킷이 전송되거나 삭제될 때까지 불연속 상태 사이의 제한된 단계 수는 유한 상태 머신으로 모델링됩니다. 이 유한 상태 머신은 한 번에 여러 유한 상태 중 정확히 한 곳에 있을 수 있으며 여러 후속 상태를 가질 수 있습니다.

예를 들어 경로 우선순위에 따라 연결 테스트가 여러 경로와 일치하는 경우 Google Cloud는 데이터 평면의 지정되지 않은 해싱 기능을 기반으로 여러 경로 중에서 경로를 선택할 수 있습니다. 정책 기반 경로가 구성된 경우 연결 테스트는 패킷을 내부 부하 분산기인 다음 홉으로 라우팅합니다.

이전의 경우 연결 테스트 trace는 가능한 모든 경로를 반환하지만 Google Cloud가 경로를 반환하는 데 사용한 방법을 확인할 수 없습니다. 해당 메서드는 Google Cloud 내부에 있으며 변경될 수 있기 때문입니다.

Google 관리형 서비스

Cloud SQL 및 Google Kubernetes Engine(GKE)과 같은 Google 관리형 서비스는 Google이 소유하고 관리하는 프로젝트와 VPC 네트워크의 고객에게 리소스를 할당합니다. 고객은 이러한 리소스에 액세스할 권한이 없습니다.

연결 테스트 구성 분석은 계속해서 테스트를 실행하고 Google 관리형 서비스에 대한 전반적인 연결 가능성 결과를 제공할 수 있지만 Google이 소유한 프로젝트에서 테스트된 리소스의 세부정보는 제공하지 않습니다.

다음 다이어그램에서는 구성 분석이 고객 VPC 네트워크의 VM 인스턴스에서 Google 소유 VPC 네트워크의 Cloud SQL 인스턴스까지의 trace 트래픽을 시뮬레이션하는 방법에 대한 모델을 보여줍니다. 이 예시에서 네트워크는 VPC 네트워크 피어링을 통해 연결됩니다.

두 VM 간의 표준 테스트와 비슷하게 논리적 단계에는 관련된 이그레스 방화벽 확인 및 경로 일치 단계가 포함됩니다. 테스트를 실행할 경우 연결 테스트 구성 분석은 이러한 단계의 세부정보를 제공합니다. 하지만 Google 소유 VPC 네트워크의 구성 분석에 대한 최종 논리 단계에서 분석은 전체 연결 가능성 결과만 제공합니다. 리소스를 볼 권한이 없으므로 연결 테스트는 Google 소유 프로젝트의 리소스에 대한 세부정보를 제공하지 않습니다.

자세한 내용은 Google 관리형 서비스의 연결 테스트를 참조하세요.

Google 관리형 서비스의 네트워크 추상 상태 머신
Google 관리형 서비스의 네트워크 추상 상태 머신

지원되는 구성

연결 테스트 구성 분석은 다음 섹션에 설명된 네트워크 구성 테스트를 지원합니다.

트래픽 흐름

  • VM 인스턴스와 인터넷 간
  • 두 VM 인스턴스 간
  • Google Cloud와 온프레미스 네트워크 간
  • Network Connectivity Center를 통해 연결된 두 온프레미스 네트워크 간
  • 두 Network Connectivity Center VPC 스포크 간

VPC 네트워킹 특징

다음 기능을 사용하는 리소스 간의 연결을 테스트할 수 있습니다(해당하는 경우 IPv4 및 IPv6 모두 지원됨).

Google Cloud 하이브리드 네트워킹 솔루션

IPv4 및 IPv6 모두 다음과 같은 하이브리드 네트워킹 솔루션이 지원됩니다.

Network Connectivity Center

Network Connectivity Center용 VPC 스포크 및 하이브리드 스포크가 지원됩니다.

Cloud NAT

Public NAT 및 Private NAT가 지원됩니다.

Cloud Load Balancing

  • 외부 애플리케이션 부하 분산기, 외부 패스 스루 네트워크 부하 분산기, 외부 프록시 네트워크 부하 분산기, 내부 애플리케이션 부하 분산기, 내부 패스 스루 네트워크 부하 분산기 및 내부 프록시 네트워크 부하 분산기와 같은 Google Cloud 부하 분산기 유형에 대한 연결이 지원됩니다.
  • 부하 분산기 IP 주소에 대한 연결 테스트가 지원됩니다.
  • Cloud Load Balancing 상태 확인의 백엔드에 대한 연결 확인이 지원됩니다.
  • 내부 TCP/UDP 부하 분산기를 다음 홉으로 사용할 수 있습니다.

지원되지 않는 Cloud Load Balancing 기능은 지원되지 않는 구성 섹션을 참조하세요.

Google Kubernetes Engine(GKE)

  • GKE 노드와 GKE 제어 영역 간의 연결이 지원됩니다.
    • GKE 제어 영역의 비공개 IP 주소를 테스트할 때 연결 테스트 구성 분석은 패킷을 제어 영역으로 전달할 수 있는지 여부를 결정합니다. 여기에는 Google 소유 VPC 네트워크 내의 구성 분석이 포함됩니다.
    • GKE 제어 영역의 공개 IP 주소를 테스트할 때 연결 테스트 구성 분석은 제어 영역이 실행되는 Google 소유 VPC 네트워크에 패킷을 전송할 수 있는지 여부를 결정합니다. 여기에는 Google 소유 VPC 네트워크 내 구성 분석은 포함되지 않습니다.
  • Cloud Load Balancing을 통한 GKE 서비스에 대한 연결이 지원됩니다.
  • VPC 기반 클러스터에서 GKE pod에 대한 연결이 지원됩니다.

지원되지 않는 GKE 기능은 지원되지 않는 구성 섹션을 참조하세요.

기타 Google Cloud 제품 및 서비스

다음과 같은 Google Cloud 제품 또는 서비스가 지원됩니다.

  • Private Service Connect 연결, VPC 네트워크 피어링 연결, 외부 복제본을 포함한 Cloud SQL 인스턴스가 지원됩니다.
    • Cloud SQL 인스턴스의 비공개 IP 주소를 테스트할 경우 구성 분석은 패킷이 인스턴스에 전송될 수 있는지 여부를 확인합니다. 여기에는 Google 소유 VPC 네트워크 내의 구성 분석이 포함됩니다.
    • Cloud SQL 인스턴스의 공개 IP 주소를 테스트할 경우 구성 분석은 패킷이 인스턴스가 실행되는 Google 소유 VPC 네트워크에 전송될 수 있는지 여부를 확인합니다. 여기에는 Google 소유 VPC 네트워크 내 구성 분석은 포함되지 않습니다.
  • Cloud Functions(1세대)가 지원됩니다.
  • Cloud Run 버전이 지원됩니다.
  • App Engine 표준 환경이 지원됩니다.

지원되지 않는 구성

연결 테스트 구성 분석에서는 다음 네트워크 구성을 테스트할 수 없습니다.

연결 테스트에서 실시간 데이터 영역을 분석하는 방법

실시간 데이터 영역 분석 기능은 소스 엔드포인트에서 대상으로 trace 패킷을 여러 개 전송하여 연결을 테스트합니다. 실시간 데이터 영역 분석 결과에는 전송된 프로브 수, 대상에 성공적으로 연결된 프로브 수, 연결 가능성 상태가 표시됩니다. 이 상태는 다음 표의 설명대로 성공적으로 전송된 프로브 수에 따라 결정됩니다.

상태 대상에 도달한 프로브 수
연결 가능 최소 95% 이상
연결할 수 없음 없음
부분적으로 연결 가능 0 초과, 95% 미만

동적 확인은 성공적으로 전송된 패킷 수 표시 이외에 중앙값과 95번째 백분위수 단방향 지연 시간 정보를 표시합니다.

실시간 데이터 영역 분석은 구성 분석에 의존하지 않습니다. 대신 실시간 데이터 영역 분석은 연결 상태에 대한 독립적인 평가를 제공합니다.

구성 분석과 실시간 데이터 영역 분석 결과 간에 명백한 불일치가 발견되면 연결 테스트 문제 해결을 참조하세요.

지원되는 구성

실시간 데이터 영역 분석에서는 다음과 같은 네트워크 구성을 지원합니다.

트래픽 흐름

  • 두 VM 인스턴스 사이
  • VM 인스턴스와 Cloud SQL 인스턴스 사이
  • VM 인스턴스와 GKE 제어 영역 엔드포인트 사이
  • VM 인스턴스와 Google 네트워크 에지 위치 사이
  • IP 프로토콜: TCP, UDP

VPC 네트워킹 특징

다음 기능을 사용하는 리소스 간의 연결을 동적으로 확인할 수 있습니다.

지원되지 않는 구성

명시적으로 지원된다고 나열되지 않은 모든 구성은 지원되지 않습니다. 또한 이그레스 방화벽 규칙에 의해 연결이 차단된 구성도 지원되지 않습니다.

특정 테스트에서 라이브 데이터 영역 분석 기능이 실행되지 않으면 N/A 또는 -마지막 패킷 전송 결과 필드에 표시됩니다.

고려사항 및 제약조건

연결 테스트 사용 여부를 결정할 때 다음 고려사항을 평가합니다.

  • 연결 테스트에서 수행하는 구성 분석은 전적으로 Google Cloud 리소스의 구성 정보를 기반으로 하며 VPC 네트워크의 데이터 영역 실제 조건과 상태를 나타내지 않을 수 있습니다.
  • 연결 테스트는 Cloud VPN 터널 상태 및 Cloud Router의 동적 경로와 같은 일부 동적 구성 정보를 얻지만 Google 내부 프로덕션 인프라 및 데이터 영역 구성요소의 상태를 액세스하거나 유지하지 않습니다.
  • 연결 테스트의 Packet could be delivered 상태는 트래픽이 데이터 영역을 통과할 수 있음을 보증하지 않습니다. 테스트 목적은 트래픽 손실을 일으킬 수 있는 구성 문제를 확인하는 것입니다.

지원되는 경로의 경우 라이브 데이터 영역 분석 결과는 전송된 패킷이 대상에 도착하는지 여부를 테스트하여 구성 분석 결과를 보완합니다.

연결 테스트에 Google Cloud 외부 네트워크에 대한 지식이 없음

외부 네트워크는 다음과 같이 정의됩니다.

  • 데이터 센터 또는 하드웨어 기기 및 소프트웨어 애플리케이션을 운영하는 기타 시설에 상주하는 온프레미스 네트워크
  • 리소스를 실행하는 기타 클라우드 제공업체
  • VPC 네트워크로 트래픽을 전송하는 인터넷의 호스트

연결 테스트는 방화벽 연결을 추적하지 않음

VPC 방화벽에 대한 연결 추적은 신규 및 기존 연결에 대한 정보를 저장하고 해당 정보를 기반으로 후속 트래픽을 허용하거나 제한할 수 있습니다.

방화벽 연결 테이블이 VM 인스턴스의 데이터 영역에 있고 이 테이블에 액세스할 수 없으므로 연결 테스트 구성 분석은 방화벽 연결 추적을 지원하지 않습니다. 그러나 연결 테스트가 아웃바운드 연결을 시작하는 한 일반적으로 인그레스 방화벽 규칙에 의해 거부되는 반환 연결을 허용하여 구성 분석을 시뮬레이션할 수 있습니다.

실시간 데이터 영역 분석에서는 방화벽 연결 추적 테스트를 지원하지 않습니다.

연결 테스트는 전달 동작을 수정하도록 구성된 VM 인스턴스를 테스트할 수 없음

연결 테스트는 데이터 영역에서 라우터, 방화벽, NAT 게이트웨이, VPN 등으로 작동하도록 구성된 VM 인스턴스를 테스트할 수 없습니다. 이 유형의 구성으로 인해 VM 인스턴스에서 실행 중인 환경을 평가하기가 어렵습니다. 또한 실시간 데이터 영역 분석에서는 이 테스트 시나리오를 지원하지 않습니다.

연결 테스트 결과 시간은 다를 수 있음

연결 테스트 결과를 가져오는 데 30초에서 최대 10분이 걸릴 수 있습니다. 테스트에 걸리는 시간은 VPC 네트워크 구성 크기 및 사용하는 Google Cloud 리소스 수에 따라 달라집니다.

다음 표는 쿼리에서 샘플 구성에 대해 테스트를 실행하는 모든 사용자에게 예상되는 응답 시간을 보여줍니다. 이 구성에는 VM 인스턴스, Cloud VPN 터널, Google Cloud 부하 분산기가 포함됩니다.

쿼리 당 응답 시간
프로젝트 규모 Google Clpud 리소스 수 응답 지연 시간
소규모 프로젝트 50개 미만 모든 사용자 쿼리 중 95%에 60초
중간 규모 프로젝트 50개 이상, 5,000개 미만 모든 사용자 쿼리 중 95%에 120초
대규모 프로젝트 5,000개 이상 모든 사용자 쿼리 중 95%에 600초

실시간 데이터 영역 분석은 지속적인 모니터링을 위한 것이 아님

실시간 데이터 영역 분석은 진단 목적으로 네트워크 연결 확인을 한 번 수행합니다. 연결 및 패킷 손실을 지속적으로 모니터링하려면 성능 대시보드를 사용하세요.

실시간 데이터 영역 분석에서 여러 trace를 테스트하지 않음

경로가 확정적이지 않은 경우에는 실시간 데이터 영역 분석이 지원되지 않습니다.

VPC 서비스 제어 지원

VPC 서비스 제어는 데이터 무단 반출 위험을 줄이기 위해 연결 테스트에 추가 보안을 제공할 수 있습니다. VPC 서비스 제어를 사용하면 서비스 경계에 프로젝트를 추가하여 외부 요청으로부터 리소스와 서비스를 보호할 수 있습니다.

서비스 경계에 대한 자세한 내용은 VPC 서비스 제어 문서의 서비스 경계 세부정보 및 구성 페이지를 참조하세요.

다음 단계