STEP 3에서는 실제 Azure Local 1-Node VM의 껍데기를 만듭니다.
아직 Azure 등록은 하지 않고, Hyper-V에서 AZLOCAL01 VM + NIC 2개 + OS Disk + S2D Disk 2개 + Nested Virtualization까지 구성하겠습니다.
Microsoft의 가상 Azure Local 실습 기준은 VM당 4 vCPU, 32GB RAM, NIC 최소 2개, OS Disk 127GB 이상, S2D용 디스크 2개, Secure Boot/TPM, MAC Spoofing입니다.
가상 배포는 학습/데모용입니다. Deploy a virtual Azure Local system [learn.microsoft.com]
STEP 3-1. 네트워크부터 만들기
관리자 PowerShell에서 현재 스위치를 확인합니다.
Get-VMSwitch
인터넷 연결 가능한 External Switch가 이미 있다면 그걸 사용해도 됩니다.
없다면 물리 NIC 이름을 확인합니다.
Get-NetAdapter
예를 들어 인터넷에 연결된 NIC가 Ethernet이면:
New-VMSwitch'
-Name "AZLOCAL-SW" `
-NetAdapterName "Ethernet" `
-AllowManagementOS $true
PowerShell
Get-VMSwitch
Plain Text
가 나오면 됩니다.
STEP 3-2. 폴더 준비
예를 들어 D:에 충분한 SSD 공간이 있다고 가정하겠습니다.
New-Item -ItemType Directory -Path "D:\AzureLocalLab" -Force
STEP 3-3. Azure Local VM 생성
New-VM `
-Name "AZLOCAL01" `
-Generation 2 `
-MemoryStartupBytes 32GB `
-NewVHDPath "D:\AzureLocalLab\AZLOCAL01_OS.vhdx" `
-NewVHDSizeBytes 150GB `
-SwitchName "AZLOCAL-SW"
Set-VMProcessor `
-VMName "AZLOCAL01" `
-Count 4
동적 메모리는 끄겠습니다.
Set-VMMemory `
-VMName "AZLOCAL01" `
-DynamicMemoryEnabled $false
STEP 3-4. Nested Virtualization
중요합니다.
AZLOCAL01 안에서 다시 VM을 실행하게 될 것이므로 CPU의 가상화 기능을 VM에 노출합니다.
Set-VMProcessor `
-VMName "AZLOCAL01" `
-ExposeVirtualizationExtensions $true
STEP 3-5. NIC 하나 더 추가
현재 NIC 확인:
Get-VMNetworkAdapter -VMName "AZLOCAL01"
NIC를 하나 더 추가합니다.
Add-VMNetworkAdapter `
-VMName "AZLOCAL01" `
-SwitchName "AZLOCAL-SW" `
-Name "NIC02"
PowerShell
Get-VMNetworkAdapter -VMName "AZLOCAL01"
2개가 보여야 합니다.
NIC 이름이 달라도 상관없고 2개면 됩니다.
Microsoft 가상 배포 요구사항도 Azure Local 가상 Host에 최소 2개 NIC를 요구합니다. Deploy a virtual Azure Local system [learn.microsoft.com]
STEP 3-6. MAC Spoofing 활성화
이것도 중요합니다.
Get-VMNetworkAdapter -VMName "AZLOCAL01" |
Set-VMNetworkAdapter -MacAddressSpoofing On
PowerShell
Get-VMNetworkAdapter -VMName "AZLOCAL01" |
Select Name,SwitchName,MacAddressSpoofing
둘 다 다음처럼 나와야 합니다.
Nested 환경에서 내부 VM의 네트워크 트래픽을 처리하려면 L1 VM 네트워크 어댑터의 MAC spoofing 설정이 중요합니다. Deploy a virtual Azure Local system [learn.microsoft.com]
STEP 3-7. S2D용 디스크 2개 생성
이제 상당히 중요한 부분입니다.
AZLOCAL01 안에 Azure Local OS가 설치될 OS Disk 외에 S2D용 데이터 디스크 2개를 달아주겠습니다.
먼저 VHDX 생성:
New-VHD `
-Path "D:\AzureLocalLab\AZLOCAL01_DATA01.vhdx" `
-SizeBytes 200GB `
-Dynamic
New-VHD `
-Path "D:\AzureLocalLab\AZLOCAL01_DATA02.vhdx" `
-SizeBytes 200GB `
-Dynamic
VM에 연결:
Add-VMHardDiskDrive `
-VMName "AZLOCAL01" `
-Path "D:\AzureLocalLab\AZLOCAL01_DATA01.vhdx"
Add-VMHardDiskDrive `
-VMName "AZLOCAL01" `
-Path "D:\AzureLocalLab\AZLOCAL01_DATA02.vhdx"
Microsoft 기준도 S2D를 위해 동적 확장 디스크 2개를 요구합니다. Deploy a virtual Azure Local system [learn.microsoft.com]
STEP 3-8. Time Synchronization 끄기
Microsoft의 Azure Local 가상 배포 요구사항에서는 Hyper-V Integration Services의 Time Synchronization을 비활성화하도록 되어 있습니다. Deploy a virtual Azure Local system [learn.microsoft.com]
Disable-VMIntegrationService `
-VMName "AZLOCAL01" `
-Name "Time Synchronization"
PowerShell
Get-VMIntegrationService -VMName "AZLOCAL01"
Time Synchronization이 Enabled = False 이면 됩니다.
STEP 3-9. 최종 점검
한 번에 확인:
Get-VM "AZLOCAL01" |
Select Name,State,Generation,ProcessorCount,MemoryStartup
NIC:
Get-VMNetworkAdapter -VMName "AZLOCAL01" |
Select Name,SwitchName,MacAddressSpoofing
Disk:
Get-VMHardDiskDrive -VMName "AZLOCAL01" |
Select ControllerType,ControllerNumber,ControllerLocation,Path
정상이라면 구조는 다음과 같습니다.
- AZLOCAL01
- Generation 2
- CPU: 4
- RAM: 32 GB
- NIC: 2개
- MAC Spoofing: On
- OS: 150 GB
- DATA01: 200 GB
- DATA02: 200 GB
- Nested Virtualization: On
- Time Synchronization: Off
여기까지 되면 Azure Local 서버 하드웨어를 Hyper-V 위에서 가상으로 만들어 놓은 것입니다.

Rss Feed