서브넷 구성 및 관리

이 문서에서는 VMware Engine에서 다양한 서브넷을 만들고 관리하는 방법을 설명합니다.

서브넷에는 워크로드 서브넷, 서비스 서브넷, 관리 워크로드 서브넷이라는 세 가지 유형이 있습니다.

워크로드 서브넷

워크로드 가상 머신의 경우 프라이빗 클라우드에 대해 NSX-T Manager에 네트워크 세그먼트를 만들어야 합니다. NSX-T Manager에서 만든 네트워크 세그먼트는 VMware Engine에 표시되지 않습니다.

NSX-T Manager 액세스

서브넷을 만드는 프로세스는 VMware Engine을 통해 액세스할 수 있는 NSX-T에서 발생합니다.

  1. Google Cloud 콘솔에서 프라이빗 클라우드 페이지로 이동합니다.

    프라이빗 클라우드로 이동

  2. 서브넷을 만들 프라이빗 클라우드 이름을 클릭합니다.

  3. 관리 어플라이언스에서 NSX Manager에 해당하는 URL을 클릭합니다.

  4. 메시지가 표시되면 로그인 사용자 인증 정보를 입력합니다. 참고로 프라이빗 클라우드 세부정보 페이지에서 생성된 사용자 인증 정보를 검색할 수 있습니다.

Active Directory와 같은 ID 소스를 사용하도록 NSX-T를 설정한 경우 ID 소스 사용자 인증 정보를 대신 사용하세요.

워크로드 네트워크 세그먼트 만들기

워크로드 VM의 경우 프라이빗 클라우드에 대한 NSX-T 네트워크 세그먼트로 서브넷을 만듭니다.

  1. NSX-T에서 네트워킹 > 세그먼트로 이동합니다.
  2. 세그먼트 추가를 클릭합니다.
  3. 세그먼트 이름 입력란에 세그먼트의 이름을 입력합니다.
  4. 연결된 게이트웨이 목록에서 계층 1을 선택하여 tier-1 게이트웨이에 연결합니다.
  5. 전송 영역 목록에서 TZ-OVERLAY | 오버레이를 선택합니다.
  6. 서브넷 열에 서브넷 범위를 입력합니다. 마지막 옥텟에 .1을 넣어서 서브넷 범위를 지정합니다. 예를 들면 10.12.2.1/24입니다.
  7. DHCP 구성 설정을 클릭하고 DHCP 범위 필드에 값을 입력합니다.
  8. 적용을 클릭하여 DHCP 구성을 저장합니다.
  9. 저장을 클릭합니다. 이제 VM을 만들 때 vCenter에서 이 네트워크 세그먼트를 선택할 수 있습니다.

특정 리전에서는 비공개 서비스 액세스를 사용하여 VMware Engine에서 VPC 네트워크로의 고유 경로를 최대 100개까지 공지할 수 있습니다. 예를 들어 고유 경로에는 프라이빗 클라우드 관리 IP 주소 범위, NSX-T 워크로드 네트워크 세그먼트, HCX 내부 IP 주소 범위가 포함됩니다. 이 경로 한도는 리전의 모든 프라이빗 클라우드를 포함하며 Cloud Router의 학습된 경로 한도에 해당합니다.

라우팅 한도에 대한 자세한 내용은 Cloud Router 할당량 및 한도를 참조하세요.

서비스 서브넷

서비스 서브넷은 프라이빗 클라우드가 생성될 때 VMware Engine에서 자동으로 만든 userDefined 서브넷입니다. 스토리지, 백업, 재해 복구(DR), 미디어 스트리밍과 같은 어플라이언스 또는 서비스 배포 시나리오에 서비스 서브넷 사용하여 아주 규모가 큰 프라이빗 클라우드에 대한 대규모 선형 처리량 및 패킷 처리를 제공하는 것을 타겟으로 할 수 있습니다. 사용 가능한 서비스 서브넷 이름은 다음과 같습니다.

  • service-1
  • service-2
  • service-3
  • service-4
  • service-5

서비스 서브넷 전반의 가상 머신 통신은 VMware ESXi 호스트를 Google Cloud 네트워킹 인프라로 직접 종료하므로 고속 통신이 가능합니다.

서비스 서브넷 구성

VMware Engine은 서비스 서브넷을 만들 때 CIDR 범위 또는 프리픽스를 할당하지 않습니다. 겹치지 않는 CIDR 범위와 프리픽스를 지정해야 합니다. 사용 가능한 첫 번째 주소가 게이트웨이 주소가 됩니다. CIDR 범위와 프리픽스를 할당하려면 서비스 서브넷 중 하나를 수정합니다.

CIDR 요구사항이 변경되면 서비스 서브넷을 업데이트할 수 있습니다. 기존 서비스 서브넷 CIDR을 수정하면 해당 서비스 서브넷에 연결된 VM에 네트워크 가용성이 중단될 수 있습니다.

vSphere 분산 포트 그룹 구성

또한 VM을 서비스 서브넷에 연결하려면 새 분산 포트 그룹을 만들어야 합니다. 이 포트 그룹은 서비스 서브넷 ID를 vCenter 프라이빗 클라우드 내 네트워크 이름에 매핑합니다. 그러려면 다음 안내를 따르세요.

  1. VMware vCenter 인터페이스에 연결하려면 관리 어플라이언스에 액세스하기를 참고하세요.
  2. vCenter 인터페이스의 네트워크 구성 섹션으로 이동합니다.
  3. Datacenter-dvs를 선택하고 New Distributed Port Group(새로운 분산 포트 그룹)을 선택합니다.

분산 포트 그룹이 생성된 후 VM 속성의 네트워크 구성에서 해당하는 이름을 선택하여 VM을 연결할 수 있습니다. 다음은 분산 포트 그룹의 중요한 구성 값입니다.

  • 포트 바인딩: 정적 바인딩
  • 포트 할당: 탄력적
  • 포트 수: 120
  • VLAN 유형: VLAN
  • VLAN ID: Google Cloud VMWare Engine 인터페이스의 서브넷 섹션 내에 있는 해당 서브넷 ID

Google Cloud CLI 및 API 요구사항

gcloud 명령줄 도구나 API를 사용하여 VMware Engine 리소스를 관리하려면 다음 설명대로 도구를 구성하는 것이 좋습니다.

gcloud

  1. 기본 프로젝트 ID를 설정합니다.

    gcloud config set project PROJECT_ID
    
  2. 기본 리전 및 영역을 설정합니다.

    gcloud config set compute/region REGION
    
    gcloud config set compute/zone ZONE
    

gcloud vmware 도구에 대한 자세한 내용은 Cloud SDK 참조 문서를 검토하세요.

API

이 문서 집합의 API 예시는 cURL 명령줄 도구를 사용하여 API를 쿼리합니다. cURL 요청의 일부로 유효한 액세스 토큰이 필요합니다. 유효한 액세스 토큰을 가져오는 방법에는 여러 가지가 있습니다. 다음 단계에서는 gcloud 도구를 사용하여 액세스 토큰을 생성합니다.

  1. Google Cloud에 로그인합니다.

    gcloud auth login
    
  2. 액세스 토큰을 생성하여 TOKEN으로 내보냅니다.

    export TOKEN=`gcloud auth print-access-token`
    
  3. TOKEN이 제대로 설정되었는지 확인합니다.

    echo $TOKEN
    

이제 API에 대한 요청에 승인 토큰을 사용합니다. 예를 들면 다음과 같습니다.

curl -X GET -H "Authorization: Bearer \"$TOKEN\"" -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations

Python

이 문서의 Python 코드 샘플은 VMware Engine 라이브러리를 사용하여 API와 통신합니다. 이 접근 방식을 사용하려면 라이브러리를 설치해야 하며 애플리케이션 기본 사용자 인증 정보를 구성해야 합니다.

  1. Python 라이브러리를 다운로드하고 설치합니다.

    pip install google-cloud-vmwareengine
    
  2. 셸에서 명령어를 실행하여 ADC 정보를 구성합니다.

    gcloud auth application-default login
    

    또는 서비스 계정 키 파일을 사용합니다.

    export GOOGLE_APPLICATION_CREDENTIALS="FILE_PATH"
    

라이브러리에 대한 자세한 내용은 참조 페이지를 확인하거나 GitHub의 코드 샘플을 확인하세요.

Google Cloud 콘솔, Google Cloud CLI 또는 VMware Engine API를 사용하여 userDefined 서브넷을 구성할 수 있습니다. 서브넷 및 프라이빗 클라우드의 이름을 알아야 합니다.

콘솔

  1. Google Cloud 콘솔에서 서브넷 페이지로 이동합니다.

    서브넷으로 이동

  2. 수정할 userDefined 서브넷을 찾아 연필 아이콘을 클릭하여 서브넷을 수정합니다.

gcloud

Google Cloud CLI를 사용하여 gcloud vmware private-clouds subnets update 명령어로 서브넷을 수정합니다.

gcloud vmware private-clouds subnets update SUBNET_NAME \
  --private-cloud=PRIVATE_CLOUD_ID \
  --location=ZONE \
  --ip-cidr-range=`IP_ADDRESS`

다음을 바꿉니다.

  • SUBNET_NAME: 이 프라이빗 클라우드에서 업데이트할 서브넷의 이름
  • PRIVATE_CLOUD_ID: 프라이빗 클라우드의 이름
  • ZONE: 프라이빗 클라우드의 영역
  • IP_ADDRESS: IP 주소 및 범위(예: 10.0.0.0/24)

API

VMware Engine API를 사용하여 서브넷을 수정하려면 PATCH 요청을 수행합니다.

 curl -sSL -XPATCH -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json; charset=utf-8"
 "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/subnets/SUBNET_NAME?update_mask=ip_cidr_range" -d '{
    "ip_cidr_range": "IP_ADDRESS"
 }'

다음을 바꿉니다.

  • PROJECT_ID: 이 요청의 프로젝트 ID
  • ZONE: 프라이빗 클라우드의 영역
  • PRIVATE_CLOUD_ID: 프라이빗 클라우드의 이름
  • SUBNET_NAME: 이 프라이빗 클라우드에서 업데이트할 서브넷의 이름
  • IP_ADDRESS: IP 주소 및 범위(예: 10.0.0.0/24)

관리 서브넷

관리 서브넷은 Google Cloud CLI 또는 VMware Engine API를 사용하여 볼 수 있는 읽기 전용 서브넷입니다.

모든 서브넷 나열

Google Cloud 콘솔, Google Cloud CLI 또는 API에서 서브넷 목록을 확인합니다.

콘솔

서브넷 페이지로 이동하여 서브넷 목록을 봅니다.

서브넷으로 이동

gcloud

Google Cloud CLI를 사용하여 gcloud vmware private-clouds subnets list 명령어를 입력하여 서브넷을 나열합니다.

gcloud vmware private-clouds subnets list \
  --private-cloud=PRIVATE_CLOUD_ID \
  --location=ZONE

다음을 바꿉니다.

  • PRIVATE_CLOUD_ID: 프라이빗 클라우드의 이름
  • ZONE: 프라이빗 클라우드의 영역

API

VMware Engine API를 사용하여 서브넷을 나열하려면 GET 요청을 실행합니다.

 curl -sSL -XGET -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json; charset=utf-8"
 "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/subnets"

다음을 바꿉니다.

  • PROJECT_ID: 이 요청의 프로젝트 ID
  • ZONE: 프라이빗 클라우드의 영역
  • PRIVATE_CLOUD_ID: 프라이빗 클라우드의 이름

서브넷 설명

Google Cloud CLI 또는 VMware Engine API를 사용하여 서브넷에 대한 설명을 가져옵니다.

콘솔

서브넷 페이지로 이동하여 서브넷에 대한 설명을 가져옵니다.

서브넷으로 이동

gcloud

gcloud vmware private-clouds subnets update 명령어를 사용하여 서브넷에 대한 설명을 가져옵니다.

gcloud vmware private-clouds subnets describe SUBNET_NAME \
  --private-cloud=PRIVATE_CLOUD_ID \
  --location=ZONE

다음을 바꿉니다.

  • SUBNET_NAME: 이 프라이빗 클라우드에서 업데이트할 서브넷의 이름
  • PRIVATE_CLOUD_ID: 프라이빗 클라우드의 이름
  • ZONE: 프라이빗 클라우드의 영역

API

VMware Engine API를 사용하여 서브넷에 대한 설명을 가져오려면 GET 요청을 실행합니다.

GET "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/privateClouds/PRIVATE_CLOUD_ID/subnets/SUBNET_NAME"

다음을 바꿉니다.

  • PROJECT_ID: 이 요청의 프로젝트 이름
  • REGION: 네트워크의 리전
  • PRIVATE_CLOUD_ID: 프라이빗 클라우드의 이름
  • SUBNET_NAME: 이 프라이빗 클라우드에서 업데이트할 서브넷의 이름

다음 단계