볼륨 성능 크기 조정

이 페이지에서는 볼륨 성능 크기 조정을 설명합니다.

성능 크기 조정의 중요성

성능에 맞게 워크로드의 크기를 올바르게 조정하려면 다음을 이해해야 합니다.

  • 단일 볼륨이 제공할 수 있는 성능입니다.

  • 볼륨의 성능을 조정하는 방법

  • 성능은 주로 기본 스토리지 풀의 서비스 수준에 따라 달라집니다.

Flex Unified 및 Flex File 맞춤 성능

Flex Unified 및 Flex File 맞춤 성능의 경우 다음 사항을 고려하세요.

  • 성능이 공유됨: 기본 스토리지 풀에서 성능을 제공합니다. Flex Unified 또는 Flex File 맞춤 풀의 모든 볼륨은 풀의 총 성능을 공유합니다. 작은 볼륨은 큰 볼륨의 사용하지 않는 성능을 사용할 수 있습니다. 이는 기본 모드와 ONTAP 모드 모두에 적용됩니다.

  • 구성 가능한 성능: 용량과 관계없이 풀의 성능을 설정할 수 있습니다.

    • 기본값: 풀당 64MiBps 처리량 및 1,024 IOPS

    • 처리량 확장성: 1MiBps 단위로 최대 5GiBps까지 처리량을 늘립니다. MiBps가 추가될 때마다 IOPS가 16씩 추가됩니다.

    • IOPS: 풀당 최대 160,000 IOPS를 프로비저닝합니다.

  • 대용량 풀: 처리량이 최대 24GiBps에 도달할 수 있습니다.

  • 한도: 풀의 유효 성능은 애플리케이션의 블록 크기에 따라 처리량 또는 IOPS 중 먼저 도달하는 한도에 의해 제한됩니다.

Flex 파일 기본 성능

Flex 파일 기본 성능에 관해 다음 사항을 고려하세요.

  • 성능이 공유됨: 기본 스토리지 풀에서 성능을 제공합니다. 풀의 모든 볼륨은 성능을 공유합니다.

  • Flex Unified 및 Flex File 맞춤 성능과 마찬가지로 블록 크기에 따라 처리량과 IOPS 중 어떤 제한이 먼저 적용되는지 결정됩니다.

    • 처리량: 최대 1.6GiBps까지 풀 용량 GiB당 16KiBps

    • IOPS: 풀 용량의 TiB당 1,024IOPS(최대 60,000IOPS)

표준, 프리미엄, 익스트림 성능

Standard, Premium, Extreme 서비스 수준 볼륨의 경우 볼륨이 유지할 수 있는 최대 처리량은 용량과 볼륨을 호스팅하는 스토리지 풀의 서비스 수준에 따라 결정됩니다. 용량을 변경하여 볼륨의 최대 처리량을 늘리거나 줄일 수 있으며, 프리미엄 및 익스트림 서비스 수준의 경우 서비스 수준이 다른 스토리지 풀에 다시 할당하여 최대 처리량을 늘리거나 줄일 수 있습니다.

다음 처리량 및 IOPS 한도는 대규모 순차 읽기를 가정합니다. 소규모 I/O 또는 쓰기가 하한에 도달합니다. 자세한 내용은 성능 벤치마크를 참고하세요.

  • 성능은 볼륨 크기와 서비스 수준에 따라 확장됩니다.

    • 표준: TiB 볼륨 용량당 16MiBps, 최대 1.6GiBps

    • 프리미엄: TiB 볼륨 용량당 64MiBps(볼륨당 최대 5GiBps) 대용량 볼륨의 경우 30GiBps

    • 익스트림: TiB 볼륨 용량당 128MiBps, 볼륨당 최대 5GiBps 대용량 볼륨의 경우 30GiBps

  • 선형 확장: 처리량은 서비스 수준 최대값에 도달할 때까지 볼륨 크기에 따라 증가합니다.

  • 성능 조정: 성능을 개선하려면 볼륨 용량을 늘리거나 프리미엄 또는 익스트림과 같은 더 높은 서비스 수준으로 이동하면 됩니다. 더 세부적으로 제어하려면 수동 QoS를 사용하여 특정 볼륨에 풀 성능을 할당합니다.

워크로드 고려사항

볼륨 성능 크기 조정 섹션에서는 볼륨이 제공할 수 있는 최대 성능을 설명합니다. 실제 애플리케이션 성능은 애플리케이션이 볼륨에 I/O 작업을 실행하는 방식에 따라 달라집니다.

애플리케이션 성능을 결정하는 주요 요인은 다음과 같습니다.

  • 워크로드 혼합: 읽기, 쓰기, 메타데이터 작업, 순차 액세스와 임의 액세스

  • 블록 크기: 블록이 작을수록 IOPS가 높아지고 블록이 클수록 처리량이 높아집니다. 효율성을 높이려면 더 큰 블록 크기 (64KiB 이상)를 사용하세요.

  • 지연 시간: 네트워크 지연 시간이 짧을수록 성능이 향상됩니다.

  • I/O 동시 실행: 병렬 I/O 작업이 많을수록 성능이 향상됩니다.

  • 액세스 프로토콜: 프로토콜(NFSv3, NFSv4, SMB 또는 iSCSI) 선택은 성능에 영향을 줄 수 있습니다.

  • 클라이언트 VM 캐시: VM 버퍼 캐시를 늘리면 읽기 작업을 줄일 수 있습니다.

주요 공식은 다음과 같습니다.

  • IOPS = 동시성 / 지연 시간

  • 처리량 = IOPS * 블록 크기

다음 예에서는 처리량과 IOPS가 계산되는 방법을 보여줍니다.

볼륨 처리량 예시

Premium 서비스 등급과 1,500GiB 용량의 볼륨의 경우 동시성이 8일 때 달성할 수 있는 최대 대규모 순차 읽기 처리량은 다음 공식을 사용하여 계산됩니다. Premium 볼륨의 경우 처리량은 한도에 도달할 때까지 볼륨 용량에 따라 선형적으로 확장됩니다.

(1,500 GiB x 64 KiBps/GiB) / 1,024 KiB/MiB = 93.75 MiBps

처리량 및 IOPS 예

사용자가 Windows 파일 탐색기에서 단일 스레드 복사 (concurrency = 1)를 사용하여 대용량 파일을 복사하는 시나리오를 가정해 보겠습니다. 파일이 로컬 SSD에서 처리량 한도가 512MiBps인 4TiB Extreme 볼륨으로 이동되고 있습니다. Windows 파일 탐색기에서 128KiB 블록 크기를 사용하고 볼륨의 지연 시간이 0.5ms라고 가정하면 다음 공식을 사용하여 처리량과 IOPS를 계산할 수 있습니다.

IOPS = 1/0.0005s = 2,000 IOPS

처리량 = 2,000 IOPS * 128KiB = 256,000KiBps = 250MiBps

이 예에서 파일 탐색기는 볼륨 한도 (512MiBps)에 도달할 만큼 처리량을 높일 수 없습니다. 또한 지연 시간이 1밀리초인 경우 지연 시간이 단일 스레드 애플리케이션에 직접 영향을 미치므로 처리량이 50% 감소합니다. 이 볼륨을 최대 성능 잠재력으로 끌어올리려면 동시성이 높은 멀티 스레드 애플리케이션을 사용하세요.

메타데이터 작업

메타데이터 작업은 작고 프로토콜별 작업입니다. 메타데이터 작업 성능은 주로 지연 시간에 의해 제한됩니다. 메타데이터 작업의 예는 다음과 같습니다.

  • 폴더의 콘텐츠 나열

  • 파일 삭제

  • 권한 설정

지연 시간

지연 시간은 I/O 작업이 완료되는 데 걸리는 총시간입니다. 여기에는 대기열에서의 대기 시간과 I/O가 처리되는 서비스 시간이 포함됩니다. 지연 시간을 개선하려면 리전의 모든 영역에서 NetApp 볼륨에 대한 연결을 테스트하고 지연 시간이 가장 낮은 영역을 선택하는 것이 좋습니다.

고려사항

  • 클라이언트의 네트워크 대역폭이 필요한 것보다 작으면 I/O 작업이 클라이언트에서 대기열에 추가되는 데 시간이 걸리므로 Windows의 perfmon 또는 Linux의 nfsiostat에서 보고하는 클라이언트 지연 시간이 NetApp Volumes에서 보고하는 지연 시간보다 높습니다.

  • 볼륨의 처리량 상한이 특정 워크로드에 필요한 처리량보다 낮으면 스토리지 지연 시간이 높아집니다. 또한 클라이언트 측 대기열이 추가되어 클라이언트 지연 시간이 길어집니다.

  • 볼륨의 처리량 상한에 도달하면 처리량 한도를 늘려 클라이언트 및 스토리지 지연 시간을 개선할 수 있습니다.

다음 단계

스토리지 풀에 대해 알아보기