익스트림 영구 디스크

고성능이 중요한 애플리케이션의 경우 익스트림 영구 디스크를 사용하세요. 익스트림 영구 디스크는 최대 IOPS 및 처리량이 높으며 IOPS 및 용량을 별도로 프로비저닝할 수 있습니다. 익스트림 영구 디스크는 모든 영역에서 사용할 수 있습니다.

익스트림 영구 디스크를 만들 때는 10,000~120,000 IOPS의 범위 내에서 원하는 IOPS 수준을 선택할 수 있습니다. 이 문서에서는 익스트림 영구 디스크 사용 시의 중요한 제한사항, 가능한 최대 성능 수준에 도달하기 위한 고려사항, Console, gcloud CLI, Compute Engine API를 사용하여 IOPS를 프로비저닝하는 방법을 설명합니다.

머신 형태 지원

익스트림 영구 디스크에서 제공하는 최대 성능 수준에 도달하려면 M1, M2, N2-64를 포함하여 vCPU가 64개 이상인 대형 머신 유형인 가상 머신(VM) 인스턴스에 익스트림 영구 디스크를 연결해야 합니다.

다른 모든 머신 유형은 프로덕션 용도로 지원되지 않습니다. 지원되지 않는 머신 형태의 VM에 익스트림 영구 디스크를 성공적으로 연결할 수 있지만, 디스크 성능이 프로비저닝된 IOPS 수 또는 SSD 영구 디스크 IOPS 수준 중 하나로 되돌아갑니다.

머신 유형 최대 IOPS 최대 처리량(MB/s)
n2-standard-64 120,000* 2,200
n2-highmem-64 120,000* 2,200
n2-highmem-80 120,000* 2,200
m1-megamem-96 90,000 2,200
m2-ultramem-208 60,000 2,200
m2-ultramem-416 40,000 2,200(읽기), 1,200(쓰기)

*순수 쓰기 워크로드는 110,000~120,000 IOPS의 최대 IOPS 한도에 도달할 것으로 예상됩니다. 이는 일반적인 워크로드 패턴이 아닙니다.

성능 한도 및 워크로드 패턴

익스트림 영구 디스크에서 제공하는 최대 성능 수준에 도달하려면 다음 워크로드 매개변수를 고려해야 합니다.

  • I/O 크기: 최대 IOPS 한도는 4KB 또는 8KB의 I/O 크기를 사용한다고 가정합니다. 최대 처리량 한도는 1MB의 I/O 크기를 사용한다고 가정합니다.
  • 큐 길이: 큐 길이는 영구 디스크에 대해 대기 중인 요청 수입니다. 최대 성능 한도에 도달하려면 워크로드의 I/O 크기, IOPS, 지연 시간 민감도에 따라 큐 길이를 조정해야 합니다. 최적의 큐 길이는 각 워크로드에 따라 다르지만 일반적으로 128보다 커야 합니다.
  • 작업 세트 크기: 작업 세트 크기는 짧은 기간 동안 액세스되는 디스크의 데이터 양입니다. 최적의 성능을 얻으려면 작업 세트 크기를 1.5TB 미만으로 제한합니다.
  • 다른 영구 디스크의 동시 사용: 익스트림 영구 디스크는 VM당 최대 IOPS 및 처리량 한도를 동일한 VM에 연결된 다른 모든 영구 디스크와 공유합니다. 익스트림 영구 디스크의 성능을 모니터링할 때는 동일한 VM에 연결된 다른 디스크에 전송하는 모든 I/O 요청을 고려하세요.

기타 제한사항

  • 익스트림 영구 디스크는 영역 전용입니다. 리전 익스트림 영구 디스크는 만들 수 없습니다.
  • 읽기 전용 모드의 여러 VM 인스턴스를 익스트림 영구 디스크에 연결할 수 없습니다.
  • 익스트림 영구 디스크에서는 이미지 또는 머신 이미지를 만들 수 없습니다.
  • 익스트림 영구 디스크는 클론할 수 없습니다.
  • 익스트림 영구 디스크는 VM 인스턴스에 마운트된 동안에는 크기를 조절할 수 없습니다.

처리량

익스트림 영구 디스크의 경우 처리량은 프로비저닝한 IOPS 수에 따라 I/O당 32KB(또는 0.032MB)의 처리량으로 확장됩니다. 하지만 처리량은 익스트림 디스크가 연결된 VM 인스턴스의 vCPU 수에 따라 인스턴스당 한도로 제한됩니다.

익스트림 영구 디스크의 처리량은 완전 튜플렉스가 아닙니다. 이 문서에 나열된 최대 처리량 한도는 읽기 및 쓰기 처리량의 합계에 적용됩니다.

IOPS 프로비저닝

워크로드 요구사항에 맞게 IOPS를 프로비저닝하려면 다음을 수행합니다.

  1. 워크로드의 IOPS 요구사항을 확인합니다.
  2. 워크로드의 처리량 요구사항을 충족하는 데 필요한 IOPS를 결정합니다.
    • 필수 IOPS = 초당 처리량(KB)/32
  3. 프로비저닝된 IOPS를 두 숫자 중 더 큰 값으로 설정합니다.

Console

  1. 새 영구 디스크를 만듭니다.
  2. 디스크 유형에서 익스트림 영구 디스크를 선택합니다.
  3. 프로비저닝된 IOPS에서 10,000~120,000 IOPS 범위 내에서 원하는 IOPS 한도를 선택합니다.

gcloud

gcloud compute disks create 명령어를 사용하여 새 디스크를 만들고 다음 플래그를 포함합니다.

gcloud compute disks create DISK_NAME \
  --size=DISK_SIZE \
  --type=pd-extreme \
  --provisioned-iops=IOPS_LIMIT

다음을 바꿉니다.

  • DISK_NAME: 새 디스크의 이름입니다.
  • DISK_SIZE: 새 디스크의 크기(GB)입니다. 익스트림 영구 디스크의 기본 디스크 크기는 1,000GB입니다.
  • IOPS_LIMIT: 10,000~120,000 IOPS 범위 내에서 원하는 IOPS 한도입니다.

API

disks.insert 메서드를 사용하여 새 디스크를 만들고 다음 플래그를 포함합니다.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks

{
 "name": "DISK_NAME",
 "type": "zones/ZONE/diskTypes/pd-extreme"
 "provisionedIops": "IOPS_LIMIT"
}

다음을 바꿉니다.

  • PROJECT_ID: 프로젝트 ID입니다.
  • ZONE: 디스크의 대상 영역입니다.
  • DISK_NAME: 디스크의 이름입니다.
  • IOPS_LIMIT: 10,000~120,000 IOPS 범위 내에서 원하는 IOPS 한도입니다.