[Cloud] Kubernetes, Docker

ㅇㅅㅇ·2024년 1월 8일
0

Cloud

목록 보기
1/1
  • 컨테이너: 앱이 구도오디는 환경까지 감싸서 실행할 수 있도록 하는 격리 기술
  • 컨테이너 런타임: 컨테이너를 다루는 도구
  • 도커: 컨테이너를 다루는 도구 중 가장 유명한 것
  • 쿠버네티스: 컨테이너 런타임을 통해 컨테이너 오케스트레이션 하는 도구
  • 오케스트레이션: 여러 서버에 걸친 컨테이너 및 사용하는 환경 설정을 관리하는 행위

도커는 한개의 컨테이너를 관리하는데 최적화 되어있고, 
쿠버네티스는 여러 개의 컨테이너를 서비스 단위로 관리하는데 최적화 되어있다. 

1. Docker

컨테이너 기반의 오픈소스 가상화 플랫폼

컨테이너란?
애플리케이션과 애플리케이션을 구동하는 환경을 HostOS로부터 격리한 공간

  • 컨테이너는 보통 마이크로서비스(거대한 어플리케이션을 기능별로 나누어 변경/조합 가능한 서비스)로 사용된다.
  • 컨테이너를 사용하면 하나의 큰 어플을 서비스 단위로 잘라 빠르게 배포할 수 있기 때문에 마이크로서비스라 설명된다.
  • 또한 각각 분리해서 사용하므로, 개별 변경사항이 분리된 다른 기능들에 영향을 미치지 않는다.

컨테이너는 독립적이고, 동적이다.

  • 매번 새로운 서비스를 만들 떄마다 새로운 서비스를 설정할 필요가 없이 컨테이너 수를 늘리고 줄일 수 있다.
  • 하나의 서버에서 각기 다른 환경의 컨테이너를 설정할 수 있다

2. Kubernetes


컨테이너 오케스트레이션 툴

오케스트레이션이란?
다수의 컨테이너 실행을 관리 및 조율하는 시스템

1) 자동화된 복구(self-healing)

컨테이너들을 모니터링하며, 컨테이너 중 하나라도 죽으면 쿠버네티스는 빠르게 재시작 시킨다.

2) 로드 밸런싱(load balancing)

유저 접속량에 따라 자동으로 컨테이너를 만들고 줄인다.

3) 무중단 서비스(Fault tolerance-FT)

점진적 업데이트를 제공해 서비스를 중단하지 않고도 애플리케이션을 업데이트 할 수 있다.

4) 호환성(Vendor Lock In 해결)

서로 다른 업체(Vendor)의 클라우드 제품 간에 호환 문제가 발생하여 이전하기 어려운 상황을 Vendor Lock In이라 한다. 쿠버네티스는 도커 컨테이너를 기반으로 하는 오픈소스이기 때문에, 사용자들이 특정 업체에 종속되지 않고 클라우드의 환경들을 이전할 수 있다.




Reference : https://wooono.tistory.com/109

0개의 댓글