게시된 서비스 정보

이 문서에서는 Private Service Connect를 사용하여 서비스 소비자에게 서비스를 제공하는 방법을 간략하게 설명합니다.

서비스 제작자는 Private Service Connect로 VPC 네트워크에서 내부 IP 주소를 사용하여 서비스를 게시할 수 있습니다. 서비스 소비자는 VPC 네트워크에서 내부 IP 주소를 사용하여 게시된 서비스에 액세스할 수 있습니다.

소비자에게 서비스를 제공하려면 전용 서브넷을 하나 이상 만듭니다. 그런 다음 해당 서브넷을 참조하는 서비스 연결을 만듭니다. 서비스 연결은 연결 환경설정이 다를 수 있습니다.

서비스 소비자 유형

Private Service Connect 서비스에 연결할 수 있는 소비자 유형에는 두 가지가 있습니다.

엔드포인트는 전달 규칙을 기반으로 합니다.

그림 1. 엔드포인트를 사용하면 서비스 소비자가 소비자의 VPC 네트워크에서 서비스 제작자의 VPC 네트워크에 있는 서비스로 트래픽을 보낼 수 있습니다(확대하려면 클릭).

백엔드는 부하 분산기를 기반으로 합니다.

그림 2. 전역 외부 애플리케이션 부하 분산기를 사용하는 백엔드를 사용하면 인터넷 액세스 권한이 있는 서비스 소비자가 서비스 제작자의 VPC 네트워크에서 서비스로 트래픽을 보낼 수 있습니다(확대하려면 클릭).

Private Service Connect 서비스 구성

Private Service Connect 서비스를 만들 때 서브넷, 서비스 연결, 연결 환경설정을 구성합니다. 원하는 경우 서비스의 DNS 도메인을 구성할 수도 있습니다. 이러한 구성은 다음 섹션에서 설명합니다.

NAT 서브넷

Private Service Connect 서비스 연결은 하나 이상의 NAT 서브넷(Private Service Connect 서브넷이라고도 함)으로 구성됩니다. 소비자 VPC 네트워크의 패킷은 소스 NAT(SNAT)를 사용하여 변환되므로 원래 소스 IP 주소는 제작자 VPC 네트워크의 NAT 서브넷에서 소스 IP 주소로 변환됩니다.

서비스 연결에는 여러 NAT 서브넷이 있을 수 있습니다. 트래픽을 중단하지 않고도 언제든지 NAT 서브넷을 서비스 연결에 추가할 수 있습니다.

서비스 연결에 여러 NAT 서브넷을 구성할 수 있지만 NAT 서브넷은 두 개 이상의 서비스 연결에서 사용할 수 없습니다.

Private Service Connect NAT 서브넷은 VM 인스턴스 또는 전달 규칙과 같은 리소스에 사용할 수 없습니다. 서브넷은 수신되는 소비자 연결의 SNAT에 IP 주소를 제공하기 위해서만 사용됩니다.

NAT 서브넷 크기 조정

서비스를 게시할 때 NAT 서브넷을 만들고 IP 주소 범위를 선택합니다. 서브넷의 크기에 따라 서비스 연결에 연결할 수 있는 동시 Private Service Connect 엔드포인트 또는 백엔드 수가 결정됩니다. IP 주소는 Private Service Connect 연결 수에 따라 NAT 서브넷에서 사용됩니다. NAT 서브넷의 IP 주소를 모두 사용하면 추가 Private Service Connect 연결이 실패합니다. 따라서 NAT 서브넷의 크기를 적절하게 조절하는 것이 중요합니다.

서브넷 크기를 선택할 때는 다음 사항을 고려하세요.

  • NAT 서브넷에는 4개의 사용할 수 없는 IP 주소가 있으므로 사용 가능한 IP 주소의 수는 2(32 - PREFIX_LENGTH) - 4입니다. 예를 들어 프리픽스 길이가 /24인 NAT 서브넷을 만들면 Private Service Connect는 SNAT에 252개의 IP 주소를 사용할 수 있습니다. 사용 가능한 IP 주소 4개가 있는 /29 서브넷은 VPC 네트워크에서 지원되는 가장 작은 서브넷 크기입니다.

  • 서비스 연결에 연결된 각 엔드포인트 또는 백엔드에 대해 NAT 서브넷에서 하나의 IP 주소가 사용됩니다.

  • 엔드포인트 및 백엔드에 필요한 IP 주소 수를 추정할 때 멀티 테넌트 서비스 또는 Private Service Connect의 멀티 포인트 액세스를 고려합니다.

  • TCP 또는 UDP 연결, 클라이언트 또는 소비자 VPC 네트워크의 수는 NAT 서브넷의 IP 주소 사용에 영향을 미치지 않습니다.

예를 들어 단일 서비스 연결에 두 개의 엔드포인트가 연결되어 있는 경우 NAT 서브넷에서 2개의 IP 주소가 사용됩니다. 엔드포인트 수가 변경되지 않으면 이 서비스 연결에 사용 가능한 IP 주소 4개가 있는 /29 서브넷을 사용할 수 있습니다.

NAT 서브넷 모니터링

NAT 서브넷에서 사용할 수 없는 IP 주소로 인해 Private Service Connect 연결이 실패하지 않도록 다음을 수행하는 것이 좋습니다.

  • private_service_connect/producer/used_nat_ip_addresses 서비스 연결 측정항목을 모니터링합니다. 사용되는 NAT IP 주소 수가 서비스 연결의 NAT 서브넷 용량을 초과하지 않는지 확인합니다.
  • 서비스 연결의 연결 상태를 모니터링합니다. 연결이 확인 필요 상태인 경우 연결의 NAT 서브넷에 사용 가능한 IP 주소가 더 이상 없을 수 있습니다.
  • 멀티 테넌트 서비스의 경우 연결 한도를 사용하여 단일 소비자가 서비스 연결의 NAT 서브넷 용량을 소진하지 않도록 할 수 있습니다.

필요한 경우 트래픽을 중단하지 않고도 언제든지 NAT 서브넷을 서비스 연결에 추가할 수 있습니다.

최대 연결 수

단일 제작자 VM은 단일 Private Service Connect 엔드포인트에서 최대 65,536개의 TCP 연결과 65,536개의 UDP 연결을 동시에 허용할 수 있습니다. Private Service Connect 엔드포인트가 모든 제작자 백엔드에서 집계할 수 있는 총 TCP 및 UDP 연결 수에는 제한이 없습니다. 소비자 VM은 Private Service Connect 엔드포인트에 TCP 또는 UDP 연결을 시작할 때 65,536개의 포트를 모두 사용할 수 있습니다. 모든 네트워크 주소 변환은 제작자 호스트에서 로컬로 수행되며, 중앙에서 할당된 NAT 포트 풀이 필요하지 않습니다.

기타 고려사항

NAT 서브넷에 대한 다른 고려사항은 다음과 같습니다.

  • UDP 매핑 유휴 제한 시간은 30초이며 구성할 수 없습니다.

  • TCP 설정 연결 유휴 제한 시간은 20분이며 구성할 수 없습니다.

  • TCP 임시 연결 유휴 제한 시간은 30초이며 구성할 수 없습니다.

  • 5-튜플(NAT 서브넷 소스 IP 주소 및 소스 포트와 대상 프로토콜, IP 주소, 대상 포트)을 재사용하기 전에 2분의 지연 시간이 발생합니다.

  • Private Service Connect용 SNAT에서는 IP 조각을 지원하지 않습니다.

서비스 연결

서비스 프로듀서가 서비스 연결을 통해 서비스를 노출합니다.

  • 서비스 프로듀서는 서비스를 노출하기 위해 서비스의 부하 분산기 전달 규칙을 참조하는 서비스 연결을 만듭니다.

  • 서비스 소비자는 서비스에 액세스하기 위해 서비스 연결을 참조하는 엔드포인트를 만듭니다.

서비스 연결 URI 형식: projects/SERVICE_PROJECT/regions/REGION/serviceAttachments/SERVICE_NAME

단일 서비스 연결에서만 각 부하 분산기를 참조할 수 있습니다. 동일한 부하 분산기를 사용하는 서비스 연결을 여러 개 구성할 수 없습니다.

연결 환경설정

각 서비스 연결에는 연결 요청이 자동으로 허용되는지 여부를 지정하는 연결 환경설정이 있습니다. 메일을 처리하는 방법에는 세 가지가 있습니다.

  • 모든 연결을 자동으로 허용. 서비스 연결은 모든 소비자의 모든 인바운드 연결 요청을 자동으로 허용합니다. 자동 수락은 들어오는 연결을 차단하는 조직 정책으로 재정의될 수 있습니다.
  • 선택한 네트워크에 대한 연결 허용. 서비스 연결은 소비자 VPC 네트워크가 서비스 연결의 소비자 허용 목록에 있는 경우에만 인바운드 연결 요청을 수락합니다.
  • 선택한 프로젝트에 대한 연결 수락. 서비스 연결은 소비자 프로젝트가 서비스 연결의 소비자 허용 목록에 있는 경우에만 인바운드 연결 요청을 수락합니다.

선택한 프로젝트 또는 네트워크에 대한 연결을 수락하는 것이 좋습니다. 다른 수단을 통해 소비자 액세스를 제어하고 서비스에 대한 권한 액세스를 사용 설정하려면 모든 연결을 자동으로 수락하는 것이 적합할 수 있습니다.

연결 상태

서비스 연결에는 연결의 상태를 설명하는 연결 상태가 있습니다. 자세한 내용은 연결 상태를 참조하세요.

소비자 허용 및 거부 목록

소비자 허용 목록소비자 거부 목록은 서비스 연결의 보안 기능입니다. 허용 및 거부 목록을 사용하면 서비스 프로듀서는 서비스에 대한 Private Service Connect 연결을 설정할 수 있는 소비자를 지정할 수 있습니다. 소비자 허용 목록은 연결이 허용되는지 여부를 지정하고 소비자 거부 목록은 연결이 거부되는지 여부를 지정합니다. 두 목록 모두 연결 리소스의 VPC 네트워크 또는 프로젝트별로 소비자를 지정할 수 있습니다. 프로젝트 또는 네트워크를 허용 목록과 거부 목록에 모두 추가하면 해당 프로젝트나 네트워크의 연결 요청이 거부됩니다. 폴더별 소비자 지정은 지원되지 않습니다.

소비자 허용 목록과 소비자 거부 목록을 사용하면 프로젝트 또는 VPC 네트워크를 지정할 수 있지만 동시에 둘 다 지정할 수는 없습니다. 연결을 중단하지 않고 한 유형에서 다른 유형으로 목록을 변경할 수 있지만 업데이트 한 번으로 변경해야 합니다. 그렇지 않으면 일부 연결이 일시적으로 대기 상태로 변경될 수 있습니다.

소비자 허용 목록이 조직 정책과 상호작용하는 방법에 대한 자세한 내용은 소비자 허용 목록과 조직 정책 간의 상호작용을 참조하세요.

연결 조정

연결 조정은 서비스 연결의 허용 또는 거부 목록 업데이트가 기존 Private Service Connect 연결에 영향을 줄 수 있는지 여부를 결정합니다. 연결 조정이 사용 설정된 경우 허용 또는 거부 목록을 업데이트하면 기존 연결이 종료될 수 있습니다. 이전에 거부된 연결이 수락될 수 있습니다. 연결 조정이 사용 중지된 경우 허용 또는 거부 목록을 업데이트하면 새 연결과 대기 중인 연결에만 영향을 줍니다.

예를 들어 Project-A에서 허용되는 연결이 여러 개 있는 서비스 연결을 가정해 보겠습니다. Project-A는 서비스 연결의 허용 목록에 있습니다. 허용 목록에서 Project-A를 삭제하면 서비스 연결이 업데이트됩니다.

연결 조정이 사용 설정되면 Project-A의 모든 기존 연결이 PENDING으로 전환되어 두 VPC 네트워크 간의 네트워크 연결을 종료하고 네트워크 트래픽을 즉시 중지합니다.

연결 조정이 사용 중지되더라도 Project-A의 기존 연결은 영향을 받지 않습니다. 네트워크 트래픽은 기존 Private Service Connect 연결 간에 계속 전송될 수 있습니다. 하지만 모든 새 Private Service Connect 연결은 허용되지 않습니다.

새 서비스 연결의 연결 조정 구성에 대한 자세한 내용은 명시적 승인으로 서비스 게시를 참조하세요.

기존 서비스 연결의 연결 조정 구성에 대한 자세한 내용은 연결 조정 구성을 참조하세요.

연결 한도

소비자 허용 목록에는 연결 한도가 있습니다. 이 한도는 서비스 연결이 지정된 소비자 프로젝트 또는 VPC 네트워크에서 허용할 수 있는 총 연결 수를 설정합니다. 프로듀서는 이 한도를 사용하여 개별 소비자가 프로듀서 VPC 네트워크의 IP 주소 또는 리소스 할당량을 소진하지 못하도록 방지할 수 있습니다. 허용되는 각 Private Service Connect 연결은 소비자 프로젝트 또는 VPC 네트워크에 대해 구성된 한도에서 차감됩니다. 한도는 소비자 허용 목록을 만들거나 업데이트할 때 설정됩니다. 서비스 연결을 설명할 때 서비스 연결의 연결을 볼 수 있습니다.

예를 들어 서비스 연결에 project-1project-2가 포함된 소비자 허용 목록이 있고 둘 다 하나의 연결로 제한된다고 가정합니다. project-1 프로젝트는 연결 2개를 요청하고 project-2는 연결 1개를 요청하며 project-3은 연결 1개를 요청합니다. project-1에는 연결 한도가 1개이므로 첫 번째 연결은 허용되고 두 번째 연결은 대기 상태로 유지됩니다. project-2에서의 연결이 허용되고 project-3의 연결이 대기 중 상태로 유지됩니다. project-1의 두 번째 연결은 project-1의 한도를 늘려 허용할 수 있습니다. project-3가 소비자 허용 목록에 추가되면 해당 연결이 대기 중에서 허용됨으로 전환됩니다.

DNS 구성

게시된 서비스 및 게시된 서비스에 연결되는 엔드포인트의 DNS 구성에 대한 자세한 내용은 서비스에 대한 DNS 구성을 참조하세요.

여러 리전 구성

다음 구성을 만들어 여러 리전에서 서비스를 사용할 수 있습니다.

프로듀서 구성:

소비자 구성:

이 구성에서 엔드포인트는 기본 전역 부하 분산 정책을 사용하여 트래픽을 라우팅합니다. 먼저 상태를 기준으로 한 다음 클라이언트에 가장 가까운 위치를 기준으로 합니다.

그림 3. 전역 외부 애플리케이션 부하 분산기를 사용하면 인터넷 액세스 권한이 있는 서비스 소비자가 서비스 제작자의 VPC 네트워크에서 서비스로 트래픽을 보낼 수 있습니다. 서비스가 여러 리전에 배포되므로 부하 분산기는 가장 가까운 정상 리전의 NEG로 트래픽을 라우팅할 수 있습니다(확대하려면 클릭).

특징 및 호환성

다음 표에서 체크표시는 기능이 지원된다는 것을, 기호가 없으면 기능이 지원되지 않는다는 것을 나타냅니다.

선택한 프로듀서 부하 분산기에 따라 프로듀서 서비스는 엔드포인트, 백엔드 또는 둘 다의 액세스를 지원할 수 있습니다.

엔드포인트 지원

다음 표에는 게시된 서비스에 액세스하는 엔드포인트의 지원되는 구성 옵션과 기능이 요약되어 있습니다.

소비자 구성(엔드포인트) 프로듀서 부하 분산기
내부 패스 스루 네트워크 부하 분산기 리전 내부 애플리케이션 부하 분산기 리전 내부 프록시 네트워크 부하 분산기 내부 프로토콜 전달(대상 인스턴스)
소비자 전역 액세스

부하 분산기의 전역 액세스 설정과 별개

부하 분산기에 전역 액세스가 사용 설정된 경우에만

부하 분산기에 전역 액세스가 사용 설정된 경우에만

부하 분산기의 전역 액세스 설정과 별개

Interconnect 트래픽

Cloud VPN 트래픽
자동 DNS 구성
IP 스택 IPv4 IPv4 IPv4 IPv4

다음 표에는 엔드포인트에서 액세스하는 게시된 서비스의 지원되는 구성 옵션과 기능이 요약되어 있습니다.

프로듀서 구성(게시된 서비스) 프로듀서 부하 분산기
내부 패스 스루 네트워크 부하 분산기 리전 내부 애플리케이션 부하 분산기 리전 내부 프록시 네트워크 부하 분산기 내부 프로토콜 전달(대상 인스턴스)
지원되는 프로듀서 백엔드
  • GCE_VM_IP NEG
  • 인스턴스 그룹
  • GCE_VM_IP_PORT NEG
  • 하이브리드 NEG
  • 서버리스 NEG
  • Private Service Connect NEG
  • 인스턴스 그룹
  • GCE_VM_IP_PORT NEG
  • 하이브리드 NEG
  • 서버리스 NEG
  • Private Service Connect NEG
  • 인스턴스 그룹
해당 없음
프록시 프로토콜 TCP 트래픽만 TCP 트래픽만
세션 어피니티 모드 NONE(5-튜플)
CLIENT_IP_PORT_PROTO
해당 없음 해당 없음 해당 없음

부하 분산기마다 지원하는 포트 구성이 다릅니다. 일부 부하 분산기는 단일 포트를 지원하고, 일부 부하 분산기는 포트 범위를 지원하고, 일부 포트는 모든 포트를 지원합니다. 자세한 내용은 포트 사양을 참조하세요.

백엔드 지원

게시된 서비스용 Private Service Connect 백엔드에는 소비자 부하 분산기와 프로듀서 부하 분산기라는 두 가지 부하 분산기가 필요합니다. 다음 표에서는 각 소비자 부하 분산기에서 사용할 수 있는 백엔드 서비스 프로토콜을 포함하여 다양한 유형의 소비자 및 프로듀서 부하 분산기 간의 호환성을 설명합니다. 각 행은 소비자 부하 분산기 유형을, 각 열은 프로듀서 부하 분산기 유형을 나타냅니다.

소비자 부하 분산기 및 지원되는 소비자 백엔드 서비스 프로토콜 프로듀서 부하 분산기
내부 패스 스루 네트워크 부하 분산기 리전 내부 애플리케이션 부하 분산기 리전 내부 프록시 네트워크 부하 분산기

전역 외부 애플리케이션 부하 분산기(여러 리전 지원)

프로토콜: HTTPS, HTTP2

참고: 기본 애플리케이션 부하 분산기는 지원되지 않습니다.

리전 외부 애플리케이션 부하 분산기

프로토콜: HTTP, HTTPS, HTTP2

리전 내부 애플리케이션 부하 분산기

프로토콜: HTTP, HTTPS, HTTP2

리전 간 내부 애플리케이션 부하 분산기(미리보기)

프로토콜: HTTPS, HTTP2

리전 내부 프록시 네트워크 부하 분산기

프로토콜: TCP

리전 간 내부 프록시 네트워크 부하 분산기

프로토콜: TCP

리전별 외부 프록시 네트워크 부하 분산기

프로토콜: TCP

전역 외부 프록시 네트워크 부하 분산기(미리보기)

프로토콜: TCP/SSL

참고: 기본 프록시 네트워크 부하 분산기는 지원되지 않습니다.

다음 표에서는 Private Service Connect 백엔드에서 지원하는 프로듀서 부하 분산기의 구성을 설명합니다.

구성 프로듀서 부하 분산기
내부 패스 스루 네트워크 부하 분산기 리전 내부 애플리케이션 부하 분산기 리전 내부 프록시 네트워크 부하 분산기
지원되는 프로듀서 백엔드
  • GCE_VM_IP NEG
  • 인스턴스 그룹
  • GCE_VM_IP_PORT NEG
  • 하이브리드 NEG
  • 서버리스 NEG
  • Private Service Connect NEG
  • 인스턴스 그룹
  • GCE_VM_IP_PORT NEG
  • 하이브리드 NEG
  • 서버리스 NEG
  • Private Service Connect NEG
  • 인스턴스 그룹
전달 규칙 프로토콜
  • TCP
  • HTTP
  • HTTPS
  • HTTP/2
  • TCP
전달 규칙 포트 전달 규칙은 단일 포트를 참조해야 합니다. 전달 규칙은 단일 포트를 참조해야 합니다. 전달 규칙은 단일 포트를 참조해야 합니다.
프록시 프로토콜

공유 VPC

서비스 프로젝트 관리자공유 VPC 네트워크의 리소스에 연결되는 공유 VPC 서비스 프로젝트에 서비스 연결을 만들 수 있습니다.

이 구성은 다음을 제외하고 일반 서비스 연결과 동일합니다.

  • 프로듀서 부하 분산기의 전달 규칙은 공유 VPC 네트워크의 IP 주소와 연결됩니다. 전달 규칙의 서브넷은 서비스 프로젝트와 공유되어야 합니다.
  • 서비스 연결에는 공유 VPC 네트워크의 Private Service Connect 서브넷을 사용합니다. 이 서브넷은 서비스 프로젝트와 공유되어야 합니다.

로깅

백엔드 VM이 포함된 서브넷에 VPC 흐름 로그를 사용 설정할 수 있습니다. 로그에는 Private Service Connect 서브넷의 백엔드 VM과 IP 주소 간의 흐름이 표시됩니다.

VPC 서비스 제어

VPC 서비스 제어와 Private Service Connect는 서로 호환됩니다. Private Service Connect 엔드포인트가 배포된 VPC 네트워크가 VPC 서비스 제어 경계에 있으면 엔드포인트가 동일한 경계에 속합니다. 엔드포인트를 통해 액세스하는 모든 VPC 서비스 제어 지원 서비스에는 해당 VPC 서비스 제어 경계의 정책이 적용됩니다.

엔드포인트를 만들면 소비자 프로젝트와 제작자 프로젝트 간에 제어 영역 API 호출이 수행되어 Private Service Connect 연결이 설정됩니다. 동일한 VPC 서비스 제어 경계에 없는 소비자 프로젝트와 제작자 프로젝트 간에 Private Service Connect 연결을 설정하려면 이그레스 정책을 사용한 명시적 승인이 필요하지 않습니다. 엔드포인트를 통한 VPC 서비스 제어 지원 서비스와의 통신은 VPC 서비스 제어 경계로 보호됩니다.

가격 책정

Private Service Connect의 가격은 VPC 가격 책정 페이지에 설명되어 있습니다.

할당량

게시된 서비스에 액세스하기 위해 만들 수 있는 엔드포인트 수는 PSC Internal LB Forwarding Rules 할당량에 따라 제어됩니다. 자세한 내용은 할당량을 참조하세요.

온프레미스 액세스

Private Service Connect 서비스는 엔드포인트를 사용하여 제공됩니다. 이러한 엔드포인트는 지원되는 연결된 온프레미스 호스트에서 액세스될 수 있습니다. 자세한 내용은 온프레미스 호스트에서 엔드포인트 액세스를 참조하세요.

제한사항

게시된 서비스의 제한사항은 다음과 같습니다.

  • 프로듀서 부하 분산기는 다음 기능을 지원하지 않습니다.
  • 패킷 미러링은 Private Service Connect의 게시된 서비스 트래픽의 패킷을 미러링할 수 없습니다.
  • Google Cloud CLI 또는 API를 사용하여 내부 프로토콜 전달에 사용되는 전달 규칙을 가리키는 서비스 연결을 만들어야 합니다.
  • 다음 부하 분산기 유형은 BETA 측정항목의 값을 제공하지 않습니다. 값이 0이거나 누락됩니다.
    • 리전 내부 애플리케이션 부하 분산기
    • 리전 내부 프록시 네트워크 부하 분산기
  • 문제 및 해결 방법은 알려진 문제를 참조하세요.