ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 1-1. 도커를 시작하기 위해 vm이란?
    Docker 2018. 11. 11. 19:04

    도커 스터디를 시작하기전에 필요한 용어와 내용들을 정리한다.

    https://medium.com을 참고하여 순전히 개인 스터디를 위해 작성한 글이다.




    VM은 하이퍼바이저를 이용해 여러개의 운영체제를 하나의 호스트에서 생성해 사용하는 방식이다. 이러한 여개의 운영체제는 가상머신이라는 단위로 구별되고, 각 가상 머신에는 우분투, CentOs등의 운영체제가 설치되어 사용된다. 


    하이퍼바이저에 의해 생성되고 관리되는 운영체제는 게스트운영체제(Guest OS)라고 하며, 각 게스트 운영체제는 다른  게스트운영체제와는 완전 독립된 공간과 시스템 자원을 할당 받아 사용한다. 대표적인것이 VirtualBox, VMware가 있다. 


    VM (Virtual machines)

    VM 프로그램을 실제 컴퓨터처럼 실행한다. VM은 하이퍼바이저를 통해 물리적 기계 위에서 실행 된다.

    hosted 하이퍼 바이저와 bare metal 하이퍼바이저에 의해서 실행된다.

     


    하이퍼바이저

    VM이 실행되는 소프트웨어, 펌웨어, 하드웨어를 말한다.


    호스트머신 (Host machine)

    VM에 램, CPU등의 자원을 제공한다.


    호스트OS/게스트OS

    실제 컴퓨터가 돌아가는 운영체제가 호스트OS 이고, VM(guest)가 돌아가는 os을 게스트OS라고 한다. 당연....


    게스트 머신 (Guest machine)

    호스트 머신에서 하이퍼바이저를 이용해서  돌아가는 VM을 보통 게스트 머신이라고 부른다.
    게스트 머신은 애플리케이션을 실행하기 위한 모든 시스템바이너리, 라이브러리, 가상화된 네트워크 어댑터, 저장소, CPU등의 모든 하드웨어 스택, 어플리케이션을 포함한다.
    자신의 온전한 게스트 운영체제를 갖는다.

    hosted 하이퍼바이저

    호스트를 가진 하이퍼바이저는 호스트 OS에서 돌아간다.
    VM은 직접 하드웨어에 접근할 수 없어 호스트OS을 통해 접근한다.
    호스트OS가 있기 때문에 하드웨어 호환성이 높지만 단점으로는 부가적인 단계가 있기에 리소스 오버헤드가 발생하여 퍼포먼스가 떨어질 수 있다.
    VirtualBox, VMware등이 있다.


    bare metal 하이퍼바이저

    자신만의 디바이스 드라이버를 가지고 입출력, 프로세싱, OS 관련 컴포넌트들과 직접 교류하여 처리한다.
    hosted 하이퍼바이저랑 반대로 하드웨어 호환성이 낮지만 직접 하드웨어와 교류하기 때문에 퍼포먼스가 더 좋다.


    "왜 하이퍼바이저가 VM과 호스트 머신 사이에 필요한가?"

    VM 자신의 운영체제(게스트 운영체제)를 실행하고 관리 할 수 있게끔 도와주는 역할과 호스트머신들이 자원들을 VM에게 분배 할 수 있도록 도와주는 역할

    아래그림처럼 VM은 가상하드웨어, 커널(OS), APP 유저공간을 포함한다.




    'Docker' 카테고리의 다른 글

    2-1. 도커 명령어  (1) 2018.11.13
    1-2. 도커란?  (0) 2018.11.11

    댓글

Designed by Tistory.