kok202
쿠버네티스 입문 - 02 - 컨트롤러 3 - 데몬셋

2020. 4. 4. 02:54[정리] 기능별 개념 정리/Kubernetes

데몬셋

클러스터 전체 노드에 어떤 파드를 반드시 하나씩 설치해야하는 경우에 사용하는 컨트롤러.

클러스터에 새로운 노드가 설치되면 데몬셋이 동작하여 자동으로 해당 노드에 파드를 실행시켜준다.

클러스터에서 노드가 제거 될 경우 해당 노드에서 실행중이던 데몬셋 파드는 다른 노드로 이동하지 않고 그대로 사라진다.

주로 로그 수집기를 실행하거나 노드를 모니터링 해야하는 데몬이 필요한 경우에 사용된다.

 

 

 

데몬셋 Sample

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
  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

.spec.updateStrategy.type : RollingUpdate 또는 OnDelete 둘 중 하나를 선택할 수 있다.