[Born2beRoot] 가상머신이란?

bolee·2022년 3월 31일
0

42seoul

목록 보기
1/27

가상머신 (virtual machine, VM)

컴퓨터 환경을 소프트웨어로 구현한것

가상머신의 종류

  1. 시스템 가상머신

    • 완전한 시스템 플랫폼 제공
    • 완전한 운영 체제(OS) 실행 지원
  2. 프로세스 가상머신

    • 단일 프로그램 실행 환경 제공 (단일 프로세스 제공)

많이 사용되는 Virtulabox는 시스템 가상머신으로 분류될 수 있다.

시스템 가상머신

물리적으로 하드웨어 시스템에 구축되어 자체 CPU, 메모리, 네트워크 인터페이스 및 스토리지를 갖추고 가상 컴퓨터 시스템으로 작동하는 가상환경

하이퍼바이저를 통해 가상화를 제공 받음

하이퍼바이저 (hypervisor)

호스트 컴퓨터에서 다수의 운영체제를 동시에 실행하기 위한 논리적 플랫폼(platform)을 말한다.
즉, 가상머신을 생성하고 구동하는 소프트웨어로 이로 인해 가상머신의 리소스를 적절하게 분배하고 프로비저닝하여 가상머신을 사용할 수 있게 한다.
하이퍼바이저는 가상화 머신 모니터(vitual machine monitor) 또는 가상화 머신 매니저(vitual machine manager)라고도 부린다.(줄여서 VMM)

하이퍼바이저는 일반적으로 2가지로 나뉜다.

  1. 타입 1 (native 또는 bare-metal)

    • 운영체제가 프로그램을 제어하듯 하이퍼바이저가 해당 하드웨어에서 직접 실행되며 게스트 운영체제는 하드웨어 위에서 2번째 수준으로 실행된다.
    • Xen, Citrix의 XenServer, VMware의 ESX Server, L4 마이크로커널, TRANGO, IBM의 POWER 하이퍼바이저(PR/SM), 마이크로소프트의 하이퍼-V, 패러럴서버, 썬의 로지컬 도메인 하이퍼바이저 등이 있다
  2. 타입 2 (hosted)

    • 일반 프로그램과 같이 호스트 운영체제에서 실행되며 VM 내부에서 동작되는 게스트 운영체제는 하드웨어에서 3번째 수준으로 실행된다.
    • VMware Server, VMware Workstation, VMware Fusion, QEMU, 마이크로소프트의 버추얼 PC와 버추얼 서버, Oracle(SUN)의 버추얼박스, SWsoft의 Parallels Workstation과 Parallels Desktop 등이 있다.

프로비저닝 (provisioning)

사용자의 요구에 맞게 시스템 자원을 할당하고 배치, 배포해두었다가 필요 시 시스템을 즉시 사용할 수 있도록 미리 준비해 두는 것을 말한다.

수동으로 처리하는 '수동 프로비저닝'과 자동화 툴을 이용해 처리하는 '자동 프로비저닝'이 있다.

시스템 가상머신의 장점

  1. 하나의 컴퓨터 자원을 여러 사용자들에게 나누어주는 상황에서 자원 간 상호 간섭을 없애고 싶을 때 사용할 수 있다.
    (ex. 클라우드)

  2. 컴퓨터의 다른 부분에 영향을 주지 않는 독립 환경을 만들고 싶을 때 사용할 수 있다.
    (ex. 악성 코드 분석, 신뢰할 수 없는 운영체제 설치)

  3. 서버 통합 시 사용할 수 있다.
    (ex. 배포 시 소량을 리소스만 사용하기 때문에 서버를 가상화하여 각 물리 서버에 많으 가성 서버를 배치하여 하드웨어 활용률 개선)

참고
가상머신: https://ko.wikipedia.org/wiki/%EA%B0%80%EC%83%81_%EB%A8%B8%EC%8B%A0
하이퍼바이저: https://ko.wikipedia.org/wiki/%ED%95%98%EC%9D%B4%ED%8D%BC%EB%B0%94%EC%9D%B4%EC%A0%80
프로비저닝: https://ko.wikipedia.org/wiki/%ED%94%84%EB%A1%9C%EB%B9%84%EC%A0%80%EB%8B%9D

0개의 댓글