IT용어위키



서버 가상화

Server Virtualization

분류

  • 가상머신 방식(하이퍼바이저 이용)
    • 호스트 가상화
    • 베어메탈 가상화(aka. 네이티브 가상화)
      • 전가상화
      • 반가상화
  • 컨테이너 방식

가상머신 방식

하이퍼바이저를 이용한다. 하이퍼바이저 가상화라고도 한다.

호스트 가상화

호스트 OS 위에서 게스트 OS를 구동시키는 방식

가상환경 가상환경
애플리케이션 애플리케이션
미들웨어 미들웨어
게스트 OS 게스트 OS
하이퍼바이저
호스트 OS
하드웨어
  • 장점 : 가상의 하드웨어를 에뮬레이팅하기 때문에 호스트 운영체제에 크게 제약사항이 없음
  • 단점 : OS위에 OS가 얹히는 방식이기 때문에 오버헤드가 클 수 있음
  • 예시) VMware Workstation, VMware Server, VMware Player, MS Virtual Sever, Virtual PC, Virtual Box, Paralles Workstation, QEMU 등

베어메탈 가상화

호스트 OS 없이 하드웨어에 하이퍼바이저를 설치하는 방식

가상환경 가상환경
애플리케이션 애플리케이션
미들웨어 미들웨어
게스트 OS 게스트 OS
하이퍼바이저
하드웨어
  • 장점 : 별도의 Host OS가 없기 때문에 오버헤드가 적고, 하드웨어를 직접 제어하기 때문에 효율적으로 리소스를 사용할 수 있음
  • 단점 : 자체적으로 머신에 대한 관리 기능이 없기 때문에 관리를 위한 컴퓨터나 콘솔 필요
  • 예시) Xen, MS hyper-V, citrix, Linux KVM 등

전가상화와 반가상화

현재는 전가상화와 반가상화의 차이가 매우 모호해짐
  • 완전한 전가상화도 아니고 완전한 반가상화도 아닌, 적절히 조합된 형태로 구성

전가상화

Full-Virtualization
  • 하드웨어를 완전히 가상화 하는 방식으로 Hardware Virtual Machine 이라고도 불림
  • 하이퍼바이저를 구동하면 DOM0라고 하는 관리용 가상 머신이 실행되며, 모든 가상머신들의 하드웨어 접근이 DOM0을 통해서 이루어짐
    • 즉, 모든 명령에 대해서 DOM0가 개입을 하게되는 형태입니다.
  • 하이퍼바이저는 가상화된 OS에 무관하게 각 OS들이 내리는 명령어 인식 가능
    • ex) 윈도우 에서 Add, 리눅스 에서 ADD, 맥에서 add 라는 명령어를 내렸을때 하이퍼바이저가 “더해라”라고 번역 하여 명령어로 번역하여 실행
  • 하이퍼바이저는 이러한 번역 역할 뿐만 아니라 가상화된 OS들에게 자원을 할당해주는 역할도 담당
  • 장점 : 하드웨어를 완전히 가상화하기 때문에 Guest OS 운영체제의 별다른 수정이 필요 없음
  • 단점 : 하이퍼바이저가 모든 명령을 중재하기 때문에 성능이 비교적 느림

반가상화

Para-Virtualization
  • 반가상화는 전가상화와 달리 하드웨어를 완전히 가상화 하지 않음
  • 전가상화의 가장큰 단점인 성능저하의 문제를 해결하기 위해 하이퍼콜(Hyper Call)이라는 인터페이스를 통해 하이퍼바이저에게 직접 요청
  • 가상화된 각 OS들이 각각 다른 번역기를 가진 형태로, 그 번역기는 각각 다른 OS에서 내리는 각각 다른 명령어를 "더해라"라고 번역
  • 장점 : 모든 명령을 DOM0를 통해 하이퍼바이저에게 요청하는 전가상화에비해 성능이 빠름
  • 단점 : 하이퍼바이저에게 Hyper Call 요청을 할 수 있도록 각 OS의 커널을 수정해야하며 오픈소스 OS가 아니면 반가상화를 이용하기가 쉽지 않음

컨테이너 가상화

호스트 OS위에 컨테이너관리 소프트웨어를 설치하여, 논리적으로 컨테이너를 나누어 사용하는 방식

가상환경 가상환경
애플리케이션 애플리케이션
미들웨어 미들웨어
컨테이너 관리 소프트웨어
OS
하드웨어
  • 장점: 컨테이너 가상화는 오버헤드가 적어 가볍고 빠름
  • 단점: 보안적으로 완전 격리가 되지 않아 오류 전파 및 침해 가능성
  • 예시) 도커, 쿠버네티스

참고 문헌


  출처: IT위키(IT위키에서 최신 문서 보기)
  * 본 페이지는 공대위키에서 미러링된 페이지입니다. 일부 오류나 표현의 누락이 있을 수 있습니다. 원본 문서는 공대위키에서 확인하세요!