[CS] 가상화 (Virtualization)

2024. 1. 5. 05:03
반응형

 

Virtualization(가상화) 

 

  • 단일 물리적 시스템에서 여러 운영 체제를 실행하고 기본 하드웨어 리소스를 공유할 수 있는 기능
  • 가상화는 컴퓨터의 자원을 여러 실행 환경으로 나누는 프레임워크 또는 방법론
  • 하드웨어와 OS를 분리하여 리소스 Utilization(활용도)와 Flexibility(유연성)을 높이는 Abstract layer(추상화 계층)임

 

 

가상화를 지원하는 솔루션은 VMM(Virtual Machine Monitor) 또는 하이퍼바이저

  • 가상 머신(Virtual Machine)
    • 격리된 런타임 환경(Guest OS 및 Application)을 의미함
    • Single Physical System에서 여러개의 VM을 실행할 수 있음
  • 하이퍼바이저(Hypervisor)
    • 가상 머신 관리자(VMM), 여러 운영 체제가 단일 하드웨어 호스트를 공유할 수 있도록 한다.
    • 호스트 프로세서와 리소스를 제어하여, 각각의 VM OS에 할당하여, 서로 방해되지 않도록 격리시킨다.

 

 

가상화의 장점과 단점

 

장점(Pros)

    • Cost(비용) : 물리적 서버, 서버 공간, 에너지 비용, 유지 비용 감소
    • Efficient Administration(효율적 관리) : 단일 머신으로 관리
    • Growth and Scalability(확장성)
    • Security(보안) : 단일 서버 보안 유지

 단점(Cons)

  • Slow Performance(느린 성능) : 하나의 머신에 대한 높은 부하
  • SPoF(Single point of failure) : 하나의 호스트 시스템에 여러개의 서버가 있음 → 백업 서버 설정필요
  • Learning curve(학습 곡선) : 각기 다른 유형의 소프트웨어와 아키텍쳐

가상화의 사용

  • 데이터 센터. 클라우드 컴퓨팅, 데스크탑 컴퓨팅

 

 

 

Virtualization의 유형

 

 

 

Type 1

  • Hypervisor가 실제 Kernel(기존 OS)임.
  • 가상 머신 : 직접 하드웨어 위에서 동작 (호스트 OS 없이)
    • 가상머신에 대한 직접적인 하드웨어 엑세스 제공(전권을 주는 느낌)
  • 수정되지 않은 OS가 User mode에서 실행되고 있지만(실제로는 OS가 하이퍼바이저에 의해 제어) → Kernel mode에서 실행되는 것처럼 느낌(Virtual Kernel mode)

 

Type 2

  • 호스트 OS에서 실행되는 소프트웨어로, 이 소프트웨어가 Hypervisor 역할을 하여 가상 머신을 관리한다.
  • Hypervisor은 마찬가지로 수정되지 않은 OS에서 작동함.
  • 가상 머신 : 호스트 OS 위에서 실행됨

 

 

Paravirtualization(반가상화)

OS를 커널을 수정할 수 있는 민감한 명령들을 Hyper call로 대체함

  • OS는 System Call을 수행하는 User Program처럼 동작 → Hypervisor을 통해 간접적으로 하드웨어와 통신
  • Hypervisor은 Hypercall에 의해 호출된 권한 있는 작업을 실행함

 

 

 

 

 


Content / Image Reference 

 

Tannenbaum and Van Steen :: Distributed Systems: Principles and Paradigms (PDF)

반응형

BELATED ARTICLES

more