기 능 일 지

가상화 본문

VIRTIUALZATION

가상화

EnergyKing Park 2024. 7. 2. 18:16

HOST OS 가상화

물리적 하드웨어 위에 OS 설치하고, 그 위에 가상화 소프트웨어와 가상머신을 실행한다. 물리적 기계 위에 직접 동작하는 OS = Host OS 가상 머신에 설치된 OS = Guest OS

장점

  1. 가상의 하드웨어를 에뮬레이팅 하기 때문에 호스트 운영체제에 크게 제약사항이 없다.
  2. 기존의 컴퓨터 환경을 그대로 사용한 상태에서 서버뿐만 아니라 노트북과 같은 환경에서도 쉽고 편리하게 구현 가능하다.

단점

  1. 오버헤드가 많이 발생한다.

HYPER-V 가상화

하이퍼바이저 위에서 가상화 기술 구현 (하이퍼바이저란? 다수의 운영체제를 구동할 수 있도록 공유 컴퓨팅 자원을 관리하고 가상 머신들을 컨트롤하는 중간 관리자 소프트웨어) 가상머신이 독립한 호스트 시스템과 동일하게 행동 현재 서버 가상화 기술에서 주류 방식으로 사용 하드웨어 접근 수준에 따른 방식의 차이로 전가상화, 반가상화로 분류

장점

  1. 별도의 Host OS가 없기에 오버헤드가 적고, 하드웨어를 직접 제어하기 때문에 효율적으로 리소스 사용 가능

단점

  1. 자체적으로 머신에 대한 관리 기능이 없어서 관리를 위한 컴퓨터나 콘솔(CLI)이 필요

Full Virtualization (전가상화)

하드웨어를 완전히 가상화 하는 방식으로 호스트OS를 통해 하드웨어 명령 전달한다. 그리고 하이퍼바이저를 베어메탈에 구동하면 DOM0이라는 관리용 가상머신이 구동된는데, 모든 가상머신의 하드웨어 접근을 관리

전달과정

  1. 게스트OS가 하드웨어 접근하면서 제어를 요구
  2. CPU가 가상화가 지원가능한지 아닌지를 확인
  3. 지원을 하지 않으면 게스트OS는 아예 운영 할 수 없음, 지원 가능하면 HW제어를 요구하고, 이후 HW제어가 가능

장점

  1. 게스트OS의 별다른 수정없이 사용 가능, 게스트OS 전체를 가상화 함으로 이식성이 높아 다양한 운영체제 설치 가능

단점

  1. 하이퍼바이저가 모든 명령을 중재하고 게스트OS에서 요청하는 하드웨어 명령이 운영체제를 통해 수행되는 구조이기 때문에 성능이 느림

Paravirtualization (반가상화)

반가상화는 전가상화의 단점을 해결하기 위해 만들어 졌다. 하이퍼바이저를 통해 하드웨어 명령을 전달하고 하이퍼바이저는 단지, 게스트OS들에게 자원을 어떻게 분배할지 같은 관리만 한다. 게스트OS 커널을 수정(=코드를 까서 수정)하여 번역할 수 있도록 했다.

장점

  1. DOM0을 통해 하이퍼바이저에게 모든명령을 요청하지 않고, 하이퍼콜이라는 인터페이스로 직점 하이퍼바이저에게 요청, 게스트OS에서 요청하는 하드웨어 명령이 하이퍼바이저에서 직접 수행되기에 상대적으로 성능 효율이 높다.

단점

  1. 수정된 게스트OS가 필요하여 상대적으로 범용적 OS 활용이 어렵다.

전가상화와 반가상화의 차이점

http://s.no/ 전가상화 반가상화

1 가상 머신은 수정되지 않은 OS를 실행하면서 완전히 격리된 방식으로 명령 실행을 허용한다. 가상 머신은 OS의 완전한 격리를 구현하지 않고 OS가 변경될 때 허용되는 다른 API를 제공한다.
2 안전하지 않다. 전가상화 보다는 안전하다
3 바이너리 변환과 직접적인 접근 방식을 운영 기술로 사용한다. 작업을 위해 컴파일 타임에 하이퍼콜을 사용한다.
4 속도가 느리다. 전가상화 보다는 속도가 빠르다.
5 호환성이 떨어진다. 호환성이 높지 않다.
6 간편하지 않다. 전가상화 보다는 간편하다.

컨테이너형 가상화

컨테이너형은 위에 말한 가상화랑 다르게 하드웨어를 가상화 하는 방식이 아니다. 다른 가상화 방식과 다르게 OS를 가상화하지 않고 소프트웨어를 바로 가상화하는 기술이다. 프로세스를 격리시키기 때문에 가볍고 빠르고 성능적으로도 거의 손실이 없다. 하나의 서버에서 여러 개의 컨테이너를 실행하면 서로 영향을 주지 않고 독립적으로 실행되기 때문에, 성능 좋고 가벼운 가상머신을 사용하는 느낌 이다.

'VIRTIUALZATION' 카테고리의 다른 글

HYPER-V  (0) 2024.07.02
VMNET  (0) 2024.07.02
Comments