서버의 가상화는 많은 회사들이 안고 있는 하드웨어의 관리재난에 의한 시스템의 신속한 복구등 여러가지 문제를 해결해줄 수 있는 방법으로 각광을 받고 있습니다이런 서버의 가상화는 크기 두가지로 분류할 수 있습니다하나는 하이퍼바이저(Hypervisor)형과 또 하나는 호스트(Hosted)형 가상화로 나눌 수 있습니다.

 

 하이퍼바이저(Hypervisior)

하이퍼바이저형 가상화는 VMM(Virtual Machine Monitor)을 물리 컴퓨터의 하드웨어상에 직접 동작을 시키는 방법으로 호스트 OS가 필요없습니다호스트 OS에 할당할 리소스가 필요없기에 호스트형 가상화에 비해 오버헤드가 적고 물리 컴퓨터 리소스의 관리가 유연한게 특징입니다만자체적으로 관리기능을 갖고 있지 않기에 별도의 관리콘솔이 필요합니다이런 하이퍼바이저형 가상화 소프트웨어에는VMware ESX/ESX i Server, itrix XenServer, Oracle VM Server, 썬의 xVM Server, 마이크로 소프트의 Hyper-V, Virtual Iron Virtual Iron, Parallels Parallels Server등이 있습니다하이퍼바이저(Hypervisor)형 가상화에는 전가상화와 반가상화로 나뉩니다.

 

 

(a) 전가상화(Full-Virtualization)

전가상화는 게스트 OS(Guest OS)와 네이티브 하드웨어(Native Hardware) 사이를 중재하는 가상 머신을 사용합니다. VMM(Virtual Machine Monitor)이 게스트 OS와 기반 하드웨어 사이를 중재하기 때문에 보호를 받고 있는 특정 명령어들은 기반 하드웨어를 OS가 소유한 것이 아니라 하이퍼바이저를 통해서 공유되기 때문에 하이퍼바이저 내에서 트랩핑과 핸들링이 되어야합니다전체 가상화는 하드웨어 에뮬레이션보다는 빠르지만 하이퍼바이저 중재 때문에 실제 하드웨어 보다 성능이 낮아집니다.

 

일반적인 응용 프로그램에서는 하이퍼바이저를 거치지 않고 바로 실행이 되지만, OS 레벨의 명령은 Binary Translation을 거쳐 하이퍼바이저를 통해서 하드웨어로 전달이 됩니다. Gust OS는 커널을 수정하지 않아도 되며하이퍼바이저의 존재 또한 모릅니다. OS 레벨의 명령은 하이퍼바이저에서 담당하며이를 변환(Binary Translation)하여 하드웨어로 전달하게 됩니다.

 

전가상화 개념도 ]

 

전가상화는 하드웨어를 완전히 가상화하는 방식으로 게스트 OS에 대한 수정이 필요없고, Windows에서 Linux까지 다양한 OS를 이용할 수 있다는 장점이 있습니다단점은 OS 레벨의 명령 수행시에는 Binary Translation이 발생하는데이 과정에서 상당한 오버헤드가 발생합니다이러한 이유로 가상화 되지 않은 시스템에 비해서 성능저하가 발생합니다.

 

 

(b) 반가상화(Para-Virtualization)

전가상화와 유사한 부분이 많습니다차이점은 Guest OS의 커널이 하이퍼바이저에 맞게 수정을 해야 합니다반가상화는 전가상화와 마찬가지로 일반적인 명령어는 하이퍼바이저를 거치지 않고 바로 실행이 되며, OS 명령어의 경우에는 하이퍼바이저에 전달이 되지만 바이너리 전환(Binary Translation)이 발생하지 않으며이로 인하여 재컴파일이나 트래핑(trapping)을 할 필요가 없습니다.

 

반가상화의 장점은 바이너리 전환(Binary Translation)이 발생하지 않으며가상화 되지 않은 시스템과 동일한 성능을 낸다는것입니다반가상화 단점으로는 반가상화를 실현하기 위해서는 게스트 OS의 커널 일부분을 수정해야 한다는 점입니다따라서 윈도우와 같이 소스 공개가 되어있지 않은 OS의 경우에는 Guest OS로 사용할 수 없습니다.

 

반가상화 개념도 ]

 

+ Recent posts