쿠버네티스란?
📖 주요 내용
쿠버네티스란?
- 구글의 주도로 개발된 컨테이너 운영 자동화를 위한 컨테이너 오케스트레이션 시스템
- 컨테이너 오케스트레이션 조작을 위한 API와 CLI 도구가 함께 제공됨
- 컨테이너 호스트 관리, 서버 리소스의 빈(bin) 상태를 고려한 컨테이너 배치, 스케일링 및 로드 밸런서, 상태 모니터링, 시크릿 관리 등의 기능을 제공
kubernetes는
k8s
,kube
로 호칭하는 일도 많다.
도커의 번성과 쿠버네티스의 탄생
- 도커가 이용되기 시작했을 때 컨테이너 실행 및 삭제를 빠르게 할 수 있다는 것이 장점이었으나 시스템별로 다양한 컨테이너를 운용하기에는 어려움이 있었음
- 배포와 컨테이너 배치 전략, 스케일 인/아웃, 서비스 디스커버리, 운용 용이성 등의 과제가 존재함
- 그럼에도 불구하고 도커는 확장세를 이어가며 도커 컴포즈와 도커 스웜을 개발함
- 다양한 컨테이너 오케스트레이션 시스템이 등장하면서 그 중 특히 구글이 OSS로 공개한 쿠버네티스가 주목받음
- 쿠버네티스는 구글의 컨테이너 운용 노하우를 바탕으로 개발됨
- 많은 클라우드 플랫폼에서 쿠버네티스를 지원
- 구글 클라우드: GKE
- Azure: AKS
- AWS: EKS
쿠버네티스의 위상
- 도커는 컨테이너 관리를 위해
dockerd
와 CLI로 구성됨 - 도커 컴포즈는 여러 컨테이너를 배포할 수 있었지만 단일 호스트에서 관리됨
- 도커 스웜은 여러 호스트를 묶어 기본적인 컨테이너 오케스트레이션을 구현함
- 쿠버네티스는 도커 스웜의 기능을 통합하고 좀 더 고도로 관리할 수 있게 구현함