VM 인스턴스의 최소 CPU 플랫폼 지정


이 페이지에서는 기본 플랫폼 대신 최소 CPU 플랫폼을 사용하도록 가상 머신(VM) 인스턴스를 만들거나 업데이트하는 방법을 설명합니다.

Google 데이터 센터는 다양한 세대의 CPU 프로세서를 제공합니다. 각 CPU 플랫폼은 Advanced Vector Extensions(예: AVX2 및 AVX-512)와 같은 증분 기능을 지원합니다. 또한 클럭 속도나 메모리 액세스 탐색 시간 같은 일부 기본적인 시스템 관련 기능은 CPU 플랫폼에 따라 다를 수 있습니다.

각 머신 시리즈는 하나 이상의 CPU 플랫폼과 연관되어 있습니다. 예를 들어 N2 VM은 Ice Lake 또는 Cascade Lake CPU에서 실행될 수 있습니다. 머신 시리즈에 사용 가능한 CPU 플랫폼이 여러 개 있는 경우 해당 머신 시리즈의 머신 유형을 사용하여 VM을 만들 때 최소 CPU 플랫폼을 선택할 수 있습니다. 머신 계열, 시리즈, 리전, 영역의 가용성에 따라 최소 CPU 플랫폼에 선택할 수 있는 항목이 결정됩니다.

최소 CPU 플랫폼을 지정하는 것은 워크로드를 처리하려면 특정 프로세서 세대가 제공하는 성능상의 이점이 필요한 경우에 유용합니다. 하지만 최소 CPU 플랫폼을 지정하면 VM을 만들 수 있는 영역이 제한될 수 있습니다.

시작하기 전에

  • 아직 인증을 설정하지 않았다면 설정합니다. 인증은 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

필수 역할 및 권한

최소 CPU 플랫폼을 변경하는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대한 다음 IAM 역할을 부여해 달라고 요청하세요.

  • Compute 인스턴스 관리자(v1)(roles/compute.instanceAdmin.v1)
  • 서비스 계정으로 실행할 수 있는 VM에 연결: 서비스 계정 사용자(v1)(roles/iam.serviceAccountUser 역할)

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

커스텀 역할이나 다른 사전 정의된 역할을 통해 필요한 권한을 얻을 수도 있습니다.

최소 CPU 플랫폼 선택해야 하는 경우

최소 CPU 플랫폼을 선택해야 할 필요는 거의 없습니다. 각 Compute Engine 영역에는 각 머신 시리즈에 대한 기본 CPU 플랫폼이 있습니다. Google에서는 새 서버가 추가될 때 영역의 기본 CPU를 변경합니다. VM에 최소 CPU 플랫폼을 지정하지 않으면 VM에서 머신 유형 및 영역과 연결된 기본 CPU 플랫폼을 가져옵니다.

다음 경우에만 최소 CPU 플랫폼을 선택하는 것이 좋습니다.

  • 최소 CPU 플랫폼이 워크로드에 대해 상당한 성능 이점을 제공하거나 코드에 사용되는 AVX2 또는 AVX-512와 같은 기능을 제공하는 경우
  • 예약을 사용하는 VM을 만들 때 예약과 동일한 CPU 플랫폼을 지정해야 합니다.

VM에 최소 CPU 플랫폼을 선택할 경우, 일부 CPU 플랫폼의 공급이 제한적인 영역에서 VM을 시작하는 기능이 제한될 수 있습니다.

최소 CPU 플랫폼 선택의 영향

Compute Engine이 가능하면 항상 최소 CPU 플랫폼을 사용합니다. Google이 영역에서 CPU 플랫폼을 변경하는 경우, VM을 중지했다가 다시 시작하면 VM이 해당 영역에서 사용 가능한 최신 CPU 플랫폼에서 계속 실행될 수 있습니다.

VM에 최소 CPU 플랫폼을 선택한 후에는 VM을 중지하고 CPU 플랫폼을 변경하지 않는 한 VM이 이 CPU 플랫폼을 사용합니다. 라이브 마이그레이션 중에도 VM은 선택된 CPU 플랫폼을 유지합니다.

제한사항

  • 리전 및 영역에서는 여러 CPU 플랫폼을 지원하지만 리전 또는 영역에서 모든 CPU 플랫폼을 제공하지 않을 수 있습니다.
  • 단독 테넌트 노드를 사용하는 VM에는 최소 CPU 플랫폼을 지정할 수 없습니다.
  • 사전 정의된 E2 VM이나 커스텀 E2 VM에는 최소 CPU 플랫폼을 선택할 수 없습니다.
  • 다음 공유 코어, 범용 VM에는 최소 CPU 플랫폼을 선택할 수 없습니다.
    • e2-micro
    • e2-small
    • e2-medium
    • f1-micro
    • g1-small

CPU 플랫폼의 가용성

CPU 플랫폼의 가용성은 영역에 따라 다르며 각 영역에서 사용할 수 있는 하드웨어 및 머신 시리즈를 기반으로 결정됩니다. 다음 목록에는 지원되는 최소 CPU 플랫폼과 각 플랫폼에 유효한 구문이 나와 있습니다.

  • Ampere Altra Arm 프로세서: "Ampere Altra"
  • 4세대: Intel Xeon(Sapphire Rapids) 프로세서: "Intel Sapphire Rapids"
  • 3세대: Intel Xeon(Ice Lake) 프로세서: "Intel Ice Lake"
  • 2세대: Intel Xeon(Cascade Lake) 프로세서: "Intel Cascade Lake"
  • 1세대: Intel Xeon(Skylake) 프로세서: "Intel Skylake"
  • Intel Xeon E5 v4(Broadwell) 프로세서: "Intel Broadwell"
  • Intel Xeon E5 v3(Haswell) 프로세서: "Intel Haswell"
  • Intel Xeon E5 v2(Ivy Bridge) 프로세서: "Intel Ivy Bridge"
  • Intel Xeon E5(Sandy Bridge) 프로세서: "Intel Sandy Bridge"
  • 4세대: AMD EPYC Genoa 프로세서: "AMD Genoa"
  • 3세대: AMD EPYC Milan 프로세서: "AMD Milan"
  • 2세대: AMD EPYC Rome 프로세서: "AMD Rome"

영역별로 사용 가능한 CPU 플랫폼 보기

동일한 머신 계열에 대한 여러 CPU 플랫폼이 포함된 특정 리전 및 영역에서만 최소 CPU 플랫폼을 선택할 수 있습니다. gcloud CLI 또는 REST를 사용하여 특정 영역에 지원되는 플랫폼 목록을 볼 수 있습니다.

단독 테넌트 노드를 사용하는 경우 각 노드는 노드 템플릿에서 정의한 노드 유형에 해당하는 CPU 플랫폼을 사용합니다.

gcloud

  • 영역에서 사용할 수 있는 CPU 플랫폼을 보려면 gcloud compute zones describe 명령어를 사용합니다.

    gcloud compute zones describe ZONE
    

    ZONE을 사용 가능한 CPU 플랫폼을 확인할 영역의 이름(예: europe-west10-a)으로 바꿉니다.

    다음과 같이 이 명령어를 실행하여 나온 출력에 europe-west10-a 영역의 CPU 플랫폼이 나열됩니다.

    gcloud compute zones describe europe-west10-a
    availableCpuPlatforms:
    - Intel Broadwell
    - Intel Cascade Lake
    - Intel Ice Lake
    - AMD Milan
    - AMD Rome
    - Intel Skylake
    
    ...
    

REST

  • 고려 중인 영역에 GET 요청을 수행합니다.

    GET https://compute.googleapis.com/compute/v1/projects/myproject/zones/ZONE
    

    ZONE을 사용 가능한 CPU 플랫폼을 확인할 영역 이름으로 바꿉니다.

    다음과 같이 이 명령어를 실행하여 나온 출력에 해당 영역에 지원되는 CPU 플랫폼이 나열됩니다.

    {
      "kind": "compute#zone",
      "id": "2210",
      "creationTimestamp": "1969-12-31T09:30:55.189-07:00",
      "name": "europe-west10-a",
      "description": "europe-west10-a",
      "status": "UP",
      "region": "https://www.googleapis.com/compute/v1/projects/myproject/regions/europe-west10-a",
      "selfLink": "https://www.googleapis.com/compute/v1/projects/myproject/zones/europe-west10-a",
      "availableCpuPlatforms": [
       "Intel Broadwell",
       "Intel Cascade Lake",
       "Intel Ice Lake",
       "AMD Milan",
       "AMD Rome",
       "Intel Skylake"
      ],
      "supportsPzs": true
     }

CPU 플랫폼 기본 변경사항

Google은 가끔 CPU 플랫폼을 변경하거나 기본 CPU 플랫폼을 업데이트합니다. 영역의 용량이 증가하면서 Google은 최신 CPU 플랫폼이 출시됨에 따라 해당 플랫폼으로 미리 전환하기 때문입니다. 기본 CPU 플랫폼을 해당 영역에서 사용 가능한 최신 플랫폼으로 업데이트합니다.

영역의 기본 CPU 플랫폼이 바뀔 경우, Google은 해당 고객에게 공지를 통해 세부 일정과 최신 플랫폼으로 전환하는 방법에 대한 세부적인 안내를 제공합니다.

VM은 사용자가 지정하는 최소 CPU 플랫폼보다 더 오래된 플랫폼을 사용하지 않습니다. Compute Engine이 VM을 최신 플랫폼으로 전환하더라도 VM 비용은 변동되지 않습니다.

새 VM에 최소 CPU 플랫폼 선택

VM을 만들 때 머신 시리즈와 머신 유형을 선택합니다. 머신 시리즈는 2개 이상의 CPU 플랫폼에서 제공될 수 있습니다. 이 경우 VM에 사용할 최소 CPU 플랫폼을 지정할 수 있습니다.

콘솔

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

    인스턴스 만들기로 이동

  2. 머신 구성 섹션에서 고급 구성 섹션을 펼칩니다.

  3. CPU 플랫폼 목록에서 VM의 CPU를 위한 플랫폼을 선택합니다.

  4. VM 만들기 프로세스의 나머지 과정을 계속 진행합니다.

gcloud

  • 최소 CPU 플랫폼을 사용하는 새 VM을 만들려면 gcloud compute instances create 명령어를 사용하고 --min-cpu-platform 플래그를 제공합니다.

    gcloud compute instances create INSTANCE \
        --zone=ZONE \
        --min-cpu-platform="PLATFORM"

    다음을 바꿉니다.

    • INSTANCE: 만들려는 인스턴스의 이름
    • ZONE: 인스턴스를 만들 영역의 이름(예: europe-west1-b)
    • PLATFORM: 인스턴스에 사용할 최소 CPU 플랫폼의 별칭(예: Intel Sandy Bridge)

      최소 CPU 플랫폼 지정을 지우려면 PLATFORMAUTOMATIC으로 바꿉니다.

      사용 가능한 영역 섹션에서 각 영역에 사용할 수 있는 플랫폼을 확인합니다.

REST

  • instances.insert 메서드를 사용하고 요청 본문에 minCpuPlatform 속성을 포함합니다.

    예를 들어 요청 본문은 다음과 비슷합니다.

    "name": "INSTANCE",
    "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
    "minCpuPlatform": "PLATFORM",
    "networkInterfaces": [{
      "accessConfigs": [{
        "type": "ONE_TO_ONE_NAT",
        "name": "External NAT"
       }],
      "network": "global/networks/default"
    }],
    "disks": [{
       "autoDelete": "true",
       "boot": "true",
       "type": "PERSISTENT",
       "initializeParams": {
          "sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
       }
     }]

    다음을 바꿉니다.

    • INSTANCE: 새 VM의 이름입니다.
    • ZONE: VM을 만들 영역의 이름(예: europe-west1-b)
    • MACHINE_TYPE: 새 VM의 머신 유형
    • PLATFORM: VM에 사용할 최소 CPU 플랫폼의 별칭(예: Intel Ivy Bridge)

      최소 CPU 플랫폼 사양을 지우려면 PLATFORMAUTOMATIC으로 바꿉니다.

    • IMAGE_PROJECT: 이미지 계열의 이미지 프로젝트

    • IMAGE_FAMILY: VM을 만드는 데 사용할 이미지의 이미지 계열

기존 VM에 최소 CPU 플랫폼 설정

기존 VM에 최소 CPU 플랫폼을 설정할 수 있습니다. 최소 CPU 플랫폼을 설정하기 전에 VM을 중지해야 합니다.

콘솔

  1. VM 인스턴스 페이지로 이동합니다.

    VM 인스턴스로 이동

  2. 메시지가 표시되면 프로젝트를 선택하고 계속을 클릭합니다.

  3. 변경하려는 VM을 선택합니다.

  4. 중지를 클릭합니다.

  5. VM을 수정하려면 수정을 클릭합니다.

  6. 머신 구성 섹션에서 고급 구성을 클릭합니다.

  7. CPU 플랫폼 드롭다운 메뉴에서 옵션을 선택합니다.

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

  9. 변경한 VM을 선택합니다.

  10. 시작/재개를 클릭합니다.

gcloud

  1. VM을 중지하려면 gcloud compute instances stop 명령어를 사용합니다.

    gcloud compute instances stop INSTANCE
    

    INSTANCE를 최소 CPU 플랫폼을 지정하려는 VM 이름으로 바꿉니다.

  2. 최소 CPU 플랫폼을 지정하려면 gcloud compute instances update 명령어를 사용하고 --min-cpu-platform 플래그를 제공합니다.

    gcloud compute instances update INSTANCE \
        --min-cpu-platform="PLATFORM"

    PLATFORM을 VM에 사용할 최소 CPU 플랫폼의 별칭(예: Intel Cascade Lake)으로 바꿉니다.

  3. 업데이트된 VM을 시작하려면 gcloud compute instances start 명령어를 사용합니다.

    gcloud compute instances start INSTANCE
    

REST

  1. VM을 중지하려면 instances.stop 메서드를 사용하여 POST 요청을 생성합니다.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE/stop
    

    다음을 바꿉니다.

    • PROJECT_ID: 프로젝트 ID
    • ZONE: VM이 있는 영역입니다.
    • INSTANCE: 최소 CPU 플랫폼을 지정하려는 VM의 이름
  2. 최소 CPU 플랫폼을 설정하려면 setMinCpuPlatform 메서드POST 요청을 구성하고 요청 본문에 minCpuPlatform 속성을 설정합니다.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE/setMinCpuPlatform
    {
      "minCpuPlatform": PLATFORM
    }
    

    PLATFORM을 VM에 사용할 최소 CPU 플랫폼의 별칭(예: Intel Skylake)으로 바꿉니다.

  3. VM을 다시 시작하려면 instances.start 메서드를 사용하여 POST 요청을 생성합니다.

    POST https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE/start
    

최소 CPU 플랫폼 설정 제거

최소 CPU 플랫폼 대신 기본 CPU 플랫폼을 사용하도록 VM을 업데이트할 수 있습니다. VM이 실행 중인 경우 변경 전에 인스턴스를 중지해야 합니다.

콘솔

  1. VM 인스턴스 페이지로 이동합니다.

    VM 인스턴스로 이동

  2. 메시지가 표시되면 프로젝트를 선택하고 계속을 클릭합니다.

  3. 변경하려는 VM을 선택합니다.

  4. 중지를 클릭합니다.

  5. VM을 수정하려면 수정을 클릭합니다.

  6. 머신 구성 섹션에서 고급 구성을 클릭합니다.

  7. CPU 플랫폼 옵션을 자동으로 변경합니다.

  8. 변경한 VM을 선택합니다.

  9. 시작/재개를 클릭합니다.

gcloud

  1. VM을 중지하려면 gcloud compute instances stop 명령어를 사용합니다.

    gcloud compute instances stop INSTANCE
    

    INSTANCE를 변경하려는 VM의 이름으로 바꿉니다.

  2. 최소 CPU 플랫폼을 재설정하려면 gcloud compute instances update 명령어를 사용하고 --min-cpu-platform 플래그를 AUTOMATIC으로 설정합니다.

    gcloud compute instances update INSTANCE \
        --min-cpu-platform="AUTOMATIC"
    
  3. 업데이트된 VM을 시작하려면 gcloud compute instances start 명령어를 사용합니다.

    gcloud compute instances start INSTANCE
    

REST

  1. VM을 중지하려면 instances.stop 메서드를 사용하여 POST 요청을 생성합니다.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE/stop
    

    다음을 바꿉니다.

    • PROJECT_ID: 프로젝트 ID
    • ZONE: VM이 있는 영역입니다.
    • INSTANCE: 변경하려는 VM의 이름입니다.
  2. 최소 CPU 플랫폼을 재설정하려면 setMinCpuPlatform 메서드에 POST 요청을 작성합니다. 요청 본문에서 minCpuPlatform 속성 값을 AUTOMATIC으로 설정합니다.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE/setMinCpuPlatform
    {
      "minCpuPlatform": AUTOMATIC
    }
    
  3. 업데이트된 VM을 시작하려면 gcloud compute instances start 명령어를 사용합니다.

    gcloud compute instances start INSTANCE
    

인스턴스 템플릿에서 최소 CPU 플랫폼 지정

관리형 인스턴스 그룹을 사용할 경우 관리형 인스턴스 그룹에 있는 VM에 최소 CPU 플랫폼을 지정할 수 있습니다.

최소 CPU 플랫폼을 지정하려면 minCpuPlatform 속성이 포함된 인스턴스 템플릿을 만듭니다.

콘솔

  1. 인스턴스 템플릿 페이지로 이동합니다.

    인스턴스 템플릿으로 이동

  2. 메시지가 표시되면 프로젝트를 선택하고 계속을 클릭합니다.

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

  4. 머신 구성 섹션에서 고급 구성을 클릭합니다.

  5. CPU 플랫폼 드롭다운 메뉴에서 옵션을 선택합니다.

  6. 인스턴스 템플릿 생성 프로세스를 계속 진행합니다.

gcloud

  • gcloud compute instance-templates create 명령어를 사용하여 인스턴스 템플릿을 만들 때 --min-cpu-platform 플래그를 제공합니다.

    gcloud compute instance-templates create TEMPLATE_NAME \
        --min-cpu-platform="PLATFORM"

    다음을 바꿉니다.

    • TEMPLATE_NAME: 인스턴스 템플릿의 이름
    • PLATFORM: 인스턴스에 사용할 최소 CPU 플랫폼의 별칭(예: Intel Skylake)

REST

  • instanceTemplates.insert 메서드를 사용하여 새 인스턴스 템플릿을 만드는 요청의 일부로 minCpuPlatform을 추가합니다.

    예를 들어 다음 인스턴스 템플릿에는 minCpuPlatform 속성을 추가하여 새 템플릿을 만드는 데 필요한 최소 필수 입력란이 포함됩니다.

    {
    "name": "example-template",
    "properties": {
      "machineType": "zones/us-central1-a/machineTypes/n2d-standard-2",
      "minCpuPlatform": "AMD Milan",
      "networkInterfaces": [
        {
          "network": "global/networks/default"
        }
      ],
      "disks":
      [
        {
          "type": "PERSISTENT",
          "boot": true,
          "mode": "READ_WRITE",
          "initializeParams":
          {
            "sourceImage": "projects/debian-cloud/global/images/family/debian-11"
          }
        }
      ]
      }
    }

다음 단계