vMotion을 사용하여 가상 시스템을 마이그레이션하려면 가상 시스템이 특정 네트워크, 디스크, CPU, USB 및 기타 디바이스 요구 사항을 충족해야 합니다.
vSphere vMotion을 사용할 때 다음과 같은 가상 시스템 조건 및 제한 사항이 적용됩니다.
- 소스 및 대상 관리 네트워크 IP 주소 패밀리가 일치해야 합니다. vCenter Server에 IPv4 주소로 등록된 호스트에서 IPv6 주소로 등록된 호스트로 가상 시스템을 마이그레이션할 수는 없습니다.
- 대형 vGPU 프로파일이 포함된 가상 시스템을 마이그레이션하는 경우 vSphere vMotion 네트워크에 1GbE 네트워크 어댑터를 사용하면 마이그레이션이 실패할 수 있습니다. vSphere vMotion 네트워크에 10GbE 네트워크 어댑터를 사용하십시오.
- 가상 CPU 성능 카운터를 사용하도록 설정한 경우 호환되는 CPU 성능 카운터가 있는 호스트로만 가상 시스템을 마이그레이션할 수 있습니다.
- 3D 그래픽이 사용하도록 설정된 가상 시스템을 마이그레이션할 수 있습니다. 3D 렌더러가 '자동'으로 설정되어 있으면 가상 시스템이 대상 호스트에 있는 그래픽 렌더러를 사용합니다. 이 렌더러는 호스트 CPU 또는 GPU 그래픽 카드일 수 있습니다. 하드웨어에 설정된 3D 렌더러가 있는 가상 시스템을 마이그레이션하려면 대상 호스트에 GPU 그래픽 카드가 있어야 합니다.
- vSphere 6.7 업데이트 1 이상부터 vSphere vMotion에서 vGPU를 사용하는 가상 시스템을 지원합니다.
- vSphere DRS는 로드 밸런싱 지원 없이 vSphere 6.7 업데이트 1 이상을 실행하는 vGPU 가상 시스템의 초기 배치를 지원합니다.
- 호스트의 물리적 USB 디바이스에 연결된 USB 디바이스를 사용하여 가상 시스템을 마이그레이션할 수 있습니다. vSphere vMotion에 대해 디바이스를 사용하도록 설정해야 합니다.
- 대상 호스트에서 액세스할 수 없는 디바이스에서 지원되는 가상 디바이스를 사용하는 가상 시스템을 마이그레이션하는 경우 vSphere vMotion을 사용한 마이그레이션을 사용할 수 없습니다. 예를 들어 소스 호스트의 물리적 CD 드라이브로 연결된 CD 드라이브가 있는 가상 시스템은 마이그레이션할 수 없습니다. 가상 시스템을 마이그레이션하기 전에 이러한 디바이스의 연결은 해제해야 합니다.
- 클라이언트 컴퓨터에 있는 디바이스에서 지원되는 가상 디바이스를 사용하는 가상 시스템을 마이그레이션하는 경우 vSphere vMotion을 사용한 마이그레이션을 사용할 수 없습니다. 가상 시스템을 마이그레이션하기 전에 이러한 디바이스의 연결은 해제해야 합니다.
vSphere vMotion 사용하여 vGPU 가상 시스템 마이그레이션
vMotion을 사용하여 데이터 손실 없이 NVIDIA vGPU 기반 가상 시스템의 라이브 마이그레이션을 수행할 수 있습니다.
vGPU 가상 시스템에 대해 vMotion을 사용하도록 설정하려면 vgpu.hotmigrate.enabled
고급 설정을 true
로 설정해야 합니다. vCenter Server 고급 설정을 구성하는 방법에 대한 자세한 내용은 "vCenter Server 구성" 설명서에서 "고급 설정 구성" 을 참조하십시오.
vSphere 6.7 업데이트 1 및 vSphere 6.7 업데이트 2에서 vMotion을 사용하여 vGPU 가상 시스템을 마이그레이션하고 vMotion 스턴 시간이 100초를 초과하면 프레임 버퍼 크기가 24 GB 이상인 vGPU 프로파일에 대해 마이그레이션 프로세스가 실패할 수 있습니다. vMotion 시간 초과를 방지하려면 vSphere 6.7 업데이트 3 이상으로 업그레이드하십시오.
스턴 시간 동안은 VM, 데스크톱 또는 애플리케이션에 액세스할 수 없습니다. 마이그레이션이 완료되면 VM에 대한 액세스가 재개되고 모든 애플리케이션은 이전 상태에서 계속됩니다. vGPU 프로파일의 프레임 버퍼 크기에 대한 자세한 내용은 NVIDIA 가상 GPU 설명서를 참조하십시오.
예상 VM 스턴 시간(vMotion 중 사용자가 VM에 액세스할 수 없는 시간) 및 예상되는 최악의 경우 스턴 시간은 다음 표에 나와 있습니다. 예상 스턴 시간은 NVIDIA Tesla V100 PCIe 32GB GPU를 사용하여 10Gb 네트워크에서 테스트되었습니다.
사용된 vGPU 프레임 버퍼(GB) | VM 스턴 시간(초) |
---|---|
1 | 2 |
2 | 4 |
4 | 6 |
8 | 12 |
16 | 22 |
32 | 39 |
vGPU 메모리 | VM 메모리 4GB | VM 메모리 8GB | VM 메모리 16GB | VM 메모리 32GB | |
---|---|---|---|---|---|
1GB | 5 | 6 | 8 | 12 | |
2GB | 7 | 9 | 11 | 15 | |
4GB | 13 | 14 | 16 | 21 | |
8GB | 24 | 25 | 28 | 32 | |
16GB | 47 | 48 | 50 | 54 | |
32GB | 91 | 92 | 95 | 99 |
- 구성된 vGPU 프로파일은 사용된 vGPU 프레임 버퍼에 대한 상한을 나타냅니다. 많은 사용 사례에서 주어진 시간에 VM이 사용하는 vGPU 프레임 버퍼 메모리의 양은 프로파일에서 할당된 vGPU 메모리보다 적습니다.
- 예상 스턴 시간과 예상되는 최악의 경우 스턴 시간은 단일 가상 시스템을 마이그레이션할 때만 유효합니다. 여러 가상 시스템을 동시에 마이그레이션하는 경우, 즉 vSphere 수동 업데이트 적용 프로세스의 경우 스턴 시간이 악영향을 미칠 수 있습니다.
- 위의 예상값은 CPU, 메모리, PCIe 및 네트워크 용량이 10Gbps 마이그레이션 처리량을 달성하기에 충분한 것으로 가정합니다.
DRS는 로드 밸런싱 지원 없이 vSphere 6.7 업데이트 1 이상을 실행하는 vGPU VM의 초기 배치를 지원합니다.
VMware vSphere vMotion은 NVIDIA에서 정의 및 지원되는 것과 호환되는 NVIDIA GPU 디바이스 모델과 NVIDIA GRID 호스트 드라이버 버전과 이 사이에만 지원됩니다. 호환성 정보는 NVIDIA 가상 GPU 사용자 가이드를 참조하십시오.
NVIDIA vGPU 호스트 드라이버, vSphere 및 Horizon 간의 호환성을 확인하려면 VMware 호환성 매트릭스를 참조하십시오.
vGPU 가상 시스템에 대한 스턴 시간 제한을 설정하는 방법
vSphere vMotion 사용하여 NVIDIA vGPU 기반 가상 시스템을 마이그레이션할 때 가상 시스템당 스턴 시간 제한을 설정하는 방법을 알아봅니다. 스턴 시간 제한을 설정하면 vCenter Server가 가상 시스템의 전원을 켜지 못하게 하거나 예상 최대 스턴 시간이 스턴 시간 제한을 초과하는 호스트 및 네트워크로 마이그레이션하지 못하게 할 수 있습니다.
설정한 제한은 현재 디바이스 구성에 대한 예상 최대 스턴 시간보다 높아야 합니다. 여러 PCI 디바이스의 경우 설정한 스턴 시간 제한이 모든 PCI 디바이스의 기여도 합계보다 높아야 합니다. 예상 최대 스턴 시간보다 낮은 스턴 시간 제한을 설정하면 가상 시스템의 전원을 켜지 못할 수 있습니다.
최대 스턴 시간은 VM이 현재 실행되는 호스트의 대역폭을 기준으로 계산됩니다. 대상 호스트의 대역폭이 더 낮은 경우 마이그레이션 시 계산이 변경될 수 있습니다. 예를 들어 가상 시스템이 25Gbps vMotion NIC가 있는 호스트에서 실행 중이지만 대상 호스트에 10Gbps vMotion NIC가 있는 경우 마이그레이션 시 최대 스턴 시간 계산은 10Gbps vMotion NIC를 기반으로 합니다.
사전 요구 사항
- vCenter Server 인스턴스가 버전 8.0 업데이트 2인지 확인합니다.
- 소스 및 대상 ESXi 호스트가 버전 8.0 업데이트 2인지 확인합니다.
- vCLS(Sphere 클러스터 서비스) VM이 정상 상태인지 확인합니다. vCLS에 대한 자세한 내용은 vSphere 클러스터 서비스 항목을 참조하십시오.
- vMotion 네트워크가 빠른 시작 워크플로를 통해 구성되었는지 확인합니다. vMotion 트래픽에 대한 네트워킹 옵션을 구성하는 방법에 대한 자세한 내용은 빠른 시작 워크플로를 사용하여 vSphere 클러스터를 구성하는 방법 항목을 참조하십시오.
- vGPU 가상 시스템에 대해 vMotion이 사용되도록 설정되어 있는지 확인합니다.
vgpu.hotmigrate.enabled
고급 설정을true
로 설정해야 합니다. vCenter Server 고급 설정을 구성하는 방법에 대한 자세한 내용은 "vCenter Server 구성" 설명서에서 "고급 설정 구성" 을 참조하십시오.
프로시저
가상 시스템 스왑 파일 위치 및 vSphere vMotion 호환성
가상 시스템 스왑 파일 위치는 가상 시스템의 호스트에서 실행되고 있는 ESXi 버전에 따라 다양한 방식으로 vMotion 호환성에 영향을 미칩니다.
가상 시스템 스왑 파일을 가상 시스템 구성 파일과 함께 저장하거나 해당 호스트에 대해 지정된 로컬 스왑 파일 데이터스토어에 저장하도록 ESXi 6.7 이상의 호스트를 구성할 수 있습니다.
가상 시스템 스왑 파일 위치는 다음과 같은 방식으로 vMotion 호환성에 영향을 미칩니다.
- ESXi 6.7 이상을 실행하고 있는 호스트 간에 마이그레이션하는 경우 vMotion 및 일시 중단된 가상 시스템과 전원이 꺼진 가상 시스템의 마이그레이션이 허용됩니다.
- vMotion을 사용한 마이그레이션 중에는 대상 호스트에 지정된 스왑 파일 위치가 소스 호스트에 지정된 스왑 파일 위치와 다른 경우 스왑 파일이 새 위치에 복사됩니다. 이 작업으로 인해 vMotion을 사용한 마이그레이션 속도가 느려질 수 있습니다. 대상 호스트는 지정된 스왑 파일 위치에 액세스할 수 없는 경우 스왑 파일을 가상 시스템 구성 파일과 함께 저장합니다.
스왑 파일 정책 구성에 대한 자세한 내용은 "vSphere 리소스 관리" 설명서를 참조하십시오.
지연 시간에 민감한 애플리케이션에 대한 vSphere vMotion 알림
vSphere 8.0부터 vSphere vMotion 이벤트의 시작과 완료를 가상 시스템의 게스트 운영 체제 내에서 실행되는 애플리케이션에 알릴 수 있습니다. 이 알림 메커니즘을 통해 지연 시간에 민감한 애플리케이션이 vSphere vMotion 작업을 준비하거나 지연할 수 있습니다.
VoIP 애플리케이션 및 고빈도 거래 애플리케이션과 같이 지연 시간에 민감한 애플리케이션의 경우 일반적으로 vSphere vMotion 및 vSphere DRS가 비활성화되어 있습니다. vSphere 8.0에는 vSphere vMotion이 시작될 것임을 애플리케이션에 알려 애플리케이션이 작업을 준비하는 데 필요한 단계를 수행할 수 있도록 하는 알림 메커니즘이 도입되었습니다. vSphere vMotion은 시작 이벤트 생성 후 일시 중지되고 애플리케이션이 시작 알림을 확인할 때까지 기다렸다가 시작 알림을 확인하면 계속 진행합니다.
vSphere vMotion 작업에 대한 알림 메커니즘을 사용하도록 설정하면 전체 vSphere vMotion 시간이 증가할 수 있습니다.
vSphere vMotion 알림을 위해 가상 시스템을 구성하는 방법
기본적으로 알림 메커니즘은 비활성화되어 있습니다. 가상 시스템에서 알림 메커니즘을 사용하도록 설정하려면 가상 시스템의 하드웨어 버전이 20 이상이어야 하며 다음과 같은 고급 가상 시스템 구성 옵션을 구성해야 합니다.
vSphere Web Services API를 사용하여 가상 시스템 내에서 실행 중인 애플리케이션에 알림을 보낼 수 있도록 설정하고 애플리케이션이 VMotion 작업을 준비해야 하는 최대 시간(초)을 지정할 수 있습니다.
가상 시스템 내에서 실행 중인 애플리케이션에 알림을 보낼 수 있도록 설정하려면 vmx.vmOpNotificationToApp.enabled 가상 시스템 속성을 true로 설정합니다.
애플리케이션이 vMotion 작업을 준비해야 하는 최대 시간(초)을 지정하려면 vmx.vmOpNotificationToApp.timeout 가상 시스템 속성을 사용합니다. vSphere vMotion 작업에서 시작 이벤트가 생성되면 vMotion 작업이 일시 중지되고 애플리케이션의 확인이 진행될 때까지 기다립니다. vSphere vMotion은 사용자가 지정한 알림 시간 초과를 기다립니다.
이 속성은 선택 사항이며 기본적으로 설정되지 않습니다. 이를 사용하여 특정 가상 시스템에 대해 더 제한적인 시간 초과를 구성할 수 있습니다. 설정하지 않은 상태로 두면 호스트 알림 구성이 사용됩니다.
자세한 내용은 vSphere Web Services API 설명서에서 가상 시스템 데이터 개체 속성을 참조하십시오. vSphere Web Services SDK를 사용하는 방법에 대한 자세한 내용은 vSphere Web Services SDK 프로그래밍 가이드를 참조하십시오.
vSphere vMotion 알림에 대해 호스트를 구성하는 방법
VmOpNotificationToApp.Timeout 고급 호스트 구성 설정을 사용하여 호스트의 모든 가상 시스템에 적용되는 알림 시간 초과를 지정할 수 있습니다. ConfigManager API를 사용하여 이 구성 속성에 값을 설정합니다. 기본 알림 시간 초과는 0입니다. 이 경우 애플리케이션 알림이 생성되지만 vSphere vMotion 작업은 지연되지 않습니다.
호스트와 호스트에서 실행되는 가상 시스템에 알림 시간 초과를 동시에 설정하면 더 작은 값이 사용됩니다.
vSphere Web Services SDK를 사용하는 방법에 대한 자세한 내용은 vSphere Web Services SDK 프로그래밍 가이드를 참조하십시오.
vSphere vMotion 알림에 대해 애플리케이션을 등록하는 방법
애플리케이션이 vSphere vMotion 이벤트에 대한 알림을 수신할 수 있도록 하려면 애플리케이션을 호스팅하는 가상 시스템에 VMware Tools를 설치해야 합니다. VMware Tools 설치 및 구성에 대한 자세한 내용은 VMware Tools 설명서를 참조하십시오.
vSphere 8.0에서는 가상 시스템당 하나의 애플리케이션만 등록할 수 있습니다. vSphere vMotion 알림을 수신하려는 애플리케이션은 다음과 같은 게스트 RPC 호출을 사용할 수 있고 vm-operation-notification.check-for-event 게스트 RPC 호출을 사용하여 주기적(예: 1초 또는 2초 간격)으로 새 vMotion 이벤트를 확인할 수 있습니다.
게스트 RPC 호출을 사용하는 방법에 대한 자세한 내용은 VMware Guest SDK 프로그래밍 가이드를 참조하십시오.
명령 |
설명 |
---|---|
vm-operation-notification.register |
vSphere vMotion 이벤트에 대한 알림 수신을 시작하도록 애플리케이션을 등록합니다. |
vm-operation-notification.unregister |
vSphere vMotion 이벤트에 대한 알림 수신에서 애플리케이션의 등록을 취소합니다. |
vm-operation-notification.list |
호스트의 가상 시스템에서 실행 중인 등록된 애플리케이션에 대한 정보를 검색합니다. |
vm-operation-notification.check-for-event |
호출 시 등록된 vSphere vMotion 이벤트에 대한 정보를 검색합니다. |
vm-operation-notification.ack-event |
vSphere vMotion 시작 이벤트를 확인합니다. |