지원되는 머신 유형

Dataproc 클러스터는 Compute Engine 인스턴스에 빌드됩니다. 머신 유형은 인스턴스에 사용할 수 있는 가상화된 하드웨어 리소스를 정의합니다. Compute Engine은 사전 정의된 머신 유형과 [커스텀 머신 유형]을 모두 제공합니다. Dataproc 클러스터는 마스터 노드나 워커 노드에 사전 정의된 유형과 커스텀 유형을 모두 사용할 수 있습니다.

Dataproc에서 지원하는 클러스터의 Compute Engine 사전 정의된 머신 유형은 다음과 같습니다.

  • 범용 머신 유형: N1, N2, N2D, E2 머신 유형이 포함됩니다.

    • Dataproc은 N1, N2, N2D, E2 커스텀 머신 유형도 지원합니다.
  • C2 머신 유형이 포함된 컴퓨팅 최적화 머신 유형

  • M1 및 M2 머신 유형이 포함된 메모리 최적화 머신 유형

커스텀 머신 유형

커스텀 머신 유형은 다음과 같은 워크로드에 적합합니다.

  • 사전 정의된 머신 유형에 적합하지 않은 워크로드
  • 추가 처리 능력이나 메모리가 필요하지만 다음 머신 유형 수준에서 제공되는 모든 업그레이드는 필요하지 않은 작업 부하

워크로드에 n1-standard-4 인스턴스에서 제공한 것보다 더 많은 처리 능력이 필요하지만 다음 단계인 n1-standard-8 인스턴스의 용량은 너무 과하다고 가정해 보겠습니다. 커스텀 머신 유형을 사용하면 가상 CPU 6개와 메모리 25GB로 중간 범위에 마스터 노드 또는 워커 노드가 있는 Dataproc 클러스터를 만들 수 있습니다.

커스텀 머신 유형 지정

커스텀 머신 유형은 특수 machine type 사양을 사용하며 제한 사항이 적용됩니다. 예를 들어 가상 CPU 6개와 메모리 22.5GB를 사용하는 커스텀 VM의 커스텀 머신 유형 사양은 custom-6-23040입니다.

머신 유형 상의 숫자는 머신의 가상 CPU(vCPU) 수(6)와 메모리 양(23040)에 해당됩니다. 메모리 양은 메모리 양을 1024로 곱하여 계산됩니다(GB 단위). GB 또는 MB 단위의 메모리 표현을 참조하세요. 이 예시에서는 22.5(GB)에 1024를 곱합니다(22.5 * 1024 = 23040).

위 구문을 사용하여 클러스터와 커스텀 머신 유형을 지정합니다. 클러스터를 만들 때 마스터 노드 또는 워커 노드의 머신 유형을 설정할 수 있습니다. 두 노드를 모두 설정하는 경우 마스터 노드는 작업자가 사용하는 커스텀 머신 유형이 아닌 다른 커스텀 머신 유형을 사용할 수 있습니다. 보조 작업자에서 사용되는 머신 유형은 기본 작업자의 설정을 따르고 별도로 설정될 수 없습니다(선점형 작업자가 Dataproc을 사용하는 방식 참조).

가격

커스텀 머신 유형 가격은 커스텀 머신에 사용된 리소스를 기준으로 합니다. Dataproc 가격은 컴퓨팅 리소스 비용에 추가되고 클러스터에 사용된 총 가상 CPU(vCPU) 수에 따라 결정됩니다.

지정된 머신 유형으로 Dataproc 클러스터 만들기

gcloud 명령어

gcloud dataproc clusters create 명령어를 다음 플래그와 함께 실행하여 마스터 머신 유형이나 작업자 머신 유형을 사용해 Dataproc 클러스터를 만듭니다.
  • --master-machine-type machine-type 플래그를 사용하면 클러스터에서 마스터 VM 인스턴스(또는 HA 클러스터를 만드는 경우 마스터 인스턴스)에서 사용하는 사전 정의된 머신 유형이나 커스텀 머신 유형을 설정할 수 있습니다.
  • --worker-machine-type custom-machine-type 플래그를 사용하면 클러스터의 작업자 VM 인스턴스에서 사용하는 사전 정의된 머신 유형이나 커스텀 머신 유형을 설정할 수 있습니다.

:

gcloud dataproc clusters create test-cluster /
    --master-machine-type custom-6-23040 /
    --worker-machine-type custom-6-23040 /
    other args
Dataproc 클러스터가 시작되면 클러스터 세부정보가 터미널 창에 표시됩니다. 다음은 터미널 창에 표시되는 클러스터 속성의 샘플 목록 일부입니다.
...
properties:
  distcp:mapreduce.map.java.opts: -Xmx1638m
  distcp:mapreduce.map.memory.mb: '2048'
  distcp:mapreduce.reduce.java.opts: -Xmx4915m
  distcp:mapreduce.reduce.memory.mb: '6144'
  mapred:mapreduce.map.cpu.vcores: '1'
  mapred:mapreduce.map.java.opts: -Xmx1638m
...

REST API

커스텀 머신 유형으로 클러스터를 만들려면 cluster.create API 요청의 masterConfig 또는 workerConfig InstanceGroupConfig에서 machineTypeUri를 설정합니다.

:
POST /v1/projects/my-project-id/regions/is-central1/clusters/
{
  "projectId": "my-project-id",
  "clusterName": "test-cluster",
  "config": {
    "configBucket": "",
    "gceClusterConfig": {
      "subnetworkUri": "default",
      "zoneUri": "us-central1-a"
    },
    "masterConfig": {
      "numInstances": 1,
      "machineTypeUri": "n1-highmem-4",
      "diskConfig": {
        "bootDiskSizeGb": 500,
        "numLocalSsds": 0
      }
    },
    "workerConfig": {
      "numInstances": 2,
      "machineTypeUri": "n1-highmem-4",
      "diskConfig": {
        "bootDiskSizeGb": 500,
        "numLocalSsds": 0
      }
    }
  }
}

콘솔

클러스터 만들기 페이지에서 Dataproc 클러스터를 만들 때 마스터 노드 또는 워커 노드 패널의 머신 유형 섹션에서 맞춤설정을 클릭한 후 코어 수와 메모리 양을 입력합니다. 콘솔 라벨과 도움말 텍스트는 유효한 머신 유형 값을 선택할 때 유용합니다.

다음 스크린샷에는 각 노드에 6개의 가상 CPU와 22.5GB의 메모리가 있는 클러스터를 만들기 위한 마스터 노드 값과 워커 노드 값이 나와 있습니다.
메모리 확장을 클릭하여 마스터 노드 또는 워커 노드의 확장 메모리 값을 제공합니다.

CPU 확장 메모리

Cloud Dataproc은 vCPU당 6.5GB 한도 이상의 확장 메모리가 있는 커스텀 머신 유형을 지원합니다(확장 메모리 가격 참조).

확장 메모리 사용

gcloud 명령

gcloud 명령줄에서 확장 메모리가 있는 커스텀 CPU를 사용하여 클러스터를 만들려면 -ext 서픽스를 ‑‑master-machine-type 또는 ‑‑worker-machine-type 플래그에 추가합니다.

예시

다음 gcloud 명령줄 샘플은 각 노드에 CPU 1개와 메모리 50GB(50 * 1024 = 51200)가 있는 Dataproc 클러스터를 만듭니다.

gcloud dataproc clusters create test-cluster /
    --master-machine-type custom-1-51200-ext /
    --worker-machine-type custom-1-51200-ext /
    other args

REST API

Dataproc REST API clusters.create 요청의 다음 샘플 JSON 스니펫은 각 노드에서 CPU 1개와 메모리 50GB(50 * 1024 = 51200)를 지정합니다.

...
    "masterConfig": {
      "numInstances": 1,
      "machineTypeUri": "custom-1-51200-ext",
    ...
    },
    "workerConfig": {
      "numInstances": 2,
      "machineTypeUri": "custom-1-51200-ext",
     ...
...

콘솔

Cloud Console의 Cloud Dataproc 클러스터 만들기 페이지의 마스터 노드 섹션 또는 워커 노드 섹션에서 머신 유형 메모리를 맞춤설정할 때 메모리 확장을 클릭합니다.

추가 정보

커스텀 머신 유형으로 VM 인스턴스 만들기를 참조하세요.