Search
💾

[CKA] 21. DaemonSets

Date
2024/11/30
Category
Devops
Tag
Kubernetes
CKA
Scheduling
목차

 DaemonSets

DaemonSets는 Pod의 Replica를 클러스터 내 모든 Node에 항상 존재하게 한다.
클러스터에 새 노드가 추가되면 Pod 복제본이 자동으로 해당 노드에 추가된다
마찬가지로 노드가 제거되면 Pod도 같이 제거된다

 UseCase

모든 노드에서 실행되어야 하는 요소들을 DaemonSet으로 구성하여 클러스터 변화에 따라 사용자의 작업이 따로 이뤄지지 않도록 한다.
Monitoring Agent
Logs Viewer
kube-proxy
Networking
vivenet

 Definition File

Replicaset과 정의 파일이 유사함
# daemon-set-definition.yaml apiVersion: apps/v1 kind: DaemonSet metadata: name: monitoring-daemon spec: selector: matchLabels: app: monitoring-agent template: metadata: labels: app: monitoring-agent spec: containers: - name: monitoring-agent iamge: monitoring-agent
YAML
복사

 How does it work

~ v1.12

kubernetes v1.12 까지는 각 Pod에서는 spec에 nodeName 속성을 가져 DamonSet을 동작했다

v1.12 ~

kubernetes v1.12 부터는 Default Scheduler와 Node Affinity를 사용하여 Pod를 각 노드에 스케줄링한다.