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

이 문서에서는 가상 머신 인스턴스를 만들거나 업데이트하여 가능할 때마다 기준 최소 CPU 플랫폼(minCpuPlatform)을 사용하는 방법을 설명합니다.

Google 데이터 센터는 Sandy Bridge, Ivy Bridge, Haswell, Broadwell, Skylake CPU 플랫폼을 포함하는 Intel Xeon 기반의 호스트 머신을 제공합니다. 각 CPU 플랫폼은 AVX-2, AVX-512 등과 같은 증분 기능을 지원합니다. 클록 속도나 메모리 액세스 탐색 시간 같은 일부 기본적인 시스템 관련 기능은 CPU 플랫폼에 따라 다를 수 있습니다. 영역마다 여러 가지 CPU 플랫폼을 지원하므로 VM 인스턴스에 따라 최소 플랫폼을 선택하여 작업 부하의 특정 필요를 충족시키는 CPU 플랫폼을 선택할 수 있습니다.

영역별로 사용 가능한 CPU 플랫폼에 대해 알아보려면 CPU 플랫폼리전과 영역 문서를 참조하세요.

시작하기 전에

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

VM에 최소 CPU 플랫폼을 선택해야 할 필요는 거의 없습니다. 모든 Compute Engine 영역은 지역과 영역 문서에 나열되어 있는 기본 CPU 플랫폼을 갖추고 있습니다. 최소 CPU를 지정하지 않고 새로 만든 VM은 자동으로 기본 CPU 플랫폼을 가져옵니다.

Google은 작업 부하에 상당한 성능 이점을 제공하거나 코드에서 활용하는 AVX2, AVX512, MPX와 같은 일부 기능을 제공하는 경우에만 최소 CPU 플랫폼을 선택할 것을 권장합니다. VM에 특정 최소 CPU 플랫폼을 선택할 경우, 일부 CPU 플랫폼의 공급 상황이 제한적이면 일부 영역에서 VM을 시작하는 기능에 영향을 주는 추가적인 제약이 발생합니다.

최소 CPU 플랫폼 선택의 영향

최소 CPU 플랫폼을 지정할 경우:

  1. Compute Engine이 가능하면 항상 최소 CPU 플랫폼을 사용합니다.
  2. Compute Engine이 특정 영역에서 특정 CPU 플랫폼을 사용 중지할 경우, 사용자가 VM을 정지하고 다시 시작하고 나면 VM이 해당 영역에서 사용 가능한 더 나은 CPU 플랫폼에서 계속 실행될 수 있습니다. CPU 플랫폼을 사용 중지하는 일은 드문 일이며 이 경우 사전에 통보됩니다.

VM에 최소 CPU 플랫폼을 선택할 경우:

  • 사용자가 VM을 중지하고 선택된 CPU 플랫폼을 다른 옵션으로 변경하지 않는 한, VM은 이 CPU 플랫폼을 사용합니다.
  • 실시간 이전 시, VM은 선택된 것과 동일한 CPU 플랫폼을 유지합니다.
  • 가끔 Google에서 영역별 기본 CPU 플랫폼을 업데이트할 수 있습니다. 자세한 내용은 기본 CPU 플랫폼 사용 중지 또는 업그레이드를 참조하세요.

기본 CPU 플랫폼 사용 중지 또는 업그레이드

Google에서는 가끔 특정 영역에서 기존 CPU 플랫폼을 사용 중지하거나 기본 CPU 플랫폼을 업데이트합니다. 그 이유는 다음과 같습니다.

  • 영역은 시간 경과에 따라 용량이 늘어나고, 최신 CPU 플랫폼이 출시됨에 따라 해당 플랫폼으로 미리 전환하기 때문입니다.
  • Google은 3~5년마다 기존 CPU 플랫폼을 최신 플랫폼으로 대체하고 기본 CPU 플랫폼을 해당 영역에서 사용 가능한 최신 플랫폼으로 업데이트하기 때문입니다.

새로운 지역이나 영역이 구축될 때마다 해당 지역이나 영역은 그 시점의 최신 CPU 플랫폼을 사용하게 됩니다.

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

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

사양

제한사항

  • 사전 정의된 f1-small 및 g1-small 머신 유형은 코어를 공유하는 범용 VM입니다. 이러한 유형은 CPU 플랫폼 선택 옵션이 없습니다.

가용성

특정 CPU 플랫폼의 가용성은 영역에 따라, 그리고 각 영역에서 사용할 수 있는 하드웨어에 따라 다양합니다. 다음은 지원되는 최소 CPU 플랫폼의 목록과 각 플랫폼에 유효한 구문입니다.

  • Intel Xeon E5(Sandy Bridge) 프로세서: "Intel Sandy Bridge"
  • Intel Xeon E5 v2(Ivy Bridge) 프로세서: "Intel Ivy Bridge"
  • Intel Xeon E5 v3(Haswell) 프로세서: "Intel Haswell"
  • Intel Xeon E5 v4(Broadwell) 프로세서: "Intel Broadwell"
  • Intel Xeon(Skylake) 프로세서: "Intel Skylake"

일부 영역과 일부 몇몇 CPU 플랫폼에서만 최소 CPU 플랫폼을 선택할 수 있습니다. 전체 목록은 지역과 영역 페이지를 참조하세요.

gcloud compute zones describe 명령어를 사용하거나 API에 요청을 실행하여 특정 영역에 지원되는 플랫폼의 목록을 언제든 볼 수 있습니다.

gcloud

해당 영역의 CPU 플랫폼을 확인하려면 다음을 사용하세요.

gcloud compute zones describe [ZONE]

예를 들어 이 명령어의 출력은 us-west1-a 영역의 CPU 플랫폼을 나열합니다.

$ gcloud compute zones describe us-west1-a
availableCpuPlatforms:
- Intel Skylake
- Intel Broadwell
...

API

API에서 해당 영역에 GET 요청을 실행합니다.

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

해당 영역에 지원되는 CPU 플랫폼 목록이 응답에 표시됩니다. 예를 들면 다음과 같습니다.

{
 "kind": "compute#zone",
 "id": "2210",
 "creationTimestamp": "2016-06-10T09:30:55.189-07:00",
 "name": "us-west1-a",
 "description": "us-west1-a",
 "status": "UP",
 "region": "https://www.googleapis.com/compute/v1/projects/myproject/regions/us-west1",
 "selfLink": "https://www.googleapis.com/compute/v1/projects/myproject/zones/us-west1-a",
 "availableCpuPlatforms": [
  "Intel Broadwell",
  "Intel Haswell"
 ]
}

새 VM에 최소 CPU 플랫폼 선택

인스턴스를 만들 때 최소 CPU 플랫폼을 지정할 수 있습니다.

콘솔

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

    VM 인스턴스 페이지로 이동

  2. 메시지가 표시되면 프로젝트를 선택하고 계속을 클릭합니다.
  3. 인스턴스 만들기 버튼을 클릭합니다.
  4. 머신 구성 섹션에서 CPU 플랫폼 및 GPU를 클릭합니다.
  5. CPU 플랫폼 드롭다운 메뉴에서 옵션을 선택합니다.
  6. 인스턴스 만들기 프로세스의 나머지 과정을 계속 진행합니다.

gcloud

gcloud 명령줄 도구를 사용하여 최소 CPU 플랫폼으로 새 VM을 만들려면 새 --min-cpu-platform 플래그를 지정합니다. CPU 플랫폼을 지정할 때는 Intel Broadwell이나 Intel Haswell 같은 친숙한 이름을 사용합니다. 사용 가능한 영역 섹션에서 각 영역에 사용할 수 있는 플랫폼을 확인합니다.

예를 들어, Intel Haswell의 최소 CPU 플랫폼을 지정하려면 다음을 사용하세요.

gcloud compute instances create example-instance \
    --zone europe-west1-b \
    --min-cpu-platform "Intel Haswell"

API

Compute Engine API에서 요청 본문에 minCpuPlatform 속성을 포함시킵니다. minCpuPlatform의 값은 Intel Haswell, Intel Broadwell, Intel Sandy Bridge와 같이 플랫폼의 친숙한 이름이어야 합니다.

예를 들어, 요청 본문은 다음과 같은 모습일 것입니다.

"name": "[INSTANCE_NAME]",
"machineType": "zones/[ZONE]/machineTypes/[MACHINE_TYPE]",
"minCpuPlatform": "Intel Haswell",
"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]"
   }
 }]

중지된 VM에 최소 CPU 플랫폼 설정

먼저 기존 인스턴스를 중지하면 해당 인스턴스에 최소 CPU 플랫폼을 설정할 수 있습니다.

인스턴스를 중지한 후, 아래의 안내에 따라 최소 CPU 플랫폼을 설정하고 나면 인스턴스를 다시 시작하도록 합니다.

콘솔

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

    VM 인스턴스 페이지로 이동

  2. 메시지가 표시되면 프로젝트를 선택하고 계속을 클릭합니다.
  3. 변경하려는 중지된 인스턴스를 선택합니다.
  4. 수정을 클릭하여 인스턴스를 수정합니다.
  5. 머신 구성 섹션에서 CPU 플랫폼 및 GPU를 클릭합니다.
  6. CPU 플랫폼 드롭다운 메뉴에서 옵션을 선택합니다.
  7. 변경사항을 저장합니다.
  8. 인스턴스를 다시 시작합니다.

gcloud

update 하위 명령어를 사용한 후, --min-cpu-platform 플래그를 사용합니다. Intel Haswell, Intel Broadwell, Intel Sandy Bridge와 같이 플랫폼의 친숙한 이름을 지정합니다. 예를 들면 다음과 같습니다.

gcloud compute instances update [INSTANCE_NAME] \
    --min-cpu-platform "Intel Haswell"

API

API에서 최소 CPU 플랫폼을 설정하려면 setMinCpuPlatform 메서드에 대해 POST 요청을 실행하고 요청 본문에 minCpuPlatform 속성을 설정합니다. 속성 값은 Intel Haswell, Intel Broadwell, Intel Sandy Bridge와 같이 CPU 플랫폼의 친숙한 이름이어야 합니다. 예를 들면 다음과 같습니다.

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

{
  "minCpuPlatform": "Intel Haswell"
}

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

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

최소 CPU 플랫폼을 지정하려면 minCpuPlatform 속성을 포함하는 인스턴스 템플릿을 생성합니다.

콘솔

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

    인스턴스 템플릿 페이지로 이동

  2. 메시지가 나타나면 프로젝트를 선택하고 계속을 클릭합니다.
  3. 인스턴스 템플릿 만들기를 클릭합니다.
  4. 머신 구성 섹션에서 CPU 플랫폼 및 GPU를 클릭합니다.
  5. CPU 플랫폼 드롭다운 메뉴에서 옵션을 선택합니다.
  6. 인스턴스 템플릿 생성 프로세스를 계속 진행합니다.

gcloud

gcloud 도구를 사용할 경우, 인스턴스 템플릿을 만들 때 --min-cpu-platform 플래그를 지정합니다. 예를 들면 다음과 같습니다.

gcloud compute instance-templates create example-template \
    --min-cpu-platform "Intel Haswell"

API

API에서 API에 새 인스턴스 템플릿을 만드는 요청의 일부로 minCpuPlatform을 추가합니다.

예를 들어, 다음 인스턴스 템플릿은 minCpuPlatform 속성이 추가된 새 템플릿을 만드는 데 필요한 최소 필드를 포함하고 있습니다.

{
"name": "example-template",
"properties": {
  "machineType": "zones/us-central1-a/machineTypes/n1-standard-4",
  "minCpuPlatform": "Intel Haswell",
  "networkInterfaces": [
    {
      "network": "global/networks/default",
      "accessConfigs":
      [
        {
          "name": "external-IP",
          "type": "ONE_TO_ONE_NAT"
        }
      ]
    }
  ],
  "disks":
  [
    {
      "type": "PERSISTENT",
      "boot": true,
      "mode": "READ_WRITE",
      "initializeParams":
      {
        "sourceImage": "projects/debian-cloud/global/images/family/debian-8"
      }
    }
  ]
  }
}

다음 단계

이 페이지가 도움이 되었나요? 평가를 부탁드립니다.

다음에 대한 의견 보내기...

Compute Engine 문서