CLAUD COMPUTERING

[클라우드 컴퓨터링] 가상화 기술(Virtualization)이란?

ch010104 2025. 9. 18. 23:05

1. 가상화(Virtualization)란 무엇일까?

  • 물리적인 컴퓨터 자원(하드웨어)을 논리적인 객체로 추상화하는 기술
  • 쉽게 말해, 한 대의 강력한 서버를 여러 대의 작은 서버처럼 나누어 사용하거나(Partitioning) , 여러 대의 서버를 하나로 묶어(Aggregation) 사용하는 것을 가능하게 해줌
  • 이 기술이 중요한 이유는 자원 효율성에 있음
  • 대부분의 서버는 평소에 전체 용량의 10~15% 정도만 사용하는데, 이는 상당한 자원 낭비
  • 가상화를 이용하면 놀고 있는 자원을 필요한 곳에 동적으로 할당하여 서버 사용률을 70% 이상으로 끌어올릴 수 있음
  • 1960년대 IBM 메인프레임에서 처음 시작되었고, 2001년 VMware가 x86서버용 상용 솔루션을 내놓으며 본격적으로 알려지기 시작

2. 하이퍼바이저(Hypervisor) 기반 가상화

서버 가상화의 중심에는 하이퍼바이저(Hypervisor)가상 머신(Virtual Machine, VM)이 있음

  • 가상 머신(VM):
    - 물리적 컴퓨터와 거의 동일한 환경을 제공하는 복제된 컴퓨팅 환경
    - 각 VM은 독립된 운영체제(Guest OS)와 애플리케이션을 설치하고 실행할 수 있음
    - 하나의 물리 서버에서 서로 다른 여러 환경을 동시에 운영할 수 있음

     
  • 하이퍼바이저:
    - 가상 머신 모니터(VMM)라고도 불림
    - 물리적 하드웨어와 VM 사이에서 CPU, 메모리 같은 자원을 각 VM에 할당하고 관리하는 중간 관리자 역할을 함

하이퍼바이저는 작동 방식에 따라 두 가지 유형으로 나뉨

  1. 타입 2 (호스트 기반):
    - 윈도우나 리눅스 같은 기존 운영체제(Host OS) 위에 애플리케이션처럼 설치
    - 설치가 쉽고 편리하지만, Host OS를 한 번 더 거치기 때문에 타입 1에 비해 성능이 다소 떨어질 수 있음
     
  2. 타입 1 (네이티브/베어메탈):
    - 하드웨어 위에 바로 설치되어 운영체제 없이 직접 하드웨어를 제어
    - Guest OS가 하드웨어 위에서 두 번째 수준으로 실행되므로 성능이 우수하여 데이터센터 환경에 적합

3. 가상화 기술의 발전: 전가상화 vs 반가상화 vs 하드웨어 지원

  • 하이퍼바이저가 VM을 어떻게 제어하고 하드웨어에 접근하는지에 따라 가상화 기술은 더 세분화
  • 이를 이해하려면 먼저 CPU 보호 링(Protection Ring)에 대한 이해가 필요
  • x86 CPU는 4개의 권한 레벨(Ring 0~3)을 통해 시스템 자원을 보호
    가장 높은 권한인 **Ring 0(커널 모드)**에서만 OS 커널이 하드웨어에 직접 접근할 수 있음

소프트웨어 기반 전가상화 (Software-based Full Virtualization)

  • 작동 방식:
    - 하이퍼바이저가 Ring 0에서 실행되고, Guest OS는 권한이 낮은 Ring 1에서 실행
    - Guest OS가 하드웨어 제어 명령(특권 명령)을 내리면, CPU는 권한 부족으로 예외(Trap)를 발생
    - 이때 하이퍼바이저가 Trap을 감지하여 해당 명령을 소프트웨어적으로 대신 처리(에뮬레이션)
  • 특징:
    - Guest OS를 수정할 필요가 없어
    호환성이 높지만, 에뮬레이션 과정에서 발생하는 오버헤드 때문에 성능 저하
    - 초기 가상화 모델에서 사용된 방식

반가상화 (Paravirtualization)

  • 작동 방식:
    - Guest OS 커널을 수정하여 자신이 가상 환경에서 실행 중임을 인지하게 만듬
    - 하드웨어 접근이 필요할 때 Trap을 발생시키는 대신, 하이퍼바이저에게 직접 요청(Hypercall)을 보내 처리
  • 특징:
    - 불필요한 Trap & Emulate 과정이 없어
    성능이 우수
    - OS 커널을 직접 수정해야 하므로 호환성이 제한된다는 단점이 있음

하드웨어 지원 가상화 (Hardware-Assisted Virtualization)

  • 작동 방식:
    - Intel VT-x, AMD-V 등 CPU에 내장된 가상화 지원 기능을 활용
    - 하이퍼바이저는 새로운 최상위 권한 모드인 'Root Mode'
    - Guest OS는 별도의 'Non-root Mode'에 있는 Ring 0에서 실행
    - Guest OS가 특권 명령을 실행하면 CPU가 이를 자동으로 감지해 하이퍼바이저에게 제어권을 넘김
  • 특징:
    - Guest OS 수정 없이
    높은 호환성우수한 성능을 동시에 달성 가능
    - 현대 가상화 기술의 표준