1. 쿠버네티스란?
- 쿠버네티스는 컨테이너화된 애플리케이션의 배포, 확장 등을 관리하는 것을 자동화하기 위한 플랫폼(컨테이너 오케스트레이션 엔진)
- 도커 단독으로는 도커가 설치된 호스트(도커 호스트)를 동시에 여러 대 동작시키거나 중앙에서 통합, 관리할 수 없음
- 컨테이너 오케스트레이션 엔진에는 도커 스웜, 아파치 메소스가 있지만 쿠버네티스가 가장 인기가 많다고 하고 표준이 되고있다고 함
2. 쿠버네티스의 역사
- 구글 내부적으로 사용하던 컨테이너 클러스터 관리 도구 'Borg' 에서 아이디어를 얻어 만들어진 오픈 소스 소프트웨어
- 리눅스 재단 산하의 클라우드 네이티브 컴퓨팅 파운데이션(CNCF : Cloud Native Computing Foundation) 으로 이관되었으며, 호스트로서 개발을 주도하고 있음
- 구글이 Google Kubernetes Engine 으로 먼저 서비스로 제공했고 이후에 MS Azure Container Service, Amazon Elastic Kubernetes Service 가 이어서 출시 되었고, 모두 GA(Generally Available, 일반적으로 사용 가능한 서비스) 가 됨
3. 쿠버네티스를 사용하면 할 수 있는 것
- 선언적 코드를 사용한 관리 (IaC : Infrastructure as Code)
- 코드로 써 관리함 (YAML 문법)
- 스케일링/오토 스케일링
- 스케줄링
- 어떤 쿠버네티스 노드에 배포할 것인지 결정
- 리소스 관리
- CPU, 메모리의 여유 리소스 상태에 따라 쿠버네티스 노드가 자동으로 추가 및 삭제
- 자동화된 복구
- 헬스 체크의 성공 여부를 보고 컨테이너 자동으로 재배포 할 수 있음
- 로드 밸런싱과 서비스 디스커버리
- 서비스 디스커버리는 마이크로서비스 끼리 참조할 때 사용하는 기능이라고 함
- 데이터 관리
- 쿠버네티스는 etcd를 사용하여 컨테이너의 설정 파일, 인증 정보, 데이터를 저장함
'Dev > Kubernetes' 카테고리의 다른 글
[Kubernetes & Docker] 4-1. GCP 에서 다시 한번 환경 설정 (0) | 2022.02.14 |
---|---|
[Kubernetes & Docker] 3-2. GKE 환경 셋팅 (0) | 2022.02.14 |
[Kubernetes & Docker] 3-1. 쿠버네티스 환경 선택 (0) | 2022.02.14 |
[Kubernetes & Docker] 1. 도커 복습 (0) | 2022.02.13 |
[Kubernetes & Docker] 0. Docker Tutorial 다시 보기 (0) | 2022.01.22 |