다음을 통해 공유


VMM 컴퓨팅 패브릭에서 가상 머신 설정 구성

이 문서에서는 System Center VMM(Virtual Machine Manager) 패브릭에서 VM에 대한 성능 및 가용성 설정을 구성하는 방법을 설명합니다.

설정에는 VM 속성 변경 및 QoS(스토리지 품질), 가용성 옵션, 리소스 제한 및 가상 NUMA와 같은 성능 옵션 설정이 포함됩니다.

VM에 가상 어댑터 추가

실행 중인 VM에서 vNIC(가상 네트워크 어댑터)를 추가하고 제거할 수 있습니다. 이렇게 하면 워크로드 가동 중지 시간이 줄어듭니다.

참고 항목

  • VMM 하드웨어 프로필을 만들거나 수정하여 새 가상 네트워크 어댑터를 추가합니다.
  • 이 기능은 2세대 VM에만 사용할 수 있습니다.
  • 기본적으로 추가된 가상 네트워크 어댑터는 가상 네트워크에 연결되지 않습니다. 호스트에 배포된 후 하나 이상의 가상 네트워크 어댑터를 사용하도록 하드웨어 프로필에 할당된 VM을 구성할 수 있습니다.
  1. 가상 머신 속성 >하드웨어 구성에서 네트워크 어댑터를 선택하고 추가할 네트워크 어댑터를 선택합니다.

  2. 다음을 포함하여 네트워크 어댑터에 대한 여러 속성을 구성할 수 있습니다.

    • 연결 대상: 어댑터가 연결된 대상을 선택합니다.
    • 연결되지 않음: 지금 네트워크를 지정하지 않으려면 선택합니다.
    • 내부 네트워크: 동일한 호스트의 VM 간 통신을 가능하게 하는 격리된 내부 네트워크에 연결하려면 선택합니다. 내부 가상 네트워크에 연결된 가상 머신은 호스트, 호스트 LAN 또는 인터넷의 다른 물리적 컴퓨터와 통신할 수 없습니다.
    • 외부 네트워크: 이 하드웨어 프로필을 사용하여 만든 가상 머신이 호스트의 실제 네트워크 어댑터에 연결되도록 지정하려면 선택합니다. 물리적 네트워크 어댑터에 연결된 가상 머신은 호스트가 인트라넷 및 인터넷을 통해 호스트 컴퓨터에서 액세스할 수 있는 모든 리소스와 통신할 수 있는 물리적 또는 가상 컴퓨터와 통신할 수 있습니다.
    • MAC(이더넷) 주소: 가상 머신의 가상 MAC 주소는 동일한 서브넷의 각 컴퓨터를 고유하게 식별합니다. 다음 옵션 중 하나를 선택합니다.
      • 동적: 가상 머신에 대해 동적 MAC 주소를 사용하도록 설정하려면 이 옵션을 선택합니다.
      • 정적: 가상 머신에 대한 정적 MAC 주소를 지정하려면 이 옵션을 선택합니다. 제공된 필드에 정적 MAC 주소를 입력합니다.
      • 트렁크 모드: 트렁크 모드를 사용하도록 설정하려면 선택합니다.

VMM 2019 UR3 이상은 VM vNIC에 대한 트렁크 모드를 지원합니다.

트렁크 모드 지원

참고 항목

트렁크 모드 는 VLAN 기반 독립 네트워크에서만 지원됩니다.

트렁크 모드는 가상 방화벽, 소프트웨어 부하 분산 장치 및 가상 게이트웨이와 같은 NFV/VNF 애플리케이션에서 여러 vLAN을 통해 트래픽을 보내고 받는 데 사용됩니다. 콘솔 및 PowerShell을 통해 트렁크 모드를 사용하도록 설정할 수 있습니다.

콘솔을 통해 트렁크 모드를 사용하도록 설정하는 방법은 다음 섹션을 참조하세요. PowerShell commandlet을 통해 사용하도록 설정에 대해서는 Set-SCVirtualNetworkAdapter 및 New-SCVirtualNetworkAdapter를 참조하세요.

트렁크 모드 구성

VMM에서 트렁크 모드를 구성하려면 다음 단계를 수행합니다.

  1. VM 속성에서 하드웨어 설정>네트워크 어댑터 구성으로 이동하고 트렁크 모드를 선택하여 VM vNIC에 트렁크 모드를 사용하도록 설정합니다.
  2. VM 네트워크 트래픽을 전달하려는 VM 네트워크(여러 vLAN)를 선택합니다. 트렁크 모드의 스크린샷.
  3. VM 네트워크 연결 워크플로의 일부로 선택된 VM 네트워크 도 네이티브 VLAN으로 만들어야 합니다. VM 네트워크 연결 워크플로의 일부로 선택된 VM 네트워크를 기반으로 하므로 나중에 네이티브 VLAN을 변경할 수 없습니다.

PowerShell을 사용하여 가상 어댑터 추가

PowerShell을 사용하여 가상 어댑터를 추가할 수 있습니다.

이 설정을 위한 샘플 cmdlet은 다음과 같습니다. 샘플 cmdlet을 보거나 복사하는 데 필요한 탭을 선택합니다.

vNIC를 추가하기 위한 샘플 cmdlet:

  • 첫 번째 명령은 VM01이라는 가상 머신 개체를 가져온 다음 개체를 $VM 변수에 저장합니다.
  • 두 번째 명령은 VM01에 가상 네트워크 어댑터를 만듭니다.
PS C:\> $VM = Get-SCVirtualMachine -Name "VM01"
PS C:\> New-SCVirtualNetworkAdapter -VM $VM -Synthetic

실행 중인 VM에서 정적 메모리 관리

정적 메모리를 사용하는 실행 중인 VM의 메모리 구성을 수정할 수 있습니다. 이 기능은 재구성으로 인한 워크로드 가동 중지 시간을 제거하는 데 도움이 됩니다. 메모리 할당을 늘리거나 줄이거나 가상 머신을 동적 메모리로 전환할 수 있습니다. 사용자는 이미 VMM에서 실행 중인 VM에 대한 동적 메모리를 수정할 수 있으며, 이 기능은 정적 메모리를 수정하는 것입니다.

다음 PowerShell 예제를 사용하여 정적 메모리 설정을 수정합니다.

예 1

실행 중인 가상 머신의 정적 메모리를 변경합니다.

  • 첫 번째 명령은 VM01이라는 가상 머신 개체를 가져온 다음 개체를 $VM 변수에 저장합니다.
  • 두 번째 명령은 VM01에 할당된 메모리를 1024MB로 변경합니다.
PS C:\> $VM = Get-SCVirtualMachine -Name "VM01"
PS C:\> Set-SCVirtualMachine -VM $VM -MemoryMB 1024

예제 2

실행 중인 가상 머신에 동적 메모리를 사용하도록 설정합니다.

  • 첫 번째 명령은 VM02라는 가상 머신 개체를 가져온 다음 개체를 $VM 변수에 저장합니다.
  • 두 번째 명령은 동적 메모리를 사용하도록 설정하고 시작 메모리를 1024MB로 설정하고 최대 메모리를 2048MB로 설정합니다.
PS C:\> $VM = Get-SCVirtualMachine -Name "VM02"
PS C:\> Set-SCVirtualMachine -VM $VM -DynamicMemoryEnabled $True -MemoryMB 1024 -DynamicMemoryMaximumMB 2048

VM에 서비스 창 추가

VMM 콘솔 외부에서 유지 관리할 수 있도록 VM 또는 서비스에 대한 서비스 창을 설정할 수 있습니다. 창을 설정하고 VM 속성에 할당합니다.

VM에 대한 프로덕션 검사점 만들기

프로덕션 검사점을 사용하면 VM의 특정 시점 이미지를 쉽게 만들 수 있으며 나중에 복원할 수 있습니다.

  • 프로덕션 검사점은 저장된 상태 기술을 사용하는 대신 게스트 내의 백업 기술을 사용하여 검사점을 만듭니다.

  • Windows 운영 체제를 실행하는 가상 머신에서 프로덕션 검사점은 VSS(볼륨 스냅샷 서비스)를 사용하여 생성됩니다.

  • Linux 가상 머신은 파일 시스템 버퍼를 플러시하여 파일 시스템 일관성 검사점을 만듭니다.

  • 저장된 상태 기술을 사용하여 검사점을 만들려는 경우에도 가상 머신에 표준 검사점을 사용하도록 선택할 수 있습니다.

  • VM에 대해 다음 검사점 설정 중 하나를 설정할 수 있습니다.

    • 사용 안 함: 검사점을 사용하지 않습니다.
    • 프로덕션: 프로덕션 검사점은 가상 머신의 애플리케이션 일치 스냅샷입니다. Hyper-V는 게스트 VSS 공급자를 사용하여 모든 애플리케이션이 일관된 상태인 가상 머신의 이미지를 만듭니다. 프로덕션 스냅샷은 만드는 동안 자동 복구 단계를 지원하지 않습니다. 프로덕션 검사점을 적용하려면 복원된 백업과 마찬가지로 복원된 가상 머신이 오프라인 상태에서 부팅되어야 합니다. 이는 항상 프로덕션 환경에 더 적합합니다.
    • ProductionOnly: 이 옵션은 프로덕션과 같으며 한 가지 주요 차이점이 있습니다. ProductionOnly를 사용하면 프로덕션 검사점이 실패하면 검사점이 수행되지 않습니다. 프로덕션 검사점이 실패하는 경우 표준 검사점을 대신 사용하는 프로덕션과 다릅니다.
    • 표준: 실행 중인 애플리케이션의 모든 메모리 상태가 저장되므로 검사점을 적용하면 애플리케이션이 이전 상태로 되돌아갑니다. 많은 애플리케이션의 경우 프로덕션 환경에 적합하지 않습니다. 따라서 이러한 유형의 검사점은 일반적으로 일부 애플리케이션의 개발 및 테스트 환경에 더 적합합니다.

다음 PowerShell 명령을 사용하여 검사점을 설정합니다. Set-SCVirtualMachine CheckpointType (Disabled, Production, ProductionOnly, Standard)

클러스터형 VM에 대한 가용성 옵션 구성

클러스터의 가상 머신에 대한 고가용성 및 복원력에 도움이 되는 여러 설정을 구성할 수 있습니다.

  • 스토리지 QoS: 대역폭을 제어하도록 QoS(서비스 품질) 설정을 사용하여 Hyper-V VM 하드 디스크를 구성할 수 있습니다. Hyper-V 관리자를 사용하여 이 작업을 수행합니다.
  • 가상 머신 우선 순위: 호스트 클러스터에 배포된 VM에 대한 우선 순위 설정을 구성할 수 있습니다. VM 우선 순위에 따라 호스트 클러스터는 우선 순위가 높은 가상 머신을 시작하거나 우선 순위가 낮은 가상 머신 앞에 배치합니다. 이렇게 하면 더 나은 성능을 위해 우선 순위가 높은 가상 머신에 메모리 및 기타 리소스가 먼저 할당됩니다. 또한 노드 오류가 발생한 후 우선 순위가 높은 가상 머신에 필요한 메모리 및 기타 리소스가 없는 경우 우선 순위가 높은 가상 머신에 대한 리소스를 확보하기 위해 우선 순위가 낮은 가상 머신이 오프라인으로 전환됩니다. 중단된 가상 컴퓨터는 우선 순위 순서에 따라 나중에 다시 시작됩니다.
  • 가상 컴퓨터의 기본 소유자와 가능한 소유자: 이러한 설정은 호스트 클러스터의 노드에 가상 컴퓨터가 배치되는 데 영향을 줍니다. 기본적으로 기본 설정 소유자는 없으며(기본 설정 없음), 가능한 소유자는 클러스터의 모든 서버 노드를 포함합니다.
  • 가용성 집합: 가용성 집합에 여러 가상 머신을 배치하는 경우 VMM은 해당 가상 머신을 별도의 호스트에 유지하고 가능하면 동일한 호스트에 함께 배치하지 않도록 합니다. 이로 인해 서비스 연속성이 향상됩니다.

QoS, 우선 순위, 기본 설정 소유자 또는 가용성 집합을 구성하는 단계에 필요한 탭을 선택합니다.

다음 단계에 따라 VM에 대한 QoS를 구성합니다.

  1. Hyper-V 관리자를 열고 작업>설정을 선택합니다.
  2. SCSI 컨트롤러에서 하드 드라이브를 선택합니다.
  3. 고급 기능에서 서비스 품질 관리 사용을 선택합니다.
  4. 최소 및 최대 IOPS 값을 지정합니다.

리소스 제한 구성

VMM에는 리소스 할당을 제어하고 가상 머신이 보다 효과적으로 실행될 수 있도록 프로세서(CPU) 및 메모리 제한과 같은 리소스 제한 기능이 포함되어 있습니다.

  • 프로세서 제한: 가상 프로세서의 가중치를 설정하여 프로세서에 더 크거나 작은 CPU 주기 공유를 제공할 수 있습니다. 이 속성은 CPU 리소스가 과도하게 커밋될 때 VM의 우선 순위를 지정하거나 우선 순위를 해제할 수 있도록 합니다. 작업량이 높은 워크로드의 경우, 특히 물리적 CPU가 상한값에 도달한 경우 더 많은 가상 프로세서를 추가할 수 있습니다.

    • 높음, 보통, 낮음, 사용자 지정: 경합이 발생할 때 CPU가 분산되는 방법을 지정합니다. 높은 우선 순위의 가상 컴퓨터가 먼저 CPU를 할당받습니다.
    • CPU 주기 예약(%): 가상 머신용으로 예약해야 하는 하나의 논리 프로세서와 연결된 CPU 리소스의 비율을 지정합니다. 이는 특히 CPU 사용량이 많은 애플리케이션을 가상 머신에서 실행하는 경우, 최소 수준의 CPU 리소스만 사용하려 할 때 유용합니다. 0으로 설정하면 가상 머신에 대해 특정 비율의 CPU가 예약되지 않았음을 나타냅니다.
    • CPU 주기 제한(%): 가상 머신이 지정된 논리 프로세서 비율보다 더 많이 사용하지 않도록 지정합니다.
  • 메모리 제한 및 가중치: 메모리 제한은 메모리 리소스가 제한된 시나리오에서 메모리 리소스에 대한 액세스의 우선 순위를 지정하거나 우선 순위를 해제하는 데 도움이 됩니다. 호스트의 메모리 사용량이 높은 경우 메모리 우선 순위가 높은 가상 머신은 우선 순위가 낮은 가상 머신보다 메모리 리소스가 할당됩니다. 낮은 우선 순위를 지정하면 다른 가상 머신이 실행 중일 때 가상 머신이 시작되지 않을 수 있으며 사용 가능한 메모리가 부족할 수 있습니다. 다음과 같이 메모리 우선 순위 설정 및 임계값을 설정할 수 있습니다.

    • 정적: 특정 가상 머신에 할당된 정적 메모리의 양입니다.
    • 동적: 동적 메모리 설정은 다음과 같습니다.
      • 시작 메모리: 시작할 때 가상 머신에 할당되는 메모리 양입니다. 가상 머신에서 운영 체제 및 애플리케이션을 실행하는 데 필요한 최소 메모리 양으로 설정해야 합니다. 동적 메모리는 필요한 메모리 양에 따라 조정됩니다.
      • 최소 메모리: 가상 머신에 필요한 최소 메모리 양입니다. 유휴 머신이 시작 메모리 요구 사항보다 낮은 메모리 사용량을 축소할 수 있습니다. 그러면 해당 메모리를 다른 가상 컴퓨터에서 사용할 수 있습니다.
      • 최대 메모리: 가상 머신에 할당된 메모리 제한입니다. 기본값은 1TB입니다.
      • 메모리 버퍼 비율: 동적 메모리는 필요에 따라 가상 머신에 메모리를 추가하지만 애플리케이션이 동적 메모리가 할당하는 것보다 더 빨리 메모리를 요구할 수 있습니다. 메모리 버퍼율은 필요한 경우 가상 머신에 할당할 수 있는 메모리 양을 지정합니다. 백분율은 가상 머신에서 실행되는 애플리케이션 및 서비스에 필요한 메모리 양을 기반으로 합니다. 가상 머신 요구 사항에 따라 변경되므로 백분율로 표시됩니다. 백분율은 다음과 같이 계산됩니다. 메모리 버퍼 양 = 가상 머신에 필요한 메모리/(메모리 버퍼 값/100). 예를 들어 가상 머신에 필요한 메모리가 1000MB이고 버퍼가 20%인 경우 20%의 추가 버퍼(200MB)가 할당되어 총 1200MB의 물리적 메모리가 가상 머신에 할당됩니다.
    • 메모리 가중치: 메모리 리소스가 완전히 사용 중일 때 가상 머신에 할당되는 우선 순위입니다. 높은 우선 순위 값을 설정하는 경우 메모리 리소스가 할당될 때 해당 가상 머신이 가장 먼저 리소스를 할당받습니다. 낮은 우선 순위를 설정하는 경우 메모리 리소스가 부족하여 가상 머신이 시작하지 못할 수 있습니다.

프로세서 또는 메모리 제한을 구성하는 단계에 필요한 탭을 선택합니다.

프로세서 제한을 구성하려면 다음 단계를 수행합니다.

  1. 고급 가상 머신 >속성>에서 CPU 우선 순위를 선택합니다.

  2. 가상 머신의 우선 순위 값을 선택합니다. 이러한 값은 가상 머신 간에 CPU 리소스의 균형을 맞추고 Hyper-V의 상대 가중치 값에 해당하는 방법을 지정합니다.

    • 높음 - 200의 상대 가중치 값
    • 보통 - 100의 상대 가중치 값
    • 낮음 - 50의 상대 가중치 값
    • 사용자 지정 - 지원되는 상대 가중치 값은 1에서 10000 사이입니다.
  3. 예약 CPU 주기(%)에서 가상 머신용으로 예약해야 하는 하나의 논리 프로세서에서 CPU 리소스의 백분율을 지정합니다. 이는 특히 CPU 사용량이 많은 애플리케이션을 가상 머신에서 실행하는 경우, 최소 수준의 CPU 리소스만 사용하려 할 때 유용합니다. 0으로 설정하면 특정 비율의 CPU가 예약되지 않았음을 나타냅니다.

  4. CPU 주기 제한(%)에서 가상 머신에서 사용해야 하는 하나의 논리 프로세서에서 CPU 리소스의 최대 비율을 지정합니다. 가상 머신은 이 백분율보다 더 많이 할당되지 않습니다.

가상 NUMA 구성

VMM에서 가상 NUMA(Non-Uniform Memory Access)를 구성, 배포 및 관리합니다. 가상 NUMA에는 다음과 같은 속성이 있습니다.

  • NUMA는 다중 프로세서 시스템에 사용되는 메모리 아키텍처입니다. 여기서 프로세서가 메모리에 액세스하는 데 필요한 시간은 프로세서를 기준으로 메모리 위치에 따라 달라집니다. NUMA 시스템에서 프로세서는 로컬 메모리(프로세서에 직접 연결된 메모리)가 비로컬 메모리(다른 프로세서에 연결된 메모리)보다 빠르게 액세스할 수 있습니다. NUMA는 프로세서 속도와 사용하는 메모리 사이의 간격을 좁히려고 시도합니다. 이를 위해 NUMA는 프로세서별로 별도의 메모리를 제공합니다. 따라서 여러 프로세서가 동일한 메모리에 액세스하려고 할 때 발생하는 성능 저하를 방지할 수 있습니다. 전용 메모리의 각 블록을 NUMA 노드라고 합니다.
  • 가상 NUMA를 사용하면 실제 NUMA 하드웨어를 사용하여 가상화되지 않은 컴퓨터를 실행하는 것과 비교할 때 가상화된 환경에서 상당한 성능 저하 없이 실행할 수 있는 더 크고 중요 업무용 워크로드를 배포할 수 있습니다. 새 가상 머신을 만들 때 Hyper-V는 기본적으로 Hyper-V 호스트 NUMA 토폴로지와 동기화된 게스트 설정에 대한 값을 사용합니다. 예를 들어 호스트에 실제 프로세서 소켓당 2개의 NUMA 노드가 있는 두 NUMA 노드 간에 16개의 코어와 64GB가 균등하게 분할된 경우 16개의 가상 프로세서가 있는 호스트에서 만든 가상 머신은 노드당 최대 프로세서 수를 8로 설정하고 소켓당 최대 노드를 2로 설정합니다. 노드당 최대 메모리를 32GB로 설정합니다.
  • NUMA 스패닝을 사용하거나 사용하지 않도록 설정할 수 있습니다. 스패닝을 사용하도록 설정하면 개별 가상 NUMA 노드가 비로컬 메모리를 할당할 수 있으며, 관리자는 Hyper-V 호스트의 기본 하드웨어 NUMA 노드에서 사용할 수 있는 프로세서 수보다 가상 NUMA 노드당 가상 프로세서가 더 많은 가상 머신을 배포할 수 있습니다. 가상 머신이 비로컬 NUMA 노드의 메모리에 액세스하기 때문에 가상 머신에 대한 NUMA 스패닝에는 성능 비용이 발생합니다.

다음과 같이 VM에 대한 가상 NUMA를 설정합니다.

  1. 가상 머신 >속성>고급에서 가상 NUMA를 선택합니다.
  2. 가상 NUMA 노드당 최대 프로세서에서 동일한 가상 머신에 속하여 가상 NUMA 노드에 동시에 사용될 수 있는 가상 프로세서의 최대 수를 지정합니다. 최대 대역폭을 보장하도록 이 설정을 구성합니다. 다른 NUMA 가상 머신은 서로 다른 NUMA 노드를 사용합니다. 최소 한도는 1이고 최대값은 32입니다.
  3. 가상 NUMA 노드당 최대 메모리(MB)에서 단일 가상 NUMA 노드에 할당될 수 있는 최대 메모리 양을 지정합니다. 최소 한도는 8MB이고 최대값은 256GB입니다.
  4. 소켓당 최대 가상 NUMA 노드 수에서 단일 소켓에 허용되는 최대 가상 NUMA 노드 수를 지정합니다. 최소 수는 1이고 최대값은 64입니다.
  5. 스패닝을 사용하도록 설정하려면 가상 머신이 하드웨어 NUMA 노드에 걸쳐 있도록 허용을 선택합니다.