도커를 사용한 애플리케이션 독립성과 확장성

mohadang·2022년 3월 13일
0

도커

목록 보기
1/26
post-thumbnail

도커를 사용하여 독립성, 쉬운 배포, 용량 절약

도커 이미지라고 하는 일종의 패키지로 만들어 운영 서버에 전달하기만 하면 되기에 배포가 쉬워진다.

컨테이너에서 사용되던 운영 서버에서 새롭게 패키지를 설치할 필요도 없으며 각종 라이브러리 설치 등으로 인한 의존성을 걱정할 필요도 없다.

가상 머신의 이미지와 달리 커널을 포함하고 있지 않기 때문에 이미지 크기가 그다지 크지 않다.
도커는 이미지 내용을 레이어 단위로 구성하며, 중복되는 레이어를 재사용할 수 있어서 애플리케이션 배포 속도가 매우 빨라진다.

가상 머신과 비교하였을때 OS나 애플리케이션을 생선하는것이 매우 간결하고 빠르다.

모놀리스

SW의 여러 모듈이 상호 작용하는 로직을 하나의 프로그램 내에서 구동시키는 방식을 모놀리스 애플리케이션이라고 한다. 프로그램 하나에 모든 로직이 들어 있기에 크기가 크다. 배포시 큰 파일을 전달해야 한다. 부분적으로 기능을 교체하는것도 불가능하다. 소규모 서비스에서는 이 방식이 어울릴지도 모르지만, 서비스의 기능이 복잡해지고 거대해질수록 SW 자체의 확장성과 유연성이 줄어든다는 단점이 있다

마이크로서비스

모놀리스 방식을 대체하기 위해 새롭게 떠오른 개념. 여러 모듈을 독립된 형태로 구성하기 떄문에 언어에 종속되지 않고 변환에 빠르게 대응할 수 있으며, 각 모듈의 관리가 쉬워진다. 컨테이너는 수 초 내로 생성, 시작이 가능할 뿐만 아니라 여러 모듈에게 독립된 환경을 동시에 제공할 수 있기 때문에 마이크로서비스 구조에서 가장 많이 사용되고 있는 가상화 기술이다
EX) 웹 서비스 : DB 컨테이너와 웹 서버 컨테이너로 분리할 수 있음, 웹 서비스에 부하가 발생할 시 마이크로서비스 구조의 웹 서버 컨테이너만을 동적으로 늘려서 부하를 분산할 수 있음

출처

  • 책 : 시작하세요 도커/쿠버네티스
profile
mohadang

0개의 댓글