Kubernetes Controller란??
-> Basic Object를 생성하고 관리하는 역할을 한다.
1. Deployment
2. ReplicaSet
3. StatefulSet
4. DaemonSet
5. Job
컨트롤러의 역할을 구분하면서 해당하는 컨트롤러들을 분류해보자.
- 역할
1. Auto-Healing
Pod 의 문제가 생기거나 실행되는 노드에 문제가 생기면 해당 Pod를 다시 실행하는 기능 ( Replicaset, Daemonset이 여기에 해당)
2. Software Update
Pod에 대한 버전 및 자동 업데이트를 담당하며 롤백을 할수 있다.(Deployment)
3. Auto-Scaling
Pod에 리소스가 부족할때 추가적으로 Pod를 생성하고 분산하여 Pod를 죽지않게한다.
4. Job
일시적인 작업을 처리하거나 단순 실행하는 코드를 작동할때 Pod를 만들고 완료된 후에는 해당 Pod를 종료한다. (Job)
Deployment?
- stateless 어플리케이션을 배포하는데 가장 기본이되는 Controller.
- Replicaset을 관리하게되며 배포를 위한 기능들이 제공된다.
- Deployment Controller는 배포된 인스턴스들을 모니터링하고 노드가 Down되거나 삭제되었을 경우 Deployment Controller가
클러스터의 다른 노드로 옮겨진다.
Replicaset?
- Pod 를 복제생성하고 복제된 Pod의 개수를 지속적으로 유지하는 Controller
'MSA > Kubernetes' 카테고리의 다른 글
Kubernetes 기본개념 - 구조 (0) | 2021.11.18 |
---|---|
Kubernetes 개념 - Object (0) | 2021.10.20 |
Service Mesh란?? (0) | 2021.10.19 |