여러개의 논리적, 물리적 object를 하나로 묶은것
High Performance, 고성능
High Availability, 고가용성
일반적으로 얘기하는 클러스터 → HA Cluster
Container Cluster = Kubernetes = Container Orchestration
Static(누가 요청해도 항상 같은것만 보여줌)
보통의 Frontend
html, css, js, picture
⇒ Rendering
Dynamic(사용자의 요청, 상황에 따라서 다른 컨텐츠 보여줌)
보통의 Backend
(Server Side)
컨테이너 기반의 분산 클러스터 환경을 제공
워크로드를 위해 컴퓨팅, 네트워킹 및 스토리지 인프라를 오케스트레이션
제공하는 기능
IaaS+PaaS
컨테이너 플랫폼, 마이크로 서비스 플랫폼, 이식성 있는 클라우드 플랫폼
제공하지 않는 기능
일반적인 PaaS의 모든 개념을 포함하고 있지 x
HW 레벨이 아니라 컨테이너 레벨에서 운영되기 때문에, PaaS 일부 기능만 제공
출처 : https://kubernetes.io/ko/docs/concepts/overview/components/
클러스터의 전체를 제어한다.
클러스터에 대한 전반적인 결정을 수행하고 클러스터 이벤트를 감지하고 이에 대응한다.
기본적으로 3대 이상 있는것이 좋다.
API Server(→ kubectl)
Kubernetes의 모든 구성 요소들은 Control Plane의 API Server와 메세지를 주고받는다.
Control Plane에 대한 Frontend를 담당한다.
etcd(키-값 저장소)
Kubernetes Cluster의 모든 정보 데이터를 저장하는 일관성과 고가용성을 지원하는 곳
Kubernetes Controller Manager
API 서버를 통해 클러스터의 상태를 감시하고, 필요한 상태로 이행한다.