Azure Stack HCI의 동적 프로세서 호환성 모드

적용 대상: Azure Stack HCI, 버전 21H2

클러스터형 환경에서 새로운 프로세서 기능을 활용하도록 Azure Stack HCI의 동적 프로세서 호환성 모드가 업데이트되었습니다. 프로세서 호환성은 클러스터의 각 개별 노드에 대해 지원되는 프로세서 기능을 결정하고 모든 프로세서에서 공통 분모를 계산하여 작동합니다. VM(가상 머신)은 클러스터의 모든 서버에서 사용할 수 있는 최대 기능 수를 사용하도록 구성됩니다. 이렇게 하면 최소의 고정된 프로세서 기능 집합으로 기본 설정된 이전 버전의 프로세서 호환성에 비해 성능이 향상됩니다.

참고

동적 프로세서 호환성 모드는 Azure Stack HCI 버전 21H2에서만 사용할 수 있으며 버전 20H2로 백포트되지 않습니다. Windows Server의 프로세서 호환성 모드에 대한 자세한 내용은 Hyper-V의 프로세서 호환 모드를 참조하세요.

프로세서 호환성 모드를 사용하는 경우

프로세서 호환 모드를 사용하면 라이브 VM(실시간 마이그레이션)을 이동하거나 다른 프로세스 기능 집합이 있는 노드 간에 저장된 VM을 이동할 수 있습니다. 그러나 프로세서 호환성을 사용하도록 설정한 경우에도 다른 프로세서 제조업체가 있는 호스트 간에 VM을 이동할 수 없습니다. 예를 들어 실행 중인 VM 또는 저장된 상태 VM을 Intel 프로세서가 있는 호스트에서 AMD 프로세서가 있는 호스트로 이동할 수 없습니다. 이런 방식으로 VM을 이동해야 하는 경우 먼저 VM을 종료한 다음 새 호스트에서 다시 시작합니다.

중요

최신 구성 버전(10.0)이 있는 Hyper-V VM만 동적 구성의 이점을 누릴 수 있습니다. 이전 버전이 있는 VM은 동적 구성의 이점을 얻을 수 없으며 이전 버전의 고정 프로세서 기능을 계속 사용합니다.

Azure Stack HCI에서 실행되는 VM에 프로세서 호환성 모드를 사용하도록 설정하는 것이 좋습니다. 이렇게 하면 최고 수준의 기능이 제공되고 새 하드웨어로 마이그레이션할 때 VM을 이동하는 데 가동 중지 시간이 필요하지 않습니다.

참고

VM을 중지하고 다시 시작하려는 경우 프로세서 호환성 모드를 사용할 필요가 없습니다. VM이 다시 시작될 때마다 게스트 운영 체제는 새 호스트 컴퓨터에서 사용할 수 있는 프로세서 호환성을 열거합니다.

프로세서 호환성 모드가 필요한 이유

프로세서 제조업체는 프로세서에 최적화 및 기능을 도입하는 경우가 많습니다. 이러한 기능은 특정 작업에 특수 하드웨어를 사용하여 성능이나 보안을 향상시키는 경우가 많습니다. 예를 들어 많은 미디어 애플리케이션은 프로세서 기능을 사용하여 벡터 계산 속도를 향상합니다. 이러한 기능은 애플리케이션을 실행하는 데 거의 필요하지 않습니다. 단순히 성능을 향상시킵니다.

프로세서에서 사용할 수 있는 기능 집합은 제조, 모델 및 연령에 따라 달라집니다. 운영 체제 및 애플리케이션 소프트웨어는 일반적으로 처음 시작될 때 시스템의 프로세서 기능 집합을 열거합니다. 소프트웨어는 사용 가능한 프로세서 기능이 수명 동안 변경될 것으로 기대하지 않으며, 프로세서를 업그레이드하지 않는 한 프로세서 기능이 정적이므로 물리적 컴퓨터에서 실행할 때 이런 일이 발생하지 않을 수 있습니다.

그러나 VM 모바일 기능을 사용하면 실행 중인 VM을 새 가상화 호스트로 마이그레이션할 수 있습니다. VM의 소프트웨어가 특정 프로세서 기능을 검색하여 사용하기 시작했고 VM이 해당 기능이 부족한 새 가상화 호스트로 이동되면 소프트웨어가 실패할 가능성이 높습니다. 이로 인해 애플리케이션 또는 VM이 충돌할 수 있습니다.

오류를 방지하기 위해 Hyper-V는 VM 실시간 마이그레이션 또는 저장/복원 작업이 시작될 때마다 "비행 전" 검사를 수행합니다. 이러한 검사는 원본 호스트의 VM에서 사용할 수 있는 프로세서 기능 집합과 대상 호스트에서 사용할 수 있는 기능 집합을 비교합니다. 이러한 기능 집합이 일치하지 않으면 마이그레이션 또는 복원 작업이 취소됩니다.

프로세서 호환 모드의 새로운 기능

이전에는 모든 새 프로세서 명령 집합이 숨겨졌는데, 이는 게스트 운영 체제 및 애플리케이션 소프트웨어가 애플리케이션 및 VM의 성능을 유지하는 데 도움이 되도록 새로운 프로세서 명령 집합 개선 사항을 활용할 수 없음을 의미합니다.

이러한 제한을 극복하기 위해 SLAT(두 번째 수준 주소 변환)를 수행할 수 있는 프로세서에서 향상된 동적 기능을 제공하도록 프로세서 호환성 모드가 업데이트되었습니다. 이 새로운 기능은 클러스터의 노드에서 지원하는 CPU 기능의 공통 분모를 계산하고 이전 하드 코딩된 기능 집합 대신 동적으로 계산된 기능 집합을 사용하도록 VM의 기존 프로세서 호환성 모드를 업데이트합니다.

Azure Stack HCI 환경에서 새 프로세서 호환성 모드를 사용하면 클러스터의 모든 서버에서 공통 기능 집합을 제공하여 가상화 호스트의 VM에서 사용할 수 있는 프로세서 기능 집합이 일치하도록 합니다. 각 VM은 클러스터의 모든 서버에 있는 최대 프로세서 명령 집합 수를 받습니다. 이 프로세스는 자동으로 발생하며 항상 클러스터에서 활성화되고 복제되므로 프로세스를 사용하거나 사용하지 않도록 설정하는 명령은 없습니다.

클러스터 간에 실행 중인 VM 마이그레이션

각 클러스터의 모든 서버가 Azure Stack HCI에 대한 요구 사항인 동일한 하드웨어를 실행한다고 가정하면 클러스터 간에 실행 중인 VM을 실시간 마이그레이션할 수 있습니다. 세 가지 일반적인 시나리오가 있습니다.

  • 새 프로세서가 있는 클러스터에서 동일한 프로세서가 있는 클러스터로 VM을 실시간 마이그레이션합니다. VM 기능은 대상 클러스터로 전송됩니다. 이 시나리오에서는 프로세서 호환성 모드를 사용하도록 설정할 필요가 없습니다. 그러나 활성화된 상태로 두면 문제가 발생하지 않습니다.

  • 이전 프로세서가 있는 클러스터에서 최신 프로세서가 있는 클러스터로 VM을 실시간 마이그레이션합니다. VM 기능은 대상 클러스터로 전송됩니다. 이 시나리오에서 VM이 다시 시작되면 대상 클러스터의 최신 계산 기능을 받게 됩니다.

  • 최신 프로세서가 있는 클러스터에서 이전 프로세서가 있는 클러스터로 VM을 실시간 마이그레이션합니다. PowerShell의 매개 변수에 CompatibilityForMigrationMode 사용할 MinimumFeatureSet VM 프로세서를 설정하거나 가상 머신 >>설정 프로세서에서 Windows Admin Center 동일한 CPU 제조업체가 있는 다른 호스트에서 호환을 선택해야 합니다. 그러면 서버에서 제공되는 최소 프로세서 기능에 VM이 할당됩니다. 호환성이 클러스터 간 호환성으로 이동되고(권장) VM이 다시 시작되면 대상 클러스터의 최신 계산 기능을 받게 됩니다.

프로세서 호환성 모드를 사용하도록 VM 구성

이 섹션에서는 Windows Admin Center 또는 PowerShell을 사용하여 프로세서 호환성 모드를 사용하도록 VM을 구성하는 방법을 설명합니다. 동일한 클러스터에서 호환성 모드를 사용 또는 사용하지 않고 VM을 실행할 수 있습니다.

중요

프로세서 호환 모드를 사용하거나 사용하지 않도록 설정하려면 먼저 VM을 종료해야 합니다.

Windows Admin Center 사용하여 프로세서 호환 모드 사용

Windows Admin Center 사용하여 프로세서 호환성 모드를 사용하도록 설정하려면 다음을 수행합니다.

  1. 클러스터에 커넥트 도구 창에서가상 머신을 선택합니다.

  2. 인벤토리에서 프로세서 호환 모드를 사용하도록 설정할 VM을 선택하고 전원 메뉴를 확장한 다음 종료를 선택합니다.

  3. 설정 선택한 다음 프로세서를 선택하고 프로세서 호환성 확인란을 선택합니다.

    Check the box to enable processor compatibility

  4. VM의 CPU 기능을 클러스터의 모든 서버에서 지원하는 최대 수준으로 설정하려면 클러스터 전체에서 호환을 선택합니다(권장). 이렇게 하면 실행 중인 VM을 클러스터의 다른 서버로 이동하는 기능을 유지하면서 VM 성능을 최대화합니다. Azure Stack HCI 21H2 클러스터에서 실행되는 모든 VM에 대해 사용하도록 설정하는 것이 좋습니다. 사용하지 않도록 설정되면 VM을 다시 시작하여 지원되는 다른 수준의 CPU 명령이 있는 호스트로 이동해야 합니다( 여러 세대의 CPU에서 공통).

    또는 VM의 CPU 기능을 최소한으로 설정하여 실행 중인 VM을 동일한 CPU 제조업체가 있는 한 클러스터 외부의 다른 Hyper-V 호스트로 이동할 수 있도록 하려면 동일한 CPU 제조업체가 있는 다른 호스트에서 호환성을 선택합니다.

    참고

    동적 프로세서 호환 모드와 마찬가지로 클러스터 간 호환 은 Azure Stack HCI 21H2에만 적용되며 다른 운영 체제에서는 지원되지 않습니다.

  5. 프로세서 설정 저장을 선택하고 VM을 다시 시작합니다.

PowerShell을 사용하여 프로세서 호환성 모드 사용

프로세서 호환성 모드를 사용하도록 설정하려면 다음 cmdlet을 실행합니다.

get-vm -name <name of VM> -ComputerName <target cluster or host> | Set-VMProcessor -CompatibilityForMigrationEnabled $true 

VM의 CPU 기능을 클러스터의 모든 서버에서 지원하는 최대 수준으로 설정하는 것이 좋습니다. 이렇게 하면 실행 중인 VM을 클러스터의 다른 서버로 이동하는 기능을 유지하면서 VM 성능을 최대화합니다.

VM에서 클러스터 노드 일반 기능을 사용하도록 설정하려면 다음 cmdlet을 실행합니다.

get-vm -name <name of VM> -ComputerName <target cluster or host> | Set-VMProcessor -CompatibilityForMigrationEnabled $true -CompatibilityForMigrationMode CommonClusterFeatureSet

또는 VM의 CPU 기능을 최소한으로 설정하여 실행 중인 VM을 동일한 CPU 제조업체가 있는 경우 클러스터 외부의 다른 Hyper-V 호스트로 이동할 수 있도록 할 수 있습니다.

VM이 기본 최소 기능을 사용하여 클러스터 간에 마이그레이션할 수 있도록 하려면 다음 cmdlet을 실행합니다.

get-vm -name <name of VM> -ComputerName <target cluster or host> | Set-VMProcessor -CompatibilityForMigrationEnabled $true -CompatibilityForMigrationMode MinimumFeatureSet

다음 단계

자세한 내용은 다음 항목을 참조하십시오.