Infrastructure & Systems/Kubernetes

[Kubernetes] DaemonSet YAML Sample

EndiYou 2025. 3. 24. 14:07

k8s cluster 전체 노드에 특정 Pod를 실행시키고자 할 때 사용한다. 로그 수집, 모니터링과 같이 항상 실행해 두어야 하는 Pod를 생성할 때 사용한다.


Sample YAML

apiVersion: apps/v1
kind: DaemonSet
metadata:
  name: fluentd-elasticsearch
  namespace: kube-system
  labels:
    k8s-app: fluentd-logging
spec:
  selector:
    matchLabels:
      name: fluentd-elasticsearch
  updateStrategy:
    type: RollingUpdate	# roller update, on delte 중 선택
  template:
    metadata:
      labels:
        name: fluentd-elasticsearch
    spec:
      containers:
      - name: fluentd-elasticsearch
        image: fluent/fluentd-kubernetes-daemonset:elasticsearch
        env:
        - name: testenv
          value: value
        resources:
          limits:
            memory: 200Mi
          requests:
            cpu: 100m
            memory: 200Mi

 

클러스터에서 기본적으로 배포하는 DaemonSet

  • DaemonSet 리스트 출력
k get daemonset -A
NAMESPACE     NAME           DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR            AGE
kube-system   calico-node    5         5         5       5            5           kubernetes.io/os=linux   5d14h
kube-system   kube-proxy     5         5         5       5            5           kubernetes.io/os=linux   5d14h
kube-system   nodelocaldns   5         5         5       5            5           kubernetes.io/os=linux   5d14h
  • DaemonSet이 각 노드에 1개씩 배포되어 있는지 확인
k get po -l k8s-app=node-local-dns -A -o wide
NAMESPACE     NAME                 READY   STATUS    RESTARTS        AGE     IP            NODE      NOMINATED NODE   READINESS GATES
kube-system   nodelocaldns-4mzb4   1/1     Running   1 (2d21h ago)   5d14h   10.0.41.217   worker2   <none>           <none>
kube-system   nodelocaldns-92n8w   1/1     Running   1 (2d21h ago)   5d14h   10.0.40.212   worker1   <none>           <none>
kube-system   nodelocaldns-bwcck   1/1     Running   1 (2d21h ago)   5d14h   10.0.40.62    master1   <none>           <none>
kube-system   nodelocaldns-t26wm   1/1     Running   5 (2d21h ago)   5d14h   10.0.41.166   master2   <none>           <none>
kube-system   nodelocaldns-v9ccm   1/1     Running   1 (2d21h ago)   5d14h   10.0.40.179   master3   <none>           <none>