쿠버네티스 : 컨테이너 는 가상화 기술 대비 집적도 수배 이상 높은 게 사실일까요?
기존 가상화 기술은 무거운 가상 머신의 이미지 사이즈, 표준이 없이 IaaS 클라우드 마다 서로 다른 가상화 기술 구현 그리고 시간이 지남에 따라 달라지는 가상머신 이미지 등 여러 가지 사용에 어려움을 가지고 있었습니다.
게다가 가상화 기술은 게스트 OS (Guest OS) 를 반드시 필요로 할 수 뿐이 없는데요.
이러한 게스트 OS 때문에 OS 라이선스 비용, OS 에 탑재 되는 보안 소프트웨어 (접근제어, 방화벽 등) 비용, 업데이트와 패치 등의 유지보수 비용, 관리이 되지 않고 계속 많아지는 가상머신의 수 등의 문제점도 있었습니다.
컨테이너 기술은 가상화 기술 대비 가볍고, 빠르며 관리하기 쉽다는 장점이 있는데요.
쿠버네티스 환경에서 컨테이너 와 가상화 기술의 집적도 비교를 통해서 컨테이너가 우월할 수 뿐이 없는 이유를 설명 드리도록 하겠습니다.
유튜브에서 지금 바로 쿠버네티스 데모를 보시죠.
클라우드는 기술이 급변하는 대표적인 분야로 최근에는 무늬만 클라우드가 아닌 클라우드 네이티브 기술들을 통한 진짜 클라우드로 변화 하고 있습니다.
클라우드 네이티브는 쿠버네티스 기술을 바탕으로 하여 클라우드 장점을 극대화한 개발, 운영 그리고 관리까지 포괄하는 표준 오픈소스 기술 스택입니다.
IaaS 클라우드는 가상화 기술을 기반으로 구축되었다면 PaaS 기반 클라우드에서는 컨테이너 와 쿠버네티스 가 핵심 기술입니다.
컨테이너 기술이 가상화 기술 보다 집적도가 높습니다.
가상머신 환경에서는 가상머신에 OS를 설치할 필요가 있습니다. 또한, scale-up 을 통해 확장을 하기 때문에 하나의 가상머신에서의 확장이 제한적입니다.
하지만, 컨테이너 환경에서는 컨테이너에 OS를 설치할 필요가 없고, scale-out을 통해 확장을 하기 때문에 더 효율적으로 자원을 이용할 수 있습니다.
쿠버네티스 데모에 대한 발표 자료 다운로드
이런 고민들에 대한 솔루션이 있을까요?
- 가상화 대비 집적도가 수배 이상 높은게 사실인가요?
- 가상화 기술 대비 컨테이너는 가볍고, 빠르고 , 관리하기 쉬운가요?
- 동일한 장비에서 집적도가 얼마나 차이가 있는지 볼수 있을까요?
- 컨테이너는 왜 가상화 기술보다 집적도 높은 건가요?
데모 시나리오 : 같은 하드웨어에서 웹서버와 WAS 를 가상화 와 컨테이너 에 얼마나 올릴 수 있는 지 비교
동일한 사양의 서버에서 KVM을 구성하고 VM을 생성 한 뒤, Tomcat 인스턴스를 VM당 4개씩 사용할 수 있는 메모리 최대치까지 설치하고 메모리 사용률을 모니터링합니다.
동일한 사양의 서버에서 컨테이너로 Tomcat을 사용할 수 있는 메모리 최대치까지 배포하면서 메모리 사용률을 모니터링합니다.
VM과 컨테이너에 각각 기동 중인 Tomcat의 개수를 비교합니다.
해당 페이지는 비교 테스트에 대한 결과입니다.
가상머신 환경에서는 16개의 톰캣 인스턴스를 띄우는 것이 가능했고, 컨테이너 환경에서는, 40개의 톰캣 인스턴스를 띄우는 것이 가능했습니다.
데모 아키텍처 : 오픈시프트 로 구축하는 자동자원확장 시스템
호스트 OS 위에 별도의 Hypervisor 없이, OpenShift 에서 제공하는 Container Runtime을 통해 톰캣 인스턴스 컨테이너가 기동되는 구성입니다.
클라우드 개념 뽀개기와 데모 그리고 원격 실습까지 무료 체험
References & Related Links
- 쿠버네티스 소개 페이지 – http://www.opennaru.com/opensource/kubernetes/
- 유튜브 쿠버네티스 데모 : 가상화 기술 Vs 컨테이너 의 집적도 비교 데모 – https://youtu.be/N4EiF5NFcv0