Kubernetes Architecture: Deep Dive - Part 2
- Kubernetes는 컨테이너를 대규모로 실행하기 위한 주된 목적을 가지고 있습니다. 🤝
- Kubernetes는 컨테이너를 직접 실행하지 않지만, Pod라는 추상 계층을 사용하며, Pod는 실행 가능한 최소 단위입니다. 📦
- Kubernetes는 컨테이너를 물리적 서버 또는 가상 머신(클라우드 환경)에 실행합니다. 🖥️
- Kubernetes는 컨테이너의 관리와 조정을 위해 Control Plane라고 하는 또 다른 구성 요소를 사용합니다. ✈️
- Control Plane은 클러스터의 상태에 대한 모든 결정을 내립니다. 예: Pod 스케줄링, 새로운 Kubernetes 노드 추가, CPU 또는 메모리 사용량에 따라 Pod 수의 자동 확장. 🧠
- Control Plane이 중단되더라도 애플리케이션은 시간이 지나서야 문제가 발생합니다. ⏳
- Control Plane에는 상태 정보를 저장하는 데 사용되는 etcd와 같은 구성 요소가 있습니다. 💾
- Etcd는 키-값 저장소이며 강한 일관성을 제공합니다. 🔒
- Kubernetes는 높은 가용성과 고지성을 위해 컴포넌트(예: Etcd)를 복수 개 실행합니다. 🛡️
- Etcd는 데이터가 항상 일관되도록 분산된 클러스터에 작동합니다. 📶