Iriton's log

02. 가상화 환경의 이해 본문

Cloud/Study

02. 가상화 환경의 이해

Iriton 2024. 5. 6. 21:50

가상화--

  • 컴퓨팅 자원을 다수의 사용자가 사용할 수 있도록 하는 기술 적용
  • 자원을 공유하고 있지만 각 사용자는 마치 자원을 독점하는 것으로 인식함
  • 다른 사용자의 자원에 접근이 원천적으로 차단됨

목적--

  1. 컴퓨팅 자원의 가동률(Utilization)을 높임
    • Resource를 얼마나 잘 활용하느냐가 매우 중요한 평가 지표
  2. 적은 자원을 다수의 사용자가 공유하도록 하면서 보안성 유지
  3. 가상화된 컴퓨팅 자원을 파일의 형태로 이관 및 공유할 수 있는 사용성 제공

Q. 가동률과 보안성 둘 다 높이는 방법은?

주요 기술요소--

  1. 시분할 방식 자원 공유 기술
    • 단일 컴퓨팅 자원을 여러 사용자가 공유할 수 있도록 시간 단위로 자원을 분배
    • 프로세서와 같은 컴퓨팅 자원은 시분할 방식을 활용하여 사용자에게 공유
  2. 컴퓨팅 자원의 Pool 구성
    • 용량이 작은 컴퓨팅 자원을 한곳에 모아 두고 Pool을 만들어 여러 사용자가 공유하도록 함
    • Pool을 사용하는 사용자들에게 사용량 요청을 받아 자원 할당
    • 사용이 끝난 자원을 회수하여 다른 사용자에게 할당, 회수 시점 기억이 중요
    • 스토리지와 같은 컴퓨팅 자원의 가상화에 필요한 기술

가상화 지원 전용 소프트웨어--

  • 하이퍼바이저: 하드웨어 가상화를 위한 소프트웨어
  • 컨테이너 엔진: 운영체제 가상화를 위한 소프트웨어

 

가상화 기술의 분류

첫 번째 분류법

하드웨어 가상화

  • 하드웨어의 자원을 다수 개의 Guest OS가 공유할 수 있도록 하는 가상화 방법
  • 하이퍼바이저를 통해 가상머신들의 모니터링과 명령어의 전달이 진행
  • 가상머신의 상호간의 연동을 네트워크를 기반으로 한 통신 이외의 연동이 없도록 제한

운영체제 가상화

  • 운영체제가 다수 개의 독립적으로 실행되는 응용프로그램 구동 환경(Container)에 의해 공유되도록하는 가상화 방법
  • 컨테이너 엔진을 통해 컨테이너들의 모니터링과 명령어의 전달이 진행됨
  • 컨테이너들의 운영체제에 대한 접근은 읽기모드만 지원하여 상호간 영향을 줄임

두 번째 분류법

Type 1 가상화

  • 하드웨어 바로 위에 하이퍼바이저를 두고 가상화 수행
  • 가상화로 인한 성능 저하가 상대적으로 적음
  • 가상머신 입장에서 운영 안정성 및 보안성 측면에서 Type2에 비해 우수
  • 가상머신의 관리를 위한 별도의 운영 UI가 필

Type 2 가상화

  • Host OS 위에 하이퍼바이저를 두고 가상화
  • Host OS 위에 존재하는 하이퍼바이저로 인해 성능 저하 발생
  • 가상머신 입장에서 보안성 보장에 대해 우려할 수 있음
  • 호스트 운영체제 위에서 가상화 소프트웨어를 운영하므로 사용성 우수

세 번째 분류법

반가상화

  • 가상화를 위해 Guest OS의 변경 수행
  • 하이퍼 콜을 통해 변경된 Guest OS와 하이퍼바이저가 협력하여 하드웨어 연동
  • 가상머신이 가상환경에 실행되는 상황에 대한 파악 가능

전가상화

  • 가상화를 위한 Guest OS 변경 불필요
  • CPU의 가상화 지원기술(Trap 기능)을 활용하여 하이퍼바이저의 성능 높임
  • 가상머신 내에서는 가상환경 실행 여부를 파악하기 어려움
Comments