DaemonSet
DaemonSet이란 각 노드마다 단 하나의 Pod을 배포하고 관리하는 Kubernetes 리소스이다.
노드가 추가되면 자동으로 Pod도 추가되며, 노드가 삭제되면 Pod도 삭제된다.
DaemonSet의 용도
DaemonSet은 일반적으로 모니터링 에이전트, 로그 수집기, 네트워크 컴포넌트, 보안 에이전트등에 사용된다.
ex) Prometheus Node Exporter, Datadog, Fluentd, Logstash
DaemonSet의 구조
apiVersion: apps/v1
kind: DaemonSet
metadata:
name: monitoring-daemon
spec:
selector:
matchLabels:
app: monitoring-agent
template:
metadata:
labels:
app: monitoring-agent
spec:
containers:
- name: agent
image: my-monitoring-agent:latest
selector와 template.labels가 일치해야함에 주의한다.
DaemonSet의 동작 방식
kuberenets v1.12 이전에는 nodeName필드 지정으로 Pod를 배치하였으나 v1.12이후부터는 NodeAffinity와 기본 스케줄러를 이용하여 노드를 배치한다.
'CKA' 카테고리의 다른 글
(TIL) Scheduler Profiles (0) | 2025.03.30 |
---|---|
(TIL) Kubernetes Static Pods (0) | 2025.03.26 |
(TIL) Kubernetes에서의 Resource Request & Limits (0) | 2025.03.26 |
(TIL) Kubernetes Taints & Toleration 와 Node Affinity (0) | 2025.03.25 |
(TIL)Kubernetes의 Node Selector와 Node Affinity (0) | 2025.03.25 |