[PART 3] VM 이해 | Hypervisor란 무엇이며, Type1과 Type2는 왜 구분되는가

Cookie·2026년 2월 3일
post-thumbnail

이 글에서 다룰 내용

이 글에서는 PART 2에서 다룬 하드웨어 추상화를 실제로 가능하게 만든 핵심 구성 요소인 Hypervisor가 무럿인지, 그리고 왜 Hypervisor가 Type 1과 Type2로 구분되는지를 다룸

각 타입이 어떤 환경을 전제로 등장했느지에 초첨을 맞춰 설명


학습 목표

아 글을 통해 다음을 이해하는 것을 목표로 함

  • Hypervisor의 역할을 구조적으로 설명할 수 있음
  • Type 1과 Type 2 Hypervisor의 차이를 "성능"이 아닌 "전제 환경" 관점에서 이해함
  • 왜 서버 환경에서는 Type 1이 표준이 되었는지 설명할 수 있음
  • 이후 vCPU, vRAM 설명의 기반을 마련함






Hypervisor란 무엇인가


Hypervisor가 필요해진 이유

PART 2에서 살펴본 VM 환경의 핵심은 운영체제가 더 이상 물리 하드웨어를 직접 인식하지 않는다는 점이었음


하나의 물리 서버 위에서 여러 운영체제가 동시에 실행되기 시작하면서,
기존 Bare Metal 환경에서는 전혀 고려하지 않아도 되었던 문제가 발생함

  • 여러 운영체제가 동시에 CPU를 사용하려 하고,
  • 각 운영체제는 메모리를 전부 소유한 것처럼 동작하며,
  • 디스크와 네트워크 접근이 서로 충돌할 수 있음

즉, 여러 운영체제가 하나의 하드웨어를 직접 제어하려는 구조적 충돌이 발생함

이 충돌을 해결하지 않으면 VM은 개념적으로만 존재할 뿐, 안정적인 시스템으로 동작할 수 없음


이 문제를 해결하기 위해 등장한 계층이 바로 Hypervisor

Hypervisor는
여러 운영체제가 하나의 물리 서버를 공유하더라도 각각이 독립된 서버처럼 동작할 수 있도록 하드웨어 사용의 전제를 바꾸는 역할을 수행함




Hypervisor의 역할

Hypervisor의 역할을 한 문장으로 정리하면 다음과 같음

여러 운영체제가 하나의 물리 서버를 공유하더라도, 각 운영체제가 자신만의 서버를 사용하는 것 처럼 동작하도록 만드는 계층

VM 환경에서 운영 체제는 자신이 단독 서버위에서 실행된다고 가정하고 동작함
Hypervisor는 이 가정을 깨지 않으면서도, 실제 하드웨어 자원은 질서 있게 공유되도록 만듦

그 결과,

  • 운영체제는 하드웨어의 존재를 직접 할 필요가 없고,
  • 하드에워 자원 사용의 충돌은 Hypervisor 단에서 해결됨



이 역할은 다음과 같은 자원 영역에서 동시에 수행됨:

🔹CPU

VM 환경에서 운영체제는 CPU를 독점적으로 사용할 수 있다고 전제하고 동작함

Hypervisor는 이 전제를 깨지 않은 채, 실제 CPU는 여러 VM이 시간 단위로 나누어 사용하도록 관리함

그 결과

  • 여러 VM이 동시에 실행될 수 있고,
  • 각 VM은 CPU를 끊김 없이 사용하는 것 처럼 동작함



🔹메모리

VM 환경에서 운영체제는 자신에게 할당된 메모리 공간을 완전히 소유하고 있다고 전제함

Hypervisor는 이 전제를 유지한 채, VM마다 접근 가능한 메모리 범위를 분리하여 서로의 메모리를 침범하지 못하도록 강제함

그 결과

  • 한 VM에서 발생한 메모리 오류가 다른 VM으로 전파되지 않음



🔹디스크와 네트워크

VM 환경에서 각 VM은 자신만의 디스크와 네트워크 인터페이스가 존재한다고 전제함

Hypervisor는 이 전제를 유지한 채, 각 VM의 I/O 요청을 물리 자원으로 중재하고 결과를 다시 해당 VM에 전달함

그 결과,

  • 여러 VM이 하나의 물리 디크스와 NIC를 공유하더라도 각 VM은 독립된 자원을 사용하는 것 처럼 동작함



, Hypervisor즉,\ Hypervisor는
운영체제가 하드웨어를 직접 통제하지 않더라도운영체제가\ 하드웨어를\ 직접\ 통제하지\ 않더라도
기존과 동일한 방식으로 동작할 수 있도록기존과\ 동일한\ 방식으로\ 동작할\ 수\ 있도록
하드웨어 사용의 환상"을 유지해주는 계층``하드웨어\ 사용의\ 환상"을\ 유지해주는\ 계층






Hypervisor의 위치가 중요한 이유

Hypervisor는 항상 물리 하드웨어와 VM 사이에 존재함

하지만 어디에 위치하느냐에 따라 전체 가상화 구조의 성격이 완전히 달라짐

이 차이를 기준으로 Hypervisor는 Type 1Type 2로 구분됨






Type 1 Hypervisor


구조

Type 1 Hypervisor는 물리 하드웨어 위에직접 설치되는 구조임

이 구조에서는 운영체제가 하드웨어를 직접 제어하지 않음.

하드웨어 자원에 대한 판단과 통제는 Hypervisor가 담당함




구조가 의미하는 것

Type 1 구조의 핵심은 Host OS가 없다는 사실 차제가 아님.
중요한 점은 운영체제의 역할이 바뀌었다는 것

운영체제는 더이상

  • CPU 스케줄링의 주체가 아니며,
  • 메모리 과리의 기준이 아니고,
  • 디스크와 네트워크 제어의 최종 판단자가 아님

운영체제는 Hypervisor 위에서 실행되는 하나의 실행 단위가 됨


이 구조 덕분에,

여러 운영체제가 동시에 실행되더라도,
하드웨어 자원 사용은 하나의 기준 [Hypervisor][Hypervisor]으로 조율 됨



왜 서버 환경에 적합한가

서버 환경에서는 다수의 VM을 동시에 운영해야 하고, 장시간 안정적으로 동작해야 하며, 특정 VM의 문제로 전체 시스템이 흔들리면 안 됨

Type 1 구조에서는 하드웨어 자원에 대한 판단이 Hypervisor 기준으로 일관되게 이루어지기 때문에,

  • 자원 사용 패턴이 예측 가능하고,
  • 장애 영향 범위를 VM 단위로 제한할 수 있으며,
  • 대규모 VM운영이 가능함

이 때문에 데이터센터와 클라우드 환경에서는 Type 1 HypervisorType\ 1\ Hypervisor 구조가 표준으로 사용됨






Type 2 Hypervisor


구조

Type 2 Hypervisor는 기존 운영체제 위에서 실행되는 소프트웨어 형태의 구조임

이 구조에서는 하드웨어에 대한 최종 제어 권한이 Host OS에 있음

Hypervisor는 Host OS가 제공하는 자원 위에서 동작함




전제 환경

Type 2 구조는 서버 운영을 전제로 설계된 구조가 아님

  • 개인 PC나 노트북 환경에서 기존 OS를 유지한 채 VM을 실행하기 위한 목적으로
    VM을 운영하기 위한 구조라기보다, 사용하기 위한 구조에 가까움




구조적 한계

Type 2 구조에서는 모든 자원 요청이
Guest OSHypervisorHost OS 하드웨어
경로를 거치게됨

이로 인해

  • 자원 통제 기준이 분산되고,
  • 계층 증가로 인한 오버헤드가 발생하며,
  • Host OS 장애가 전체 VM에 영향을 미침

이 한계는 구현이 아닌 구조적 위치에서 발생하는 한계임






Type 1과 Type2를 나눠서 이해해야하는 이유

Type 1과 Type 2의 차이는 단순히 "성능이 좋다/나쁘다"의 관점이 아님

차이는
가상화를 어디까지 운영 책임 범위로 보느냐에 있음

  • Type 1
    → 가상화를 서버 인프라의 일부로 다룸

  • Type 2
    → 가상화를 사용자 환경에서 사용하는 도구로 다움

이 전제 차이가 구조, 안정성, 확장성의 차이로 이어짐


따라서,

대규모 서비스 운영 환경에서는 [Type 1]이 선택되고,대규모\ 서비스\ 운영\ 환경에서는\ [Type\ 1]이\ 선택되고,
개인 개발 및 테스트 환경에서는 [Type 2]가 선택됨개인\ 개발\ 및\ 테스트\ 환경에서는\ [Type\ 2]가\ 선택됨






정리

  • Hypervisor는 여러 운영체제가 하나의 물리 서버를 공유할 수 있도록 실행 환경과 자원 사용을 조율하는 계층
  • Hypervisor의 위치에 따라 가상과 구조는 Type 1r과 Type 2로 나뉨
    • Type 1: 가상화를 서버 인프라의 일부로 다루기 위한 구조
    • Type 2: 가상화를 개인 환경에서 활용하기 위한 구조

이제 다음 글에서는 이러한 Type 1 Hypervisor 구조 위에서 제공되는 vCPU, vRAM, Disk가 실제로 무엇을 보장하는지 살펴봄

profile
지식을 쌓기 위한 기록 저장소

0개의 댓글