Lsv3, Lasv3 및 Lsv2 시리즈 Linux VM에서 성능 최적화

주의

이 문서에서는 EOL(수명 종료) 상태에 가까워진 Linux 배포판인 CentOS를 참조하세요. 이에 따라 사용 및 플랜을 고려하세요. 자세한 내용은 CentOS 수명 종료 지침을 참조하세요.

적용 대상: ✔️ Linux VM ✔️ 균일 확장 집합

Lsv3, Lasv3 및 Lsv2 시리즈 Azure VMs(Azure Virtual Machines)는 광범위한 애플리케이션 및 업계 전반에 걸쳐 로컬 스토리지에 대한 높은 I/O와 처리량이 필요한 다양한 워크로드를 지원합니다. L 시리즈는 Cassandra, MongoDB, Cloudera 및 Redis를 포함하여 빅 데이터, SQL, NoSQL 데이터베이스, 데이터 웨어하우징 및 대규모 트랜잭션 데이터베이스에 적합합니다.

Linux의 파트너와 함께 작업하기 때문에 Azure Marketplace에서 여러 빌드를 사용할 수 있습니다. 이러한 빌드는 Lsv3, Lasv3 및 Lsv2 시리즈 성능에 최적화되어 있습니다. 사용 가능한 빌드에는 다음과 같은 후속 버전이 포함됩니다.

  • Ubuntu 16.04
  • CENTOS, Rocky Linux 및 Alma Linux를 포함하는 RHEL 8.0 및 클론
  • Debian 9
  • SUSE Linux 15
  • Oracle Linux 8.0

이 문서에서는 워크로드와 애플리케이션이 VM에 설계된 최대 성능을 얻을 수 있는 팁과 제안을 제공합니다.

AMD EPYC™ 칩셋 아키텍처

Lasv3 및 Lsv2 시리즈 VM은 Zen 마이크로 아키텍처를 기반으로 하는 AMD EPYC™ 서버 프로세서를 사용합니다. AMD는 온다이, 온패키지 및 멀티패키지 통신에 사용할 수 있는 NUMA 모델을 위한 스케일링 가능한 상호 연결로 IF(Infinity Fabric) for EPYC™를 개발했습니다. Intel 최신 모놀리식 다이 프로세서에 사용되는 QPI(Quick-Path Interconnect) 및 UPI(Ultra-Path Interconnect)와 비교하여 AMD의 많은 NUMA 소형 다이 아키텍처는 성능상의 이점과 문제를 모두 제공할 수 있습니다. 메모리 대역폭 및 대기 시간 제약 조건의 실제 효과는 실행 중인 워크로드 유형에 따라 달라질 수 있습니다.

성능 최대화를 위한 팁

  • 워크로드를 위한 사용자 지정 Linux GuestOS를 업로드하는 경우 가속화된 네트워킹은 기본적으로 꺼집니다. 가속화된 네트워킹을 사용하도록 설정하려는 경우 최적의 성능을 위해 VM을 만들 때 사용하도록 설정합니다.
  • 최대 성능을 얻으려면 디바이스당 심층 큐 깊이를 사용하여 여러 작업을 실행합니다.
  • 활성 워크로드 중에 NVMe 관리자 명령(예: NVMe SMART info query 등)과 NVMe I/O 명령을 섞어서 사용하지 마세요. Lsv3, Lasv3 및 Lsv2 NVMe 디바이스는 NVMe 관리자 명령이 보류될 때마다 "저속 모드"로 전환되는 Hyper-V NVMe Direct 기술로 지원됩니다. 해당 상황이 발생하는 경우 Lsv3, Lasv3 및 Lsv2 사용자는 NVMe I/O 성능의 극적인 성능 저하를 확인할 수 있습니다.
  • Lsv2 사용자가 데이터 드라이브에 대해 VM 내에서 보고되는 디바이스 NUMA 정보(모두 0)를 사용하여 앱에 대한 NUMA 선호도를 결정하는 것은 권장되지 않습니다. 성능 향상을 위해 가능한 경우 CPU 간에 워크로드를 분산하는 것이 좋습니다.
  • Lsv3, Lasv3 및 Lsv2 VM NVMe 디바이스에 지원되는 I/O 큐 쌍당 최대 큐 깊이는 1024입니다. Lsv3, Lasv3 및 Lsv2 사용자는 성능이 저하될 수 있는 큐 가득 참 조건이 트리거되지 않도록 (가상) 벤치마킹 워크로드를 1024 이하의 큐 깊이로 제한하는 것이 좋습니다.
  • 또한 분할, 파일 시스템, RAID 구성 등이 없는 각 원시 NVMe 디바이스에 I/O를 직접 수행하는 경우 최상의 성능을 얻을 수 있습니다. 테스트 세션을 시작하기 전에 각 NVMe 디바이스에서 blkdiscard를 실행하여 구성이 알려진 최신/정리 상태인지 확인합니다. 벤치마킹 중에 가장 일관된 성능을 얻으려면 SNIA Solid State Storage Enterprise 성능 테스트 사양에 정의된 대로 모든 디바이스의 LBA에 임의 쓰기를 두 번 실행하여 테스트 전에 NVMe 디바이스에 사전 조건을 지정하는 것이 좋습니다.

로컬 NVMe 스토리지 활용

모든 Lsv3, Lasv3 및 Lsv2 VM의 1.92TB NVMe 디스크에 있는 로컬 스토리지는 사용 후 삭제되는 디스크입니다. VM 표준 재부팅을 성공적으로 수행하는 동안 로컬 NVMe 디스크의 데이터가 유지됩니다. VM이 재배포, 할당 취소 또는 삭제되면 NVMe의 데이터가 유지되지 않습니다. 다른 문제로 인해 VM 또는 VM이 실행 중인 하드웨어가 비정상 상태가 되면 데이터가 유지되지 않습니다. 이 시나리오가 발생하면 이전 호스트의 모든 데이터가 안전하게 지워집니다.

계획된 유지 관리 작업 중과 같이 VM을 다른 호스트 머신으로 이동해야 하는 경우도 있습니다. Scheduled Events으로 계획된 유지 관리 작업과 일부 하드웨어 오류를 예상할 수 있습니다. Scheduled Events를 사용하여 예측된 유지 관리 및 복구 작업에 대한 업데이트를 유지합니다.

계획된 유지 관리 이벤트에 따라 빈 로컬 디스크가 있는 새 호스트에서 VM을 다시 만들어야 하는 경우 데이터를 다시 동기화해야 합니다(이 경우 다시 말하지만 이전 호스트의 모든 데이터기 안전하게 지워짐). 이 시나리오는 Lsv3, Lasv3 및 Lsv2 시리즈 VM이 현재 로컬 NVMe 디스크에서 라이브 마이그레이션을 지원하지 않기 때문에 발생합니다.

계획된 유지 관리에는 두 가지 모드가 있습니다.

표준 VM 고객 제어 유지 관리

  • 30일 동안 VM이 업데이트된 호스트로 이동됩니다.
  • Lsv3, Lasv3 및 Lsv2 로컬 스토리지 데이터가 손실될 수 있으므로 이벤트 전에 데이터를 백업하는 것이 좋습니다.

자동 유지 관리

  • 고객이 고객 제어 유지 관리를 실행하지 않거나 보안 제로 데이 이벤트와 같은 긴급 절차 때문에 수행됩니다.
  • 고객 데이터 유지가 목적이지만 VM 중지 또는 재부팅의 위험이 약간 있습니다.
  • Lsv3, Lasv3 및 Lsv2 로컬 스토리지 데이터가 손실될 수 있으므로 이벤트 전에 데이터를 백업하는 것이 좋습니다.

예정된 서비스 이벤트의 경우 제어된 유지 관리 프로세스를 사용하여 업데이트에 가장 편리한 시간을 선택합니다. 이벤트 전에 데이터를 프리미엄 스토리지에 백업합니다. 유지 관리 이벤트가 완료된 후 새로 고친 Lsv3, Lasv3 및 Lsv2 VM 로컬 NVMe 스토리지로 데이터를 반환할 수 있습니다.

다음과 같은 경우 로컬 NVMe 디스크에 데이터가 유지됩니다.

  • VM이 실행 중이고 정상 상태입니다.
  • VM이 사용자나 Azure에 의해 재부팅됩니다.
  • VM이 일시 중지됩니다(할당 취소 없이 중지됨).
  • 대부분의 계획된 유지 관리 서비스 작업

다음과 같은 경우 고객 보호를 위해 데이터가 안전하게 지워집니다.

  • VM이 사용자에 의해 재배포, 중지(할당 취소됨) 또는 삭제됩니다.
  • VM이 비정상 상태가 되고 하드웨어 문제로 인해 다른 노드로 서비스 치료가 필요합니다.
  • 서비스를 위해 VM을 다른 호스트에 재할당해야 하는 몇 가지 계획된 유지 관리 서비스 작업

자주 묻는 질문

이러한 시리즈에 대한 질문과 대답은 다음과 같습니다.

L 시리즈 VM 배포를 시작하려면 어떻게 할까요?

다른 VM과 마찬가지로 포털, Azure CLI 또는 PowerShell을 사용하여 VM을 만듭니다.

단일 NVMe 디스크 오류로 인해 호스트의 모든 VM이 실패하나요?

하드웨어 노드에서 디스크 오류가 감지되면 하드웨어가 실패 상태입니다. 이 문제가 발생하면 노드의 모든 VM이 자동으로 할당 취소되고 정상 노드로 이동됩니다. Lsv3, Lasv3 및 Lsv2 시리즈 VM의 경우 이 문제가 발생하면 실패한 노드의 고객 데이터도 안전하게 지워집니다. 고객은 새 노드에서 데이터를 다시 만들어야 합니다.

blk_mq 설정을 변경해야 하나요?

RHEL/CentOS 7.x는 NVMe 디바이스에 blk-mq를 자동으로 사용합니다. 구성 변경이나 설정은 필요하지 않습니다.

다음 단계

Azure의 스토리지 성능에 최적화된 모든 VM 사양을 참조하세요.