Windows 10에서 실행되는 Hyper-V 가상 머신에 VMware ESXi를 설치하여 홈랩(homelab) 환경을 구축하고 싶다면 이 가이드가 도움이 될 것입니다. Hyper-V와 VMware ESXi는 모두 중첩 가상화(Nested Virtualization)를 지원하기 때문에 이러한 시나리오가 가능합니다(물론 공식적으로 지원되는 구성은 아닙니다). 다만 Hyper-V 위에 ESXi를 설치할 때는 몇 가지 주의해야 할 사항이 있습니다.
net-tulip 네트워크 드라이버가 필요한 이유
ESXi 설치 이미지에는 Hyper-V 가상 네트워크 어댑터용 드라이버가 포함되어 있지 않으며, 해당 NIC는 VMware 하드웨어 호환성 목록(HCL)에도 등재되어 있지 않습니다. 따라서 가상 머신에 VMware ESXi를 설치하기 전에 Hyper-V 네트워크 어댑터용 드라이버인 net-tulip을 ESXi 설치 이미지에 미리 통합(slipstream)해야 합니다.
Net-tulip은 Microsoft Hyper-V 위에서 VM 형태로 ESXi를 구동할 수 있도록 커뮤니티에서 개발한 DECchip 21140 이더넷 드라이버입니다. ESXi 6.5 이하의 모든 버전을 지원합니다.
ESXi 설치 프로그램이 네트워크 어댑터를 찾지 못하면 다음과 같은 오류가 표시되며 설치를 진행할 수 없습니다:
No Network Adapters. No network adapters were detected. Either no network adapters are physically connected to the system, or a suitable driver could not be located. A third-party driver may be required.
ESXi-Customizer-PS로 드라이버 통합하기
ESXi 이미지에 net-tulip 드라이버를 추가하려면 먼저 컴퓨터에 VMware PowerCLI 모듈을 설치해야 합니다.
VMware.ImageBuilder 모듈(Add-EsxSoftwareDepot, Add-EsxSoftwarePackage, Export-EsxImageProfile)의 PowerShell cmdlet을 사용해 net-tulip을 이미지에 추가할 수도 있습니다. 이 경우 ESXi 이미지와 net-tulip 드라이버(https://vibsdepot.v-front.de/depot/bundles/net-tulip-1.1.15-1-offline_bundle.zip)를 직접 다운로드해야 합니다.
하지만 가장 간편한 방법은 ESXi-Customizer-PS 스크립트를 사용하는 것입니다. 최신 버전인 ESXi-Customizer-PS 2.8.1은 GitHub(https://github.com/VFrontDe/ESXi-Customizer-PS/blob/master/ESXi-Customizer-PS.ps1)에서 다운로드할 수 있으며, VMware ESXi 7.0 및 6.7 버전을 지원합니다.
1단계: 다운로드 가능한 ESXi 버전 확인
다운로드 가능한 ESXi 버전 목록을 표시하려면 다음 명령을 실행합니다:
.\ESXi-Customizer-PS-v2.8.1.ps1 -sip –ozip
여기서는 203번 이미지(ESXi-6.0.0-20170604001-standard)를 다운로드합니다. 203을 입력하고 Enter 키를 누르면 됩니다.
참고: 안타깝게도 최신 버전인 VMware ESXi 7.0과 6.5는 Hyper-V에서 정상적으로 구동되지 않습니다. 현재 출시된 모든 ESXi 버전이 레거시 Hyper-V 가상 네트워크 어댑터의 로딩을 차단하기 때문입니다. Net-tulip 드라이버와 함께 정상 부팅되는 가장 높은 버전은 ESXi-6.0.0-20170604001 Build 5572656입니다. ESXi-Customizer-PS 2.8.1이 ESXi 7.0 이미지에 Net-tulip 네트워크 드라이버를 통합할 수는 있지만, 실제 설치 프로그램은 해당 드라이버를 로드하지 못하고 Hyper-V 가상 네트워크 어댑터를 인식하지 못합니다.
스크립트가 ESXi 이미지가 담긴 ZIP 파일을 현재 디렉터리에 다운로드할 때까지 기다립니다.
2단계: net-tulip 드라이버 통합 및 ISO 생성
ZIP 이미지에 net-tulip을 통합하고 ISO 이미지를 생성하려면 아래 명령을 실행합니다:
.\ESXi-Customizer-PS-v2.8.1.ps1 -iZip "C:\Ps\ESXi-6.0.0-20170604001-standard.zip" -vft -load net-tulip
This is ESXi-Customizer-PS Version 2.8.1 (visit https://ESXi-Customizer-PS.v-front.de for more information!) (Call with -help for instructions) Logging to C:\Users\user\AppData\Local\Temp\ESXi-Customizer-PS-15076.log ... Running with PowerShell version 5.1 and VMware PowerCLI version .. build Adding base Offline bundle C:\Ps\ESXi-6.0.0-20170604001-standard.zip ... [OK] Connecting the V-Front Online depot ... [OK] Getting Imageprofiles, please wait ... [OK] Using Imageprofile ESXi-6.0.0-20170604001-standard ... (Dated 02/07/2020 11:36:33, AcceptanceLevel: PartnerSupported, For more information, see https://kb.vmware.com/kb/2149958.) Load additional VIBs from Online depots ... Add VIB net-tulip 1.1.15-1 [New AcceptanceLevel: CommunitySupported] [OK, added] Exporting the Imageprofile to 'C:\PS\ESXi-6.0.0-20170604001-standard-customized.iso'. Please be patient ... All done.
-vft 옵션은 최신 VIB 드라이버를 V-Front 온라인 저장소에서 다운로드하도록 지시하는 것입니다.
Hyper-V 가상 머신 생성 및 설정
이제 ESXi 설치 ISO 이미지가 준비되었습니다. Hyper-V 호스트에 새 가상 머신을 생성하고 다음 설정을 적용합니다:
- 세대 1(Generation 1) VM으로 생성
- VM에 최소 2개 이상의 vCPU 할당
- VM 속성에서 기본 네트워크 어댑터를 제거하고 새로운 레거시 네트워크 어댑터(Legacy Network Adapter) 추가
- VM에 중첩 가상화 기능 허용:
Set-VMProcessor -VMName test-esxi1 -ExposeVirtualizationExtensions $true - ESXi ISO 이미지를 VM에 마운트
ignoreHeadless=TRUE 부팅 옵션 적용
ESXi 설치 이미지로 가상 머신을 부팅하려고 하면 VMkernel과 호환되지 않는 비디오 어댑터 오류가 발생합니다:
Shutting down firmware services… Relocating modules and starting up the kernel…
이 문제를 무시하고 ESXi 설치를 계속하려면 VM 부팅 시 TAB 키를 누른 후 다음 옵션을 추가합니다:
ignoreHeadless=TRUE
그러면 ESXi 설치 프로그램이 하드웨어 구성을 점검하고, 네트워크 카드를 감지한 뒤 가상 디스크에 ESXi 설치를 계속할 것인지 묻습니다. 이후 VMware ESXi 설치 마법사의 안내에 따라 진행하면 됩니다.
설치 후 영구 적용 설정
설치가 완료되면 VM을 재시작하고 ESXi 부팅 옵션 선택 화면에서 Shift+O를 누릅니다. 그런 다음 비디오 카드 검사 없이 부팅하도록 지정해야 합니다. 행 끝에 ignoreHeadless=TRUE를 입력하고 Enter 키를 누르면 됩니다.
매번 VM을 부팅할 때마다 이 작업을 반복하는 것이 번거롭다면 ESXi 구성 자체를 변경하여 영구 적용할 수 있습니다:
- ESXi 부팅 후 F2 키를 누르고 root 비밀번호를 입력합니다.
- DCUI ESXi에서 Troubleshooting Options → Enable ESXi Shell을 선택합니다.
- Alt+F2를 눌러 ESXi 콘솔을 엽니다.
- 콘솔 프롬프트에서 다음 명령을 실행합니다:
Esxcfg-advcfg -k TRUE ignoreHeadless
ALT+F2로 콘솔을 닫은 후, DCUI에서 ESXi 호스트의 네트워크 설정을 구성하고 VM을 재시작합니다. ESXi가 정상적으로 부팅되는지, 그리고 vSphere Web Client로 연결할 수 있는지 확인하세요.
마무리
지금까지 Hyper-V 가상 머신에서 ESXi를 구동하는 방법을 살펴보았습니다. 이 구성은 공식적으로 지원되는 것은 아니지만, Windows 10이 설치된 가정용 컴퓨터의 샌드박스 환경에서 이전 버전의 VMware ESXi를 실험하고 학습하는 데 유용하게 활용할 수 있습니다.