Server/Hyper-V

2. Hyper-V

jk.jeong 2017. 2. 7. 17:10

Hyper-V


1. Hyper-V

- x64 시스템을 위한 하이퍼바이저 기반의 가상화 시스템. 


2. 가상화 종류

- 서버 가상화: 서버 운영체제를 기반으로 하드웨어를 논리적으로 구분하여 컴퓨터 동작을 위한 가상 컴퓨터를 생성.

- 데스크톱 가상화: 데스크톱 운영체제를 기반으로 하드웨어를 논리적으로 구분해서 동작시키거나 하드웨어에 대한 에뮬레이션 형태의 가상화 기술.

- 프리젠테이션 가상화: 실제 컴퓨팅 처리에 대한 부분은 원격 서버에서 운영되며 접속하는 컴퓨터에서는 화면과 키도드, 마우스 입출력 등을 처리하는 함.

- 응용 프로그램 가상화: 응용 프로그램을 사용하고자 하는 컴퓨터에 설치한 후 실행. 


3. 서버 가상화 종류

- 호스트 기반 가상화

  하드웨어 위에 운영체제가 설치되고 해당 운영체제 내 가상화 영역이 설치 됨. 운영체제 내에 설치된 가상화 기술은 하드웨어 형태가 아닌 에뮬레이션 구조로 하드웨어를 제공.

  호환성 측면에서 좋을 수 있으나 에뮬레이션이 많아지면(가상 컴퓨터의 개수가 늘어나면) 호스트 운영체제에 부하가 걸리고, 호스트의 소프트웨어에 문제가 발생하면 전체 가상 컴퓨터의 문제가 될 수 있음.


- 전체 가상화

  호스트 기반 가상화에서는 RING 0(CPU 아키텍처와 운영체제간 관계 이해하기)에 대한 출입을 소프트웨어에서 담당했지만 전체 가상화에서는 하드웨어에서 담당(RING -1사용) => 하이퍼바이저라고 하며 하이퍼바이저 기반의 전체 가상화 기술은 반드시 CPU에서 제공하는 가상화 기술이 있어야 함.

  부모/자식 관계로 호스트 서버와 가상 컴퓨터가 불러지고, 하드웨어에서 바라보는 형태는 동일. 하드웨어어 대해서 실제 호스트 서버와 가상 컴퓨터가 동일한 입장에서 접근.

 

- 모노리틱 하이퍼 바이저 (VMware ESXi)

  하드웨어 처리를 위한 드라이버가 하이퍼바이저에 있음. 가상화 소프트웨어에서 설계 시 제공하는 드라이버만을 하위 하드웨어에서 사용 할 수 있음. 

- 마이크로커널 하이퍼바이저 (Hyper-V) 

  드라이버에 대한 관리를 부모 파티션(컴퓨터간 나누어 놓은 고유 공간)에서 관리. 부모 파티션에 설치된 운영체제에서 드라이버를 관리하므로 부모 파티션에 설치된 운영체제에서 사용할 수 있는 드라이버에 대ㅎ한 하드웨어는 모두 가상화 환경에서 사용 가능.

- Hyper-V가 마이크로커널 하이퍼 바이저를 사용하는 이유?

  안정성과 보안, 범용성

* 모노리틱이 마이크로커널보다 하드웨어를 가상 컴퓨터에 직접 제공할 수 있다는 장점이 있기에 성능이 더 좋다 하지만 하드웨어 성능이 발전함에 따라 크게 차이가 나지 않음.


4. Hyper-V 아키텍처

   Windows Server에 Hyper-V가 설치되면 부모 파티션용 운영체제가 부팅되기 전 하드웨어 영역 위에 Windows용 하이퍼바이저가 구성 됨. 이후 하이퍼바이저에서 만들어져 제공되는 파티션에 실제 호스트용 운영체제가 구성됨.

   하이퍼 바이저는 실제 하드웨어를 가상 컴퓨터가 바로 접근하여 사용하는 구조가 아니라 가상화 소프트웨어가 하드웨어 구조를 추상화한 후 가상 컴퓨터에는 모조품의 형태로 하드웨어를 제공. 

  Synthetic장치-가상 컴퓨터에서 보여지는 하드웨어. 추상화된 모조의 하드웨어 Synthetic 장치에 대한 드라이버가 필요하며 해당 드라이버는 Hyper-V를 지원하는 운영체제게 포함되어 있거나 업데이트가 필요.


- 하드웨어 추상화가 되어 있기 때문에 추상화된 모조의 하드웨어 Synthetic 장치에 대한 드라이버만 필요

  :운영 체제에 포함되어 있거나 필요시 추가적인 업데이트가 필요.

- Hyper-V 가상 컴퓨터 버스, VMBUS는 Hyper-V 실제 호스트와 VM간 연결된 메모리 공간