비공개 서비스 액세스 설정
비공개 서비스 액세스는 Virtual Private Cloud(VPC) 네트워크와 VMware Engine의 네트워크 간의 비공개 연결입니다. 이 페이지에서는 Google Cloud VMware Engine에 대한 비공개 서비스 액세스를 설정하고 VPC 네트워크를 프라이빗 클라우드에 연결하는 방법을 설명합니다.
비공개 서비스 액세스를 사용하면 다음 동작이 가능합니다.
- VPC 네트워크와 VMware VM에서 가상 머신(VM) 인스턴스의 내부 IP 주소에 의한 독점적인 통신. VM 인스턴스는 비공개 서비스 액세스를 통해 사용 가능한 서비스에 도달하기 위해 인터넷 액세스 또는 외부 IP 주소가 필요하지 않습니다.
- 내부 IP 주소를 사용하여 비공개 서비스 액세스를 지원하는 VMware VM과 Google Cloud 지원 서비스 간의 통신
- Cloud VPN이나 Cloud Interconnect를 사용하여 온프레미스를 VPC 네트워크에 연결한 경우 기존 온프레미스 연결을 사용하여 VMware Engine 프라이빗 클라우드에 연결합니다.
VMware Engine 프라이빗 클라우드 만들기와 별개로 비공개 서비스 액세스를 설정할 수 있습니다. 비공개 연결은 VPC 네트워크를 연결할 프라이빗 클라우드를 만들기 전후에 생성될 수 있습니다.
-
프로젝트에 다음 역할이 있는지 확인합니다. Compute > Network Admin
역할 확인
-
Google Cloud 콘솔에서 IAM 페이지로 이동합니다.
IAM으로 이동 - 프로젝트를 선택합니다.
-
주 구성원 열에서 이메일 주소가 있는 행을 찾습니다.
이메일 주소가 열에 없으면 역할이 없는 것입니다.
- 이메일 주소가 있는 행에 대해 역할 열에서 역할 목록에 필요한 역할이 있는지 확인합니다.
역할 부여
-
Google Cloud 콘솔에서 IAM 페이지로 이동합니다.
IAM으로 이동 - 프로젝트를 선택합니다.
- 액세스 권한 부여를 클릭합니다.
- 새 주 구성원 필드에 이메일 주소를 입력합니다.
- 역할 선택 목록에서 역할을 선택합니다.
- 역할을 추가로 부여하려면 다른 역할 추가를 클릭하고 각 역할을 추가합니다.
- 저장을 클릭합니다.
-
시작하기 전에
- 다음을 수행하여 VPC 네트워크의 피어링된 프로젝트 ID를 찾습니다.
- Google Cloud 콘솔에서 VPC 네트워크 피어링으로 이동합니다. servicenetworking-googleapis-com이라는 VPC 네트워크 피어링 연결이 피어링 테이블에 나열됩니다.
- VMware Engine 포털에서 비공개 연결을 설정할 때 사용할 수 있도록 피어링된 프로젝트 ID를 복사합니다.
- 사용 가능한 옵션에서 비공개 서비스 액세스에 연결할 VPC 네트워크를 선택합니다.
- 온프레미스 연결에 Cloud VPN을 사용하는 경우: Cloud VPN 세션에 연결된 VPC 네트워크를 선택합니다.
- 온프레미스 연결에 Cloud Interconnect를 사용하는 경우: Cloud Interconnect VLAN 연결이 종료되는 VPC 네트워크를 선택합니다.
- 프로젝트에서 Service Networking API]서비스 네트워킹 시작하기를 활성화합니다.
- 프로젝트 소유자와 Compute 네트워크 관리자 역할이 있는 IAM 주 구성원(
roles/compute.networkAdmin
)은 할당된 IP 범위를 만들고 비공개 연결을 관리할 수 있습니다. - 비공개 서비스 연결, 프라이빗 클라우드 관리, 워크로드 네트워크 세그먼트의 IP 주소 범위를 입력합니다. 이렇게 하면 VPC 네트워크 서브넷과 VMware Engine에서 사용하는 IP 주소 간에 IP 주소 충돌이 발생하지 않습니다.
멀티 VPC 연결
VMware Engine을 사용하면 Google Cloud에 배포된 기존 VPC 아키텍처를 변경할 필요 없이 서로 다른 VPC 네트워크에서 동일한 프라이빗 클라우드에 액세스할 수 있습니다. 예를 들어 멀티 VPC 연결은 테스트 및 개발을 위한 별도의 VPC 네트워크가 있는 경우에 유용합니다.
이러한 상황에서는 VPC 네트워크가 동일한 프라이빗 클라우드 또는 여러 프라이빗 클라우드에 있는 별도의 vSphere 리소스 그룹 내 VMware VM 또는 다른 대상 주소와 통신해야 합니다.
기본적으로 리전별로 VPC 네트워크 3개를 피어링할 수 있습니다. 이 피어링 한도에는 인터넷 액세스 네트워크 서비스에서 사용하는 VPC 피어링이 포함됩니다. 이 한도를 늘리려면 Cloud Customer Care에 문의하세요.
공유 VPC
공유 VPC를 사용하는 경우 호스트 프로젝트에서 할당된 IP 범위와 비공개 연결을 만듭니다. 이러한 작업은 일반적으로 호스트 프로젝트의 네트워크 관리자가 수행해야 합니다. 서비스 프로젝트의 VM 인스턴스는 호스트 프로젝트가 설정된 후 비공개 연결을 사용할 수 있습니다.
비공개 연결 만들기
비공개 연결을 만들려면 먼저 Compute Engine VPC와 비공개 서비스 액세스 연결을 만들어야 합니다. Google Cloud CLI를 사용하면 됩니다.
Google Cloud CLI를 사용하여 Compute Engine VPC와 비공개 서비스 액세스 연결을 만듭니다.
Google Cloud CLI를 사용하여 Compute Engine VPC와 비공개 서비스 액세스 연결을 만들려면 다음을 수행합니다.
gcloud compute networks create
명령어를 실행하여 VPC를 만듭니다.gcloud compute networks create NETWORK_ID-vpc \ --subnet-mode=custom
다음을 바꿉니다.
NETWORK_ID
: 이 요청의 네트워크 ID
gcloud compute addresses create
명령어를 실행하여 예약된 범위를 만듭니다.gcloud compute instances create VM_NAME \ [--image=IMAGE | --image-family=IMAGE_FAMILY] \ --image-project=IMAGE_PROJECT \ --machine-type=MACHINE_TYPE
gcloud compute addresses create RESERVED_RANGE_ID-range \ --global \ --purpose=VPC_PEERING \ --prefix-length=24 \ --description="DESCRIPTION" \ --network=RESERVED_RANGE_ID-vpc
다음을 바꿉니다.
RESERVED_RANGE_ID
: 이 요청에 예약된 범위 ID입니다.DESCRIPTION
: 이 예약된 범위에 대한 설명입니다.
선택사항: 비공개 연결에 대해 서비스 네트워킹 테넌트 프로젝트(SNTP) 및 VPC를 추출하려면
gcloud compute networks peerings list
명령어를 실행합니다.gcloud compute networks peerings list \ --network=NETWORK_ID
PEER_PROJECT 열에서 SNTP를 찾고 PEER_NETWORK에서 SNVPC를 찾습니다.
Google Cloud CLI 또는 VMware Engine API를 사용하여 PRIVATE_SERVICE_ACCESS
유형 및 GLOBAL
라우팅 모드로 비공개 연결을 만듭니다.
gcloud
gcloud vmware private-connections create
명령어를 실행하여 비공개 연결을 만듭니다.gcloud vmware private-connections create PRIVATE_CONNECTION_ID \ --location=REGION\ --description="" \ --vmware-engine-network=REGION-default \ --service-project=SERVICE_NETWORKING_TENANT_PROJECT\ --type=PRIVATE_SERVICE_ACCESS \ --routing-mode=GLOBAL
다음을 바꿉니다.
PRIVATE_CONNECTION_ID
: 이 요청의 비공개 연결 ID입니다.REGION
: 이 네트워크를 만들 리전입니다.SERVICE_NETWORKING_TENANT_PROJECT
: 이 서비스 네트워킹 테넌트 VPC의 프로젝트 이름입니다. SNTP는 피어링 이름servicenetworking-googleapis-com
의 PEER_PROJECT 열에서 확인할 수 있습니다.
(선택사항) 비공개 연결을 나열하려면
gcloud vmware private-connections create
명령어를 실행합니다.gcloud vmware private-connections list \ --location=REGION
다음을 바꿉니다.
REGION
: 나열할 네트워크의 리전
API
VMware Engine API를 사용하여 Compute Engine VPC와 비공개 서비스 액세스 연결을 만들려면 다음을 수행합니다.
POST
요청을 실행하여 비공개 연결을 만듭니다.POST "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/privateConnections?private_connection_id=PRIVATE_CONNECTION_ID" -d '{ "description": "My first private connection", "vmware_engine_network": "projects/PROJECT_ID/locations/REGION/vmwareEngineNetworks/REGION -default", "type": "PRIVATE_SERVICE_ACCESS", "routing_mode": "GLOBAL", "service_network": "projects/SERVICE_NETWORKING_TENANT_PROJECT/global/networks/servicenetworking" }'
다음을 바꿉니다.
PRIVATE_CONNECTION_ID
: 이 요청의 비공개 연결 ID입니다.REGION
: 이 비공개 연결을 만들 리전입니다.SERVICE_NETWORKING_TENANT_PROJECT
: 이 서비스 네트워킹 테넌트 VPC의 프로젝트 이름입니다. SNTP는 피어링 이름servicenetworking-googleapis-com
의 PEER_PROJECT 열에서 확인할 수 있습니다.
(선택사항) 비공개 연결을 나열하려면
GET
요청을 수행합니다.
GET "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/privateConnections"
다음을 바꿉니다.
PROJECT_ID
: 이 요청의 프로젝트 이름입니다.REGION
: 비공개 연결을 나열할 리전입니다.
비공개 연결 수정
Google Cloud CLI 또는 VMware Engine API를 사용하여 비공개 연결을 수정할 수 있습니다. 다음 예시에서는 설명을 변경하고 라우팅 모드를 REGIONAL로 업데이트합니다.
gcloud
gcloud vmware private-connections
update
명령어를 실행하여 비공개 연결을 수정합니다.
gcloud vmware private-connections update PRIVATE_CONNECTION_ID \ --location=REGION \ --description="Updated description for the private connection" \ --routing-mode=REGIONAL
다음을 바꿉니다.
PROJECT_ID
: 이 요청의 프로젝트 이름입니다.REGION
: 이 비공개 연결을 업데이트할 리전입니다.PRIVATE_CONNECTION_ID
: 이 요청의 비공개 연결 ID입니다.
API
VMware Engine API를 사용하여 비공개 연결을 수정하려면 PATCH
요청을 수행합니다.
PATCH "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/privateConnections/PRIVATE_CONNECTION_ID?update_mask=description, routing_mode" -d '{ "description": "Updated description for the private connection", "routing_mode": "REGIONAL" }'
다음을 바꿉니다.
PROJECT_ID
: 이 요청의 프로젝트 이름입니다.REGION
: 이 비공개 연결을 업데이트할 리전입니다.PRIVATE_CONNECTION_ID
: 이 요청의 비공개 연결 ID입니다.
비공개 연결 설명
Google Cloud CLI 또는 VMware Engine API를 사용하여 비공개 연결에 대한 설명을 가져오려면 다음을 수행합니다.
gcloud
gcloud vmware
private-connections describe
명령어를 실행하여 비공개 연결에 대한 설명을 가져옵니다.
gcloud vmware private-connections describe PRIVATE_CONNECTION_ID \ --location=REGION
다음을 바꿉니다.
PRIVATE_CONNECTION_ID
: 이 요청의 비공개 연결 ID입니다.REGION
: 비공개 연결의 리전
API
VMware Engine API를 사용하여 비공개 연결에 대한 설명을 가져오려면 GET
요청을 수행합니다.
GET "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/privateConnections/PRIVATE_CONNECTION_ID"
다음을 바꿉니다.
PROJECT_ID
: 이 요청의 프로젝트 이름입니다.PRIVATE_CONNECTION_ID
: 이 요청의 비공개 연결 ID입니다.REGION
: 비공개 연결의 리전
비공개 연결에 대한 피어링 경로 나열
Google Cloud CLI 또는 VMware Engine API를 사용하여 비공개 연결에 대해 교환되는 피어링 경로를 나열하려면 다음을 수행합니다.
gcloud
gcloud vmware private-connections routes list
명령어를 실행하여 비공개 연결로 교환되는 피어링 경로를 나열합니다.
gcloud vmware private-connections routes list \ --private-connection=PRIVATE_CONNECTION_ID \ --location=REGION
다음을 바꿉니다.
PRIVATE_CONNECTION_ID
: 이 요청의 비공개 연결 ID입니다.REGION
: 비공개 연결의 리전
API
VMware Engine API를 사용하여 비공개 연결에 대해 교환되는 피어링 경로를 나열하려면 GET
요청을 수행합니다.
GET "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/privateConnections/PRIVATE_CONNECTION_ID/peeringRoutes"
다음을 바꿉니다.
PROJECT_ID
: 이 요청의 프로젝트 이름REGION
: 비공개 연결의 리전PRIVATE_CONNECTION_ID
: 이 요청의 비공개 연결 ID입니다.
라우팅 한도
프라이빗 클라우드가 수신할 수 있는 최대 경로 수는 200입니다. 예를 들어 이러한 경로는 온프레미스 네트워크, 피어링된 VPC 네트워크, 동일한 VPC 네트워크의 다른 프라이빗 클라우드에서 제공될 수 있습니다. 이 경로 한도는 BGP 세션 한도당 Cloud Router의 커스텀 경로 공지 최대 개수에 해당합니다.
특정 리전에서는 비공개 서비스 액세스를 사용하여 VMware Engine에서 VPC 네트워크로의 고유 경로를 최대 100개까지 공지할 수 있습니다. 예를 들어 고유 경로에는 프라이빗 클라우드 관리 IP 주소 범위, NSX-T 워크로드 네트워크 세그먼트, HCX 네트워크 IP 주소 범위가 포함됩니다. 이 경로 한도는 리전의 모든 프라이빗 클라우드를 포함하며 Cloud Router의 학습된 경로 한도에 해당합니다.
라우팅 한도에 대한 자세한 내용은 Cloud Router 할당량 및 한도를 참조하세요.
문제 해결
다음 동영상은 Google Cloud VPC와 Google Cloud VMware Engine 사이의 피어링 연결 이슈를 확인하고 해결하는 방법을 보여줍니다.