Linux용 Azure NetApp Files 대용량 성능 벤치마크

이 문서에서는 Linux 사용 사례와 관련된 단일 Azure NetApp Files 대용량 의 테스트된 성능 기능을 설명합니다. 이 테스트에서는 하나 이상의 VM(가상 머신)을 포함하는 스케일 아웃 및 스케일 업 읽기 및 쓰기 워크로드 모두에 대한 시나리오를 탐색했습니다. 대용량의 성능 봉투를 알면 볼륨 크기를 쉽게 조정하는 데 도움이 됩니다.

테스트 요약

  • Azure NetApp Files 대용량 기능은 각각 처리량 제한이 있는 세 가지 서비스 수준을 제공합니다. 성능 요구 사항이 변경되면 서비스 수준을 무차별적으로 확장하거나 축소할 수 있습니다.

    • Ultra 서비스 수준: 12,800MiB/s
    • 프리미엄 서비스 수준: 6,400MiB/s
    • 표준 서비스 수준: 1,600MiB/s

    Ultra 서비스 수준은 이러한 테스트에서 사용되었습니다.

  • 순차 I/O: 100% 순차 쓰기는 최대 8,500MiB/초이고, 단일 대용량은 10GiB/초(12,800MiB/초) 처리량을 수행할 수 있습니다.

  • 임의 I/O: 동일한 단일 대용량은 초당 700,000개 이상의 작업을 제공합니다.

  • 메타데이터가 많은 워크로드는 대량의 병렬 처리로 인해 Azure NetApp File 대용량에 유리합니다. VCS 애플리케이션에서 일반적으로 파일 만들기, 연결 해제 및 파일 이름 바꾸기가 많은 워크로드와 파일 수가 많은 EDA 워크로드에서 성능 이점이 두드러집니다. 높은 메타데이터 워크로드의 성능에 대한 자세한 내용은 전자 디자인 자동화에 Azure NetApp Files를 사용할 경우의 이점을 참조 하세요.

  • 스토리지 스트레스 테스트로 설계된 가상 워크로드 생성기인 FIO는 이러한 테스트 결과를 구동하는 데 사용되었습니다. 스토리지 성능 테스트에는 기본적으로 두 가지 모델이 있습니다.

    • 스케일 아웃 컴퓨팅- 단일 Azure NetApp Files 볼륨에서 가능한 최대 부하를 생성하기 위해 여러 VM을 사용하는 것을 의미합니다.
    • 대규모 VM을 사용하여 단일 Azure NetApp Files 볼륨에서 단일 클라이언트의 상한을 테스트하는 것을 참조하는 스케일 업 컴퓨팅입니다.

Linux 스케일 아웃 테스트

테스트는 스케일 아웃 시 단일 대용량의 성능 임계값을 관찰하고 다음 구성으로 수행되었습니다.

구성 요소 구성
Azure VM 크기 E32s_v5
Azure VM 송신 대역폭 제한 2000MiB/초(2GiB/초)
운영 체제 RHEL 8.4
대용량 크기 101TiB Ultra(12,800MiB/s 처리량)
탑재 옵션 hard,rsize=65536,wsize=65536,vers=3
참고: 262144와 65536을 모두 사용하면 비슷한 성능 결과를 얻었습니다.

256KiB 순차 워크로드(MiB/s)

그래프는 256KiB 순차 워크로드와 1TiB 작업 집합을 나타냅니다. 이는 단일 Azure NetApp Files 대용량 볼륨이 약 8,518MiB/s 순수 순차 쓰기와 9,970MiB/s 순수 순차 읽기 사이를 처리할 수 있음을 보여 줍니다.

대용량의 256KiB 순차 워크로드를 보여 주는 막대형 차트입니다.

8KiB 임의 워크로드(IOPS)

그래프는 8KiB 임의 워크로드와 1TiB 작업 집합을 나타냅니다. 그래프는 Azure NetApp Files 대용량 볼륨이 약 474,000개의 순수 임의 쓰기와 약 709,000개의 순수 임의 읽기를 처리할 수 있음을 보여 줍니다.

대용량의 임의 워크로드를 보여 주는 막대형 차트입니다.

Linux 확장 테스트

스케일 아웃 테스트는 단일 큰 볼륨의 제한을 찾기 위해 설계된 반면, 스케일 업 테스트는 말했다 된 큰 볼륨에 대한 단일 인스턴스의 상한을 찾을 수 있도록 설계되었습니다. Azure는 VM에 네트워크 송신 제한을 설정합니다. 네트워크 연결 스토리지의 경우 쓰기 대역폭이 VM당 제한됩니다. 이러한 확장 테스트는 사용 가능한 대역폭 한도가 크고 해당 워크로드를 구동하기에 충분한 프로세서가 있는 기능을 보여 줍니다.

이 섹션의 테스트는 다음 구성으로 실행되었습니다.

구성 요소 구성
Azure VM 크기 E104id_v5
Azure VM 송신 대역폭 제한 12,500MiB/s(12.2GiB/s)
운영 체제 RHEL 8.4
대용량 크기 101TiB Ultra(12,800MiB/s 처리량)
탑재 옵션 hard,rsize=65536,wsize=65536,vers=3
참고: 262144 및 65536을 모두 사용하면 성능 결과가 유사합니다.

이 섹션의 그래프는 NFSv3의 클라이언트 쪽 탑재 옵션 nconnect 에 대한 결과를 보여 줍니다. 자세한 내용은 Azure NetApp File에 대한 Linux NFS 탑재 옵션 모범 사례를 참조 하세요.

다음 그래프는 NFS 탑재 볼륨과 NFS 탑재 볼륨nconnectnconnect 장점을 비교합니다. 테스트에서 FIO는 64-KiB 순차적 워크로드를 사용하여 미국 동부 Azure 지역의 단일 E104id-v5 인스턴스에서 워크로드를 생성했습니다. Azure NetApp Files에서 권장하는 가장 큰 I/O 크기인 256 I/0 크기가 사용되어 비슷한 성능 수치를 보였습니다. 자세한 내용은 rsizewsize를 참조하세요.

Linux 읽기 처리량

다음 그래프는 ~10,000MiB/s의 256-KiB 순차 읽기를 보여 줍니다 nconnect. 이 읽기는 처리량의 약 10배에 해당합니다 nconnect.

10,000MiB/s 대역폭은 Ultra 서비스 수준의 대용량에서 제공됩니다.

nconnect를 사용하거나 사용하지 않는 읽기 처리량의 가로 막대형 차트 비교

Linux 쓰기 처리량

다음 그래프에서는 순차 쓰기를 보여 줍니다. 사용은 nconnect 6,600MiB/s의 순차 쓰기에 대해 관찰 가능한 이점을 제공하며, 이는 탑재의 nconnect약 4배에 해당합니다.

nconnect를 사용하거나 사용하지 않는 쓰기 처리량의 가로 막대형 차트 비교

Linux 읽기 IOPS

다음 그래프는 IOPS를 읽는 8-KiB 임의 읽기를 426,000개까지 보여 줍니다nconnectnconnect.

IOPS와 IOPS가 없는 읽기 IOPS를 비교하는 차트입니다.

Linux 쓰기 IOPS

다음 그래프는 IOPS를 405,000개까지 쓰는 8KiB 임의 쓰기를 보여 줍니다 nconnect. 약 7.2배는 없이 nconnect관찰됩니다.

IOPS와 쓰기 IOPS를 비교하는 차트입니다.

다음 단계