728x90

중첩된 가상화는 Hyper-V VM(가상 머신) 내에서 Hyper-V를 실행할 수 있는 기능입니다. 중첩된 가상화는 가상 컴퓨터에서 Visual Studio 휴대폰 에뮬레이터를 실행하거나 일반적으로 여러 호스트가 필요한 구성을 테스트하는 데 유용합니다.

 

Dv3, Dv4, Ev3, Ev4처럼 nested virtualization을 지원하는 SKU를 사용해서 hyper-v를 사용 수 있습니다.

(위에서 언급한 SKU외에도 nested virtualization을 지원하는 SKU는 다수 있습니다)

 

필수 구성 요소

VT-x 및 EPT 기술이 적용된 Intel 프로세서

  • Hyper-V 호스트는 Windows Server 2016 이상 또는 Windows 10 이상이어야 합니다.
  • VM 구성 버전 8.0 이상.

AMD EPYC / Ryzen 프로세서 이상

  • Hyper-V 호스트는 Windows Server 2022 이상 또는 Windows 11 이상이어야 합니다.
  • VM 구성 버전 9.3 이상.
  •  

Windows Server 2019를 첫 번째 수준 VM으로 사용하는 경우 vCPU 수는 225개 이하여야 합니다

 

 

중첩된 가상화를 사용하여 가상 컴퓨터에서 Hyper-V 실행Run Hyper-V in a Virtual Machine with Nested Virtualization | 마이크로소프트 런(Microsoft T

 

Run Hyper-V in a Virtual Machine with Nested Virtualization

Learn about how to use nested virtualization to run Hyper-V in a virtual machine to emulate configurations that normally require multiple hosts.

learn.microsoft.com

 

중첩된 가상화를 사용하여 가상 컴퓨터에서 Hyper-V 실행Run Hyper-V in a Virtual Machine with Nested Virtualization | 마이크로소프트 런(Microsoft T

 

Run Hyper-V in a Virtual Machine with Nested Virtualization

Learn about how to use nested virtualization to run Hyper-V in a virtual machine to emulate configurations that normally require multiple hosts.

learn.microsoft.com

 

Hyper-V 호스트 원격 관리 | 마이크로소프트 런(Microsoft T

 

Remotely manage Hyper-V hosts

Describes version compatibility between Hyper-V hosts and Hyper-V Manager and how to connect to remote hosts in different environments, including cross-domain and standalone.

learn.microsoft.com

 

 

Windows Server에 Hyper-V 역할 설치 | 마이크로소프트 런(Microsoft T

 

Install the Hyper-V role on Windows Server

Gives instructions for installing Hyper-V using Server Manager or Windows PowerShell

learn.microsoft.com

 

 

Install-WindowsFeature (ServerManager) | 마이크로소프트 런(Microsoft T

 

Install-WindowsFeature (ServerManager)

Installs one or more roles, role services, or features on either the local or a specified remote server that is running Windows Server.

learn.microsoft.com

 

끝.

 

 

 

728x90
728x90

hub and spoke 구조는 Virtual WAN을 사용하지 않고 virtual network 로만 구성하고자 할때 Azure에서 권장하는 구조입니다. 일반적으로 온프레미스와 virtual network gateway간 연결해서 사용할 때 자주 볼 수 있는 아키텍쳐이며, 본 포스트는 아래와 같은 구조에서 virtual machine끼리 통신하도록 하는 예제입니다.

단순 vnet peering 만으로는 spoke1-vm과 spoke2-vm간 통신이 불가능하고, route tables라는 리소스를 생성해서 적용해 줘야 합니다. Azure 공식 문서에는 잠깐의 언급만 하고 자세히 다루지는 않아서 본 포스트에서 spoke1-vm과 spoke2-vm간 통신하는 예제를 다루어 보았습니다.

*링크 : Create, change, or delete an Azure virtual network peering | Microsoft Docs

 

리소스 그룹 생성

포털에 resource group 검색 후 create 버튼 클릭

 

virtual network 생성

총 3개의 vnet을 생성합니다.

hub-vnet : 10.50.0.0/16, default 10.50.1.0/24, GatewaySubnet 10.50.2.0/24

(게이트웨이 서브넷 이름은 무조건 'GatewaySubnet'이어야 함)

spoke1-vnet : 10.60.0.0/16, default 10.60.1.0/24

spoke2-vnet : 10.61.0.0/16, default 10.61.1.0/24

spoke1-vnet과 spoke2-vnet도 위와 같이 생성합니다.

 

Virtual network gateway 생성

포털에서 virtual network gateway 검색 후 create 클릭

 

피어링 설정

hub-vnet과 spoke1-vnet간 vnet peering을, hub-vnet과 spoke2-vnet간 vnet peering을 맺습니다

add 버튼 클릭

 

 

hub-vnet과 spoke2-vnet에 대해서도 위와 같이 설정해 줍니다.

 

Virtual Machine 생성

spoke1-vm과 spoke2-vm을 생성합니다.

아래 화면처럼 spoke1-vnet을 선택해 줍니다.

 

spoke2-vm에 대해서도 위와 같이 생성해 줍니다.

 

spoke1-vm에 ssh 연결해서 spoke2-vm으로 ping을 보내면 전부 packet loss 됨을 확인할 수 있습니다.

 

Route tables 생성 및 적용

spoke1-udr, spoke2-udr을 각각 만들어 줍니다

*udr : user defined route

 

Routes 탭에서 add 버튼을 클릭한 후, destination ip addresses에 spoke2-vnet의 대역을 입력합니다

(마찬가지로 spoke2-udr에는 spoke1-vnet의 대역을 입력합니다)

 

route 생성 후, 아래와 같이 spoke1-vnet의 default 서브넷, spoke2-vnet의 default 서브넷에 각각 적용시켜 줍니다

route table 을 각 서브넷에 적용 후, spoke1-vm에서 spoke2-vm으로 ping을 날리면 정상적으로 패킷 송수신이 되는 것을 확인하실 수 있습니다.

 

테스트가 완료되었을 경우 resource group을 삭제합니다.

728x90

+ Recent posts