가상머신 vs 컨테이너

이기현·2021년 1월 18일
0

Cloud Database

목록 보기
4/11

가상머신(VM)은 소프트웨어 기술(가상화)을 통해 각각의 사용자들에게 하드웨어(CPU,Memory,Storage 등)를 분배해서 각 사용자들이 자유롭게 OS 를 비롯한 프로그램을 독자적으로 실행 할 수 있게 함.

이용자는 실제 물리적 서버를 이용하는 것인지 가상 환경에서 컴퓨팅을 하는 것인지 알
수 없음

  • 하나의 서버를 여러 이용자에게 배분할 수도 있고, 여러 서버를 하나의 서버처럼
    이용할 수도 있어 컴퓨팅 자원의 사용 효율을 향상시키고 유연한 클라우드 서비스를
    가능하게 만드는 기술

컨테이너
소프트웨어 개발 환경과 구동 환경이 다를 경우에 생기는 문제점을 해결하기 위해서 어플리케이션과 구동 환경을 가상화 하는 기술 따라서 하나의 소프트웨어 개발환경에서 다양한 버전,환경의 개발을 구축할 수 있음

예를 들어 내 local 개발환경은 java8인데 어플리케이션 구동환경은 java11이라면 local 개발환경은 11로 맞춰주어야 개발이 가능하다. 하지만 컨테이너를 사용하면 구동환경이 가상화 되어 컨테이너상에서 실행이 되기때문에 java8환경에서도 java11, java13등의 환경도 실행이 가능하다

  • 어플리케이션과 구동환경 만을 가상화함으로써 가상머신에 비해 훨씬 가볍고 효율적이며
    안정적인 서비스 구현이 가능4)
  • 여러 개의 컨테이너들을 관리하기 위한 프로그램으로 최근에는 구글의 오픈소스
    플랫폼인 쿠버네티스가 표준으로 자리 잡고 있는 추세

profile
실력을 쌓아가는 하루하루

0개의 댓글