VM당 Tier_1 네트워킹 성능 구성


Compute Engine을 사용하면 특정 범용 및 컴퓨팅 최적화 가상 머신(VM) 인스턴스에 대해 고대역폭 VM당 Tier_1 네트워킹 성능 구성을 선택할 수 있습니다. Tier_1 네트워킹 구성의 VM은 고성능 컴퓨팅(HPC), 머신러닝(ML), 딥 러닝(DL)과 같이 노드 간 통신이 많은 대규모 분산 컴퓨팅 워크로드에 특히 유용합니다.

이러한 높은 처리량의 VM을 고성능 로컬 SSD 스토리지와 결합하면 플래시에 최적화된 I/O 집약적인 데이터베이스에 적합합니다.

시작하기 전에

  • Tier_1 높은 대역폭 네트워크 가격 책정에서 VM Tier_1 네트워킹 성능에 대한 가격 책정을 검토하세요.
  • 아직 인증을 설정하지 않았다면 설정합니다. 인증은 Google Cloud 서비스 및 API에 액세스하기 위해 ID를 확인하는 프로세스입니다. 로컬 개발 환경에서 코드 또는 샘플을 실행하려면 다음과 같이 Compute Engine에 인증하면 됩니다.

    이 페이지의 샘플 사용 방법에 대한 탭을 선택하세요.

    콘솔

    Google Cloud 콘솔을 사용하여 Google Cloud 서비스 및 API에 액세스할 때는 인증을 설정할 필요가 없습니다.

    gcloud

    1. Google Cloud CLI를 설치한 후 다음 명령어를 실행하여 초기화합니다.

      gcloud init
    2. 기본 리전 및 영역을 설정합니다.

    REST

    로컬 개발 환경에서 이 페이지의 REST API 샘플을 사용하려면 gcloud CLI에 제공한 사용자 인증 정보를 사용합니다.

      Google Cloud CLI를 설치한 후 다음 명령어를 실행하여 초기화합니다.

      gcloud init

필요한 역할

VM당 Tier_1 네트워킹 성능을 사용하도록 VM을 구성하는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대한 다음 IAM 역할을 부여해 달라고 요청하세요.

역할 부여에 대한 자세한 내용은 액세스 관리를 참조하세요.

이러한 사전 정의된 역할에는 VM당 Tier_1 네트워킹 성능을 사용하도록 VM을 구성하는 데 필요한 권한이 포함되어 있습니다. 필요한 정확한 권한을 보려면 필수 권한 섹션을 펼치세요.

필수 권한

VM당 Tier_1 네트워킹 성능을 사용하도록 VM을 구성하려면 다음 권한이 필요합니다.

  • VM 만들기:
    • 프로젝트에 대한 compute.instances.create 권한
    • 커스텀 이미지를 사용하여 VM 만들기: 이미지에 대한 compute.images.useReadOnly 권한
    • 스냅샷을 사용하여 VM 만들기: 스냅샷에 대한 compute.snapshots.useReadOnly 권한
    • 인스턴스 템플릿을 사용하여 VM 만들기: 인스턴스 템플릿에 대한 compute.instanceTemplates.useReadOnly 권한
    • VM에 기존 네트워크 할당: 프로젝트에 대한 compute.networks.use 권한
    • VM의 고정 IP 주소 지정: 프로젝트에 대한 compute.addresses.use 권한
    • 기존 네트워크 사용 시 VM에 외부 IP 주소 할당: 프로젝트에 대한 compute.networks.useExternalIp 권한
    • VM의 서브넷 지정: 프로젝트 또는 선택한 서브넷에 대한 compute.subnetworks.use 권한
    • VPC 네트워크를 사용할 때 VM에 외부 IP 주소 할당: 프로젝트 또는 선택한 서브넷에 대한 compute.subnetworks.useExternalIp 권한
    • VM에 VM 인스턴스 메타데이터 설정: 프로젝트에 대한 compute.instances.setMetadata 권한
    • VM에 태그 설정: VM에 대한 compute.instances.setTags 권한
    • VM에 라벨 설정: VM에 대한 compute.instances.setLabels 권한
    • VM에 사용할 서비스 계정 설정: VM에 대한 compute.instances.setServiceAccount 권한
    • VM의 새 디스크 만들기: 프로젝트에 대한 compute.disks.create 권한
    • 기존 디스크를 읽기 전용 또는 읽기-쓰기 모드로 연결: 디스크에 대한 compute.disks.use 권한
    • 기존 디스크를 읽기 전용 모드로 연결: 디스크에 대한 compute.disks.useReadOnly 권한
  • Tier_1 네트워킹을 포함하도록 VM 업데이트:
    • compute.instances.update
    • 인스턴스에서 수정할 리소스를 사용할 수 있는 권한(예: compute.instances.updateNetworkInterface)입니다.
  • Tier_1 네트워킹으로 인스턴스 템플릿을 만들기 위해 필요한 권한: instanceTemplates.insert 메서드를 호출하는 데 필요한 모든 권한

커스텀 역할이나 다른 사전 정의된 역할을 사용하여 이 권한을 부여받을 수도 있습니다.

제한사항

  • Compute Engine은 Tier_1 네트워킹을 지원하는 유일한 제품 영역입니다.
  • Tier_1 네트워킹은 vCPU가 최소 30개 이상인 N2, N2D, C2, C2D, C3, C3D, M3, Z3(프리뷰) VM에서 지원됩니다.
  • Tier_1 네트워킹에는 gVNIC 가상 네트워크 드라이버gVNIC 호환 OS 또는 커스텀 이미지를 사용하는 VM이 필요합니다.
  • C3, C3D, Z3(프리뷰), H3 VM에서 최상의 Tier_1 네트워킹 성능을 제공하려면 gVNIC 드라이버 버전 1.3 이상이 필요합니다. 사용 중인 운영체제 이미지가 Tier_1 네트워킹을 완벽하게 지원하는지 확인하세요. 완전히 지원되는 OS 이미지에는 업데이트된 gVNIC 드라이버가 포함됩니다. 최신 버전이 없는 이미지에서 gVNIC 드라이버를 업데이트할 수 있습니다.
  • Tier_1 네트워킹의 구매 가능한 재고 관리 단위(SKU)는 약정 사용 할인에서 제외됩니다.
  • 대형 C3, C3D, Z3(프리뷰) VM에서는 대역폭이 100Gbps 이상으로 푸시될 때 NUMA 관련 병목 현상이 발생할 수 있습니다. 애플리케이션 아키텍처에 따라 스레드 및 인터럽트 배치를 조정해야 할 수 있습니다. Linux에서는 수신 흐름 조정(RFS)과 같은 게스트 OS 기능이 이 문제를 해결하는 데 도움이 될 수 있습니다. 성능을 극대화하기 위해 애플리케이션이 NUMA로 조정되었는지 확인합니다.
  • Microsoft Windows를 사용하는 C3, C3D, H3 VM에서 gVNIC 드라이버는 기본 네트워크 및 Tier_1 네트워킹 모두 최대 85Gbps의 네트워크 대역폭을 달성할 수 있습니다.

대역폭 등급

이그레스 대역폭 제한은 Google Cloud에서 VM이 네트워크 인터페이스(NIC)로부터 배출하도록 허용된 시간 단위당 최대 가능한 데이터 양(예: 초당 기가바이트 또는 Gbps)을 나타냅니다. 이그레스 대역폭에는 VM에 연결된 모든 Persistent Disk 및 Google Cloud Hyperdisk 볼륨으로 전송되는 데이터가 포함됩니다.

대역폭 한도에 대해서는 다음을 참고하세요.

  • 기본 대역폭 제한 범위는 머신 유형 및 VM 크기에 따라 10Gbps~200Gbps입니다.
  • Tier_1 네트워킹은 VM에 대한 최대 이그레스 대역폭 제한을 늘려줍니다. 최대 이그레스 대역폭 한도 범위는 VM의 크기 및 머신 유형에 따라 50Gbps~200Gbps입니다.
  • 실제 이그레스 대역폭은 항상 이그레스 대역폭 제한보다 작거나 같습니다.

가능한 최대 이그레스 대역폭을 얻으려면 다음 조건이 모두 해당되어야 합니다.

  • 전송 및 수신 VM이 동일한 영역에 있어야 합니다.
  • VM에 동일한 VPC 네트워크 또는 VPC 네트워크 피어링으로 연결된 VPC 네트워크에 NIC가 있어야 합니다.
  • VM 간에 전송되는 패킷은 내부 IP 주소 대상을 사용해야 합니다.
  • VM에서 사용하는 VPC 네트워크는 가장 높은 최대 전송 단위(MTU) 설정을 사용합니다. MTU가 높을수록 패킷 헤더 오버헤드가 줄어들고 페이로드 데이터 처리량이 증가합니다.

이그레스 및 인그레스 대역폭 제한에 대한 자세한 내용은 네트워크 대역폭을 참조하세요.

범용 N2 VM

다음 표에서는 N2 VM의 이그레스 대역폭 제한을 설명합니다.

vCPU 내부 IP Tier_1 내부 IP 외부 IP Tier_1 외부 IP
2 10Gbps 해당 없음(N/A) 7Gbps 해당 없음
4 10Gbps 해당 없음 7Gbps 해당 없음
8 16Gbps 해당 없음 7Gbps 해당 없음
16 32Gbps 해당 없음 7Gbps 해당 없음
32 32Gbps 50Gbps 7Gbps 25Gbps
48 32Gbps 50Gbps 7Gbps 25Gbps
64 32Gbps 75Gbps 7Gbps 25Gbps
80 32Gbps 100Gbps 7Gbps 25Gbps
96 32Gbps 100Gbps 7Gbps 25Gbps
128 32Gbps 100Gbps 7Gbps 25Gbps

범용 N2(커스텀 크기 도형) VM

다음 표에서는 커스텀 크기 N2 VM의 이그레스 대역폭 제한을 설명합니다.

vCPU 내부 IP Tier_1 내부 IP 외부 IP Tier_1 외부 IP
32-62 32Gbps 50Gbps 7Gbps 25Gbps
64-78 32Gbps 75Gbps 7Gbps 25Gbps
80-128 32Gbps 100Gbps 7Gbps 25Gbps

범용 N2D VM

다음 표에서는 N2D VM의 이그레스 대역폭 제한을 설명합니다.

vCPU 내부 IP Tier_1 내부 IP 외부 IP Tier_1 외부 IP
2 10Gbps 해당 없음(N/A) 7Gbps 해당 없음
4 10Gbps 해당 없음 7Gbps 해당 없음
8 16Gbps 해당 없음 7Gbps 해당 없음
16 32Gbps 해당 없음 7Gbps 해당 없음
32 32Gbps 해당 없음 7Gbps 해당 없음
48 32Gbps 50Gbps 7Gbps 25Gbps
64 32Gbps 50Gbps 7Gbps 25Gbps
80 32Gbps 50Gbps 7Gbps 25Gbps
96 32Gbps 100Gbps 7Gbps 25Gbps
128 32Gbps 100Gbps 7Gbps 25Gbps
224 32Gbps 100Gbps 7Gbps 25Gbps

범용 N2D(커스텀 크기 도형) VM

다음 표에서는 커스텀 크기 N2D VM의 이그레스 대역폭 제한을 설명합니다.

vCPU 내부 IP Tier_1 내부 IP 외부 IP Tier_1 외부 IP
48-94 32Gbps 50Gbps 7Gbps 25Gbps
96 32Gbps 100Gbps 7Gbps 25Gbps

범용 C3 VM

다음 표에서는 C3 VM의 이그레스 대역폭 제한을 설명합니다.

vCPU 내부 IP Tier_1 내부 IP 외부 IP Tier_1 외부 IP
4 23Gbps 해당 없음 7Gbps 해당 없음
8 23Gbps 해당 없음 7Gbps 해당 없음
22 23Gbps 해당 없음 7Gbps 해당 없음
44 32Gbps 50Gbps 7Gbps 25Gbps
88 62Gbps 100Gbps 7Gbps 25Gbps
176 100Gbps 200Gbps 7Gbps 25Gbps

범용 C3D VM

vCPU 내부 IP Tier_1 내부 IP 외부 IP Tier_1 외부 IP
4 20Gbps 해당 없음 7Gbps 해당 없음
8 20Gbps 해당 없음 7Gbps 해당 없음
16 20Gbps 해당 없음 7Gbps 해당 없음
30 20Gbps 50Gbps 7Gbps 25Gbps
60 40Gbps 75Gbps 7Gbps 25Gbps
90 60Gbps 100Gbps 7Gbps 25Gbps
180 100Gbps 150Gbps 7Gbps 25Gbps
360 100Gbps 200Gbps 7Gbps 25Gbps

컴퓨팅 최적화 C2 VM

다음 표에서는 C2 VM의 이그레스 대역폭 제한을 설명합니다.

vCPU 내부 IP Tier_1 내부 IP 외부 IP Tier_1 외부 IP
4 10Gbps 해당 없음(N/A) 7Gbps 해당 없음
8 16Gbps 해당 없음 7Gbps 해당 없음
16 32Gbps 해당 없음 7Gbps 해당 없음
30 32Gbps 50Gbps 7Gbps 7Gbps
60 32Gbps 100Gbps 7Gbps 7Gbps

컴퓨팅 최적화 C2D VM

다음 표에서는 C2D VM의 이그레스 대역폭 제한을 설명합니다.

vCPU 내부 IP Tier_1 내부 IP 외부 IP Tier_1 외부 IP
2 10Gbps 해당 없음(N/A) 7Gbps 해당 없음
4 10Gbps 해당 없음 7Gbps 해당 없음
8 16Gbps 해당 없음 7Gbps 해당 없음
16 32Gbps 해당 없음 7Gbps 해당 없음
32 32Gbps 50Gbps 7Gbps 7Gbps
56 32Gbps 50Gbps 7Gbps 7Gbps
112 32Gbps 100Gbps 7Gbps 7Gbps

컴퓨팅 최적화 H3 VM

다음 표에서는 H3 VM의 이그레스 대역폭 제한을 설명합니다.

vCPU 내부 IP 외부 IP
88 200Gbps 1Gbps

메모리 최적화 M3 VM

다음 표에서는 M3 VM의 이그레스 대역폭 제한을 설명합니다.

vCPU 내부 IP Tier_1 내부 IP 외부 IP Tier_1 외부 IP
32 32Gbps 해당 없음 7Gbps 해당 없음
64 32Gbps 50Gbps 7Gbps 25Gbps
128 32Gbps 100Gbps 7Gbps 25Gbps

스토리지 최적화 Z3 VM

다음 표에서는 Z3 VM의 이그레스 대역폭 제한을 설명합니다.

vCPU 내부 IP Tier_1 내부 IP 외부 IP Tier_1 외부 IP
88 62Gbps 100Gbps 7Gbps 25Gbps
176 100Gbps 200Gbps 7Gbps 25Gbps

Tier_1 네트워킹으로 VM 구성

VM에 gVNIC 네트워크 인터페이스가 사용되는 경우 VM을 만드는 동안 Tier_1 네트워킹을 사용 설정할 수 있습니다. 또한 VM이 gVNIC 인터페이스로 생성된 경우 Tier_1 네트워킹을 추가하거나 삭제하도록 VM을 수정할 수 있습니다.

필요에 따라 DPDK를 사용하여 더 빠른 네트워크 패킷 처리를 사용 설정하여 Tier_1 네트워킹을 사용하는 VM에서 성능 집약적인 애플리케이션을 실행할 수도 있습니다.

Tier_1 네트워킹을 사용하는 VM 및 컨테이너 만들기

Google Cloud 콘솔, Google Cloud CLI, REST를 사용하여 새 VM 또는 컨테이너에 Tier_1 네트워킹을 추가합니다.

콘솔

  1. Google Cloud 콘솔에서 VM 인스턴스 페이지로 이동합니다.

    VM 인스턴스로 이동

  2. 프로젝트를 선택합니다.

  3. 인스턴스 만들기를 클릭합니다.

  4. VM의 이름을 지정합니다. 자세한 내용은 리소스 이름 지정 규칙을 참조하세요.

  5. Tier_1 네트워킹을 지원하는 리전 및 영역을 선택합니다.

  6. VM의 머신 구성을 선택합니다. Tier_1 네트워킹으로 VM을 만들려면 N2, N2D, C2, C2D, C3, C3D, 또는 Z3(프리뷰) VM을 선택해야 합니다.

    • 계열 드롭다운 메뉴에서 N2, N2D, C3 또는 C3D를 선택하기 전에 범용 탭을 클릭합니다.
    • 계열 드롭다운 메뉴에서 C2 또는 C2D를 선택하기 전에 컴퓨팅 최적화 탭을 클릭합니다.
    • 계열 드롭다운 메뉴에서 Z3를 선택하기 전에 스토리지 최적화 탭을 클릭합니다.
  7. 머신 유형 드롭다운 메뉴에서 대역폭 계층 크기 요구사항에 맞는 머신 유형을 선택합니다.

  8. gVNIC 호환 운영체제를 선택하려면 부팅 디스크 섹션에서 변경을 클릭한 다음 지원되는 운영체제를 선택하거나 커스텀 이미지 탭을 사용하여 커스텀 이미지를 선택합니다.

  9. 선택사항입니다. 방화벽 섹션에서 방화벽 규칙을 선택합니다.

  10. 네트워킹 속성을 변경하려면 고급 옵션 제목을 클릭하여 섹션을 펼칩니다.

  11. 네트워킹을 클릭한 후 다음을 수행합니다.

    1. 네트워크 인터페이스 카드 드롭다운 메뉴에서 gVNIC를 선택합니다.
    2. 네트워크 대역폭에서 VM당 Tier_1 네트워킹 성능 사용 설정 체크박스를 선택합니다.
    3. VM에 NIC가 여러 개 있거나 IPv6 주소를 사용하는 경우 네트워크 인터페이스를 구성합니다.
  12. 만들기를 클릭합니다.

gcloud

    Google Cloud 콘솔에서 Cloud Shell을 활성화합니다.

    Cloud Shell 활성화

    Google Cloud 콘솔 하단에서 Cloud Shell 세션이 시작되고 명령줄 프롬프트가 표시됩니다. Cloud Shell은 Google Cloud CLI가 사전 설치된 셸 환경으로, 현재 프로젝트의 값이 이미 설정되어 있습니다. 세션이 초기화되는 데 몇 초 정도 걸릴 수 있습니다.

  1. gcloud compute instances create 명령어를 사용하여 gVNIC 가상 네트워크 드라이버로 VM을 만듭니다. --network-performance-configs 플래그 및 --network-interface 플래그를 사용해서 VM에 대한 네트워크 성능을 구성합니다. 이러한 플래그를 지정하지 않으면 기본 네트워크 성능 구성을 사용해서 VM이 생성됩니다.

    컨테이너 이미지를 실행하는 VM을 만들려면 gcloud compute instances create-with-container 명령어를 사용합니다.

    gcloud compute instances create VM_NAME  \
        --image=OS_IMAGE  \
        --machine-type=MACHINE_TYPE  \
        --network-performance-configs=total-egress-bandwidth-tier=TIER_1  \
        --network-interface=nic-type=GVNIC
    

    다음을 바꿉니다.

    예를 들면 다음과 같습니다.

       gcloud compute instances create instance-1 \
           --network-performance-configs=total-egress-bandwidth-tier=TIER_1 \
           --network-interface=nic-type=GVNIC \
           --image-family=rocky-linux-8-optimized-gcp \
           --image-project=rocky-linux-cloud \
           --machine-type=n2-standard-32
       

REST

Compute Engine API instances.insert 메서드를 호출해서 고대역폭 네트워크 구성으로 VM을 만듭니다. 요청 본문 내:

  • networkPerformanceConfig 매개변수를 totalEgressBandwidthTierTIER_1로 설정합니다.
  • networkInterface 매개변수를 nicTypeGVNIC로 설정합니다.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances

{
  "name": VM_NAME,
    "description": string,
    ...
    "networkPerformanceConfig": {
        "totalEgressBandwidthTier": TIER_1
  },
    "networkInterfaces": [
      {
        "nicType": "GVNIC"
    },
    ...
    ]
  }

다음을 바꿉니다.

  • PROJECT_ID: 프로젝트 ID입니다.
  • ZONE: VM을 만들려는 영역입니다.
  • VM_NAME: VM의 이름입니다.

Tier_1 네트워킹을 포함하도록 VM 업데이트

VM 업데이트를 위해 필요한 요구사항이 모두 충족되었는지 확인하려면 인스턴스 속성 업데이트 문서를 참조하세요. Google Cloud 콘솔, Google Cloud CLI 또는 REST를 사용하여 VM을 업데이트합니다.

기존 VM을 수정하여 VM Tier_1 네트워킹 성능을 포함하거나 제외하도록 네트워크 구성을 변경할 수 있습니다. gVNIC 인터페이스가 이미 VM에 연결되어 있어야 합니다. 네트워크 인터페이스를 추가하도록 VM을 수정할 수는 없습니다. 네트워크 구성을 업데이트하려면 VM을 중지했다가 다시 시작해야 합니다.

콘솔

  1. Google Cloud 콘솔에서 VM 인스턴스 페이지로 이동합니다.

    VM 인스턴스로 이동

  2. 프로젝트를 선택합니다.

  3. 수정할 VM 이름을 클릭합니다.

  4. VM을 중지합니다.

  5. 수정을 선택합니다.

  6. VM이 원래 gVNIC 카드로 구성된 경우 VM당 Tier_1 네트워킹 성능 사용 설정 체크박스를 선택하여 VM당 Tier_1 네트워킹 성능을 추가하거나 이 체크박스를 선택 해제하여 VM에서 이 기능을 제거합니다.

  7. 변경사항을 저장합니다.

  8. VM을 다시 시작합니다.

gcloud

    Google Cloud 콘솔에서 Cloud Shell을 활성화합니다.

    Cloud Shell 활성화

    Google Cloud 콘솔 하단에서 Cloud Shell 세션이 시작되고 명령줄 프롬프트가 표시됩니다. Cloud Shell은 Google Cloud CLI가 사전 설치된 셸 환경으로, 현재 프로젝트의 값이 이미 설정되어 있습니다. 세션이 초기화되는 데 몇 초 정도 걸릴 수 있습니다.

  1. gcloud compute instances export 명령어를 사용하여 VM 정보를 .yaml 파일로 내보냅니다.

    gcloud compute instances export VM_NAME \
        --zone=ZONE --destination=PATH_TO_FILE
    

    다음을 바꿉니다.

    • VM_NAME: VM의 이름입니다.
    • ZONE: VM이 있는 영역의 이름
    • PATH_TO_FILE: 확장자가 .yaml인 파일 이름

      예를 들면 다음과 같습니다.

      gcloud compute instances export instance-1 \
          --zone=europe-west1-c --destination=test-file.yaml
      
  2. Cloud Shell 편집기 또는 원하는 편집기를 엽니다.
  3. 생성한 .yaml 파일을 엽니다.
  4. 파일 끝으로 이동하여 다음 정보를 추가합니다.

    networkPerformanceConfig:
      totalEgressBandwidthTier: TIER_1
    

    totalEgressBandwidthTierTIER_1로 설정하면 Tier_1 네트워킹이 추가됩니다. DEFAULT로 설정하면 구성이 삭제됩니다.

  5. gcloud compute instance update-from-file 명령어를 사용하여 VM을 파일 변경사항으로 업데이트합니다.

    gcloud compute instances update-from-file VM_NAME \
        --source=PATH_TO_FILE \
        --most-disruptive-allowed-action=RESTART
    

    다음을 바꿉니다.

    • VM_NAME: VM의 이름입니다.
    • PATH_TO_FILE: .yaml 파일 이름입니다.

    --most-disruptive-allowed-action=RESTART 플래그 설정이 업데이트된 구성으로 VM을 자동으로 다시 시작합니다.

REST

instances.update 메서드를 호출하여 네트워크 구성을 수정합니다.

PUT https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/RESOURCE_ID?most_disruptive_allowed_action=RESTART

{
  "networkPerformanceConfig":{
      "totalEgressBandwidthTier": "TIER_1"
  },
...
}

totalEgressBandwidthTierTIER_1로 설정하면 Tier_1 네트워킹이 추가됩니다. DEFAULT로 설정하면 구성이 삭제됩니다.

다음을 바꿉니다.

  • PROJECT_ID: 프로젝트 ID입니다.
  • ZONE: VM이 있는 영역입니다.
  • RESOURCE_ID: VM의 이름입니다.

most_disruptive_allowed_action=RESTART 쿼리 매개변수는 업데이트된 구성으로 VM을 자동으로 다시 시작합니다.

VM에서 고대역폭 구성 확인

Google Cloud 콘솔, Google Cloud CLI, REST를 사용해서 VM 대역폭 등급을 확인할 수 있도록 컨테이너 이미지를 실행하는 기존 VM에 대한 설명을 생성합니다.

콘솔

  1. Google Cloud 콘솔에서 VM 인스턴스 페이지로 이동합니다.

    VM 인스턴스로 이동

  2. 프로젝트를 선택하고 계속을 클릭합니다.

  3. VM 이름을 클릭하여 구성 세부정보를 보고 VM에 VM당 Tier_1 네트워킹 성능이 사용되는지 확인합니다.

gcloud

    Google Cloud 콘솔에서 Cloud Shell을 활성화합니다.

    Cloud Shell 활성화

    Google Cloud 콘솔 하단에서 Cloud Shell 세션이 시작되고 명령줄 프롬프트가 표시됩니다. Cloud Shell은 Google Cloud CLI가 사전 설치된 셸 환경으로, 현재 프로젝트의 값이 이미 설정되어 있습니다. 세션이 초기화되는 데 몇 초 정도 걸릴 수 있습니다.

  1. gcloud compute instances describe 명령어를 사용하여 VM에 VM당 Tier_1 네트워킹 성능이 사용되는지 확인합니다.

    예를 들면 다음과 같습니다.

      gcloud compute instances describe VM_NAME  \
          --format="text(name, networkPerformanceConfig)"
      

    출력은 다음과 비슷합니다.

       name: instance-1
       networkPerformanceConfig.totalEgressBandwidthTier:TIER_1
      

    출력에 DEFAULT 값이 표시되면 Tier_1 네트워킹이 사용 설정되지 않은 것입니다.

REST

Compute Engine API instances.get 메서드를 호출하여 네트워크 구성을 확인합니다.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/RESOURCE_ID/

다음을 바꿉니다.

  • PROJECT_ID: 프로젝트 이름입니다.
  • ZONE: VM이 있는 영역입니다.
  • RESOURCE_ID: VM의 이름입니다.

출력에 다음 줄이 포함됩니다.

{
  "name": RESOURCE_ID,
    "description": string,
    ...
    "networkPerformanceConfig": {
        "totalEgressBandwidthTier": "TIER_1"
    },
    ...
  }

출력에 DEFAULT 값이 표시되면 Tier_1 네트워킹이 사용 설정되지 않은 것입니다.

Tier_1 네트워킹으로 인스턴스 템플릿 만들기

Google Cloud 콘솔, Google Cloud CLI, REST를 사용하여 VM당 Tier_1 네트워킹 성능이 있는 인스턴스 템플릿을 만듭니다. 인스턴스 템플릿 만들기 문서를 참조하여 VM 인스턴스 템플릿을 만들기 위한 모든 요구사항을 충족하는지 확인하세요.

콘솔

  1. Google Cloud 콘솔에서 인스턴스 템플릿 페이지로 이동합니다.

    인스턴스 템플릿으로 이동

  2. 인스턴스 템플릿 만들기를 클릭합니다.

  3. 다음 필드에 값을 입력하거나 기본값을 수락합니다.

  4. 인스턴스 템플릿의 이름을 지정합니다. 자세한 내용은 리소스 이름 지정 규칙을 참조하세요.

  5. Tier_1 네트워킹을 지원하는 리전 및 영역을 선택합니다.

  6. VM의 머신 구성을 선택합니다. Tier_1 네트워킹으로 VM을 만들려면 N2, N2D, C2, C2D, C3, C3D, 또는 Z3(프리뷰) VM을 선택해야 합니다.

    • 계열 드롭다운 메뉴에서 N2, N2D, C3 또는 C3D를 선택하기 전에 범용 탭을 클릭합니다.
    • 계열 드롭다운 메뉴에서 C2 또는 C2D를 선택하기 전에 컴퓨팅 최적화 탭을 클릭합니다.
    • 계열 드롭다운 메뉴에서 Z3를 선택하기 전에 스토리지 최적화 탭을 클릭합니다.
  7. 머신 유형 드롭다운 메뉴에서 대역폭 계층 크기 요구사항에 맞는 머신 유형을 선택합니다.

  8. 부팅 디스크 섹션에서 변경을 클릭한 후 gVNIC 호환 또는 커스텀 이미지를 선택합니다.

  9. 선택사항입니다. 방화벽 섹션에서 방화벽 규칙을 선택합니다.

  10. 고급 옵션 섹션을 펼쳐 네트워킹 속성을 변경합니다.

  11. 네트워킹을 클릭한 후 다음을 수행합니다.

    1. 네트워크 인터페이스 카드 드롭다운 메뉴에서 gVNIC를 선택합니다.

    2. 네트워크 대역폭에서 VM당 Tier_1 네트워킹 성능 사용 설정 체크박스를 선택합니다.

    3. VM에 NIC가 여러 개 있거나 IPv6 주소를 사용하는 경우 네트워크 인터페이스를 구성합니다.

  12. 만들기를 클릭합니다.

gcloud

    Google Cloud 콘솔에서 Cloud Shell을 활성화합니다.

    Cloud Shell 활성화

    Google Cloud 콘솔 하단에서 Cloud Shell 세션이 시작되고 명령줄 프롬프트가 표시됩니다. Cloud Shell은 Google Cloud CLI가 사전 설치된 셸 환경으로, 현재 프로젝트의 값이 이미 설정되어 있습니다. 세션이 초기화되는 데 몇 초 정도 걸릴 수 있습니다.

  1. --network-performance-configs, --network-interface 플래그와 함께 gcloud compute instance-templates create 명령어를 사용합니다.

      gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
          --image=OS_IMAGE \
          --machine-type=MACHINE_TYPE \
          --network-performance-configs=total-egress-bandwidth-tier=TIER_1 \
          --network-interface=nic-type=GVNIC
      

    다음을 바꿉니다.

    • INSTANCE_TEMPLATE_NAME: 인스턴스 템플릿 이름입니다.
    • OS_IMAGE: gVNIC 이미지를 지원하는 이미지입니다.
    • MACHINE_TYPE: 대역폭 계층에 설명된 대로 Tier_1 네트워킹을 지원하는 머신 유형입니다.

    예를 들면 다음과 같습니다.

      gcloud compute instance-templates create instance-template-1 \
          --image-family=rocky-linux-8-optimized-gcp \
          --image-project=rocky-linux-cloud \
          --network-performance-configs=total-egress-bandwidth-tier=TIER_1 \
          --machine-type=n2-standard-32 \
          --network-interface=nic-type=GVNIC
      

REST

Compute Engine API instanceTemplates.insert 메서드를 호출합니다. 요청 본문 내에서 networkPerformanceConfig 매개변수를 totalEgressBandwidthTierTIER_1로 설정합니다. networkInterfaces 매개변수를 nicTypeGVNIC로 설정합니다.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/instancesTemplates

{
  "name": "INSTANCE_TEMPLATE_NAME",
  "properties": {
    "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
    ...
    "networkPerformanceConfig": {
        "totalEgressBandwidthTier": "TIER_1"
  },
    "networkInterfaces": [
      {
        "nicType": "GVNIC"
    },
    ...
  }

다음을 바꿉니다.

  • PROJECT_ID: 프로젝트 이름입니다.
  • INSTANCE_TEMPLATE_NAME: 인스턴스 템플릿 이름입니다.
  • ZONE: VM이 있는 영역입니다.
  • MACHINE_TYPE: VM의 머신 유형입니다.
  • RESOURCE_ID: VM의 이름입니다.

높은 대역폭 구성 벤치마킹

벤치마크 테스트를 실행하여 VM당 Tier_1 네트워킹 성능으로 VM 성능을 확인할 수 있습니다. 예상치 못한 리소스 요금이 부과되지 않도록 테스트 중에 만든 벤치마킹 리소스를 삭제해야 합니다.

다음 단계