자격증/CKA

[CKA] Udemy 71. Daemon Sets

14ben 2024. 7. 13. 17:42
728x90

DaemonSets in Kubernetes

  • 지금까지 다양한 파드를 클러스터의 여러 노드에 배포했음.
  • ReplicaSet과 배포를 통해 애플리케이션의 여러 복사본을 다양한 작업자 노드에 사용할 수 있게 했음.
  • DaemonSet은 ReplicaSet과 유사하게 여러 인스턴스의 파드를 배포하는 데 도움을 줌.
  • 하지만 DaemonSet은 클러스터의 각 노드에 파드의 복사본을 하나씩 실행함.
  • 새로운 노드가 클러스터에 추가되면 파드의 복사본이 자동으로 그 노드에 추가됨.
  • 노드가 제거되면 파드도 자동으로 제거됨.
  • DaemonSet은 클러스터의 모든 노드에 항상 파드의 복사본이 존재하도록 보장함.

 

 

DaemonSet의 사용 사례

  • 클러스터의 각 노드에 모니터링 에이전트나 로그 수집기를 배포하여 클러스터를 더 잘 모니터링할 수 있음.
  • DaemonSet은 이러한 모니터링 에이전트를 클러스터의 모든 노드에 파드 형태로 배포하는 데 적합함.
  • 클러스터에 변경이 있을 때 모니터링 에이전트를 추가하거나 제거하는 것을 걱정할 필요가 없음.
  • DaemonSet이 이를 자동으로 처리해줌.

 

  • Kubernetes 아키텍처를 논의할 때
  • 클러스터의 모든 노드에 필요한 작업자 노드 구성 요소 중 하나인 kube-proxy가 있었음.
  • kube-proxy 구성 요소는 클러스터에서 DaemonSet으로 배포될 수 있음.
  • 네트워킹 솔루션인 Vivenet과 같은 네트워킹 에이전트를 클러스터의 각 노드에 배포하는 것도 좋은 사용 사례임.

 

DaemonSet 생성 방법

  • DaemonSet 생성은 ReplicaSet 생성 프로세스와 유사함.
  • 템플릿 섹션 아래에 중첩된 파드 사양과 DaemonSet을 파드에 연결하는 셀렉터가 있음.
  • DaemonSet 정의 파일은 유사한 구조를 가짐.
  • API 버전, kind, metadata, spec으로 시작함.
  • API 버전은 apps/v1, kind는 DaemonSet, 이름은 Monitoring Daemon으로 설정함.
  • spec 아래에는 셀렉터와 파드 사양 템플릿이 있음.
  • ReplicaSet 정의와 거의 동일하지만, kind가 DaemonSet임.
  • 셀렉터의 라벨이 파드 템플릿의 라벨과 일치하도록 함.
  • 준비가 완료되면 kubectl create daemonset 명령어를 사용하여 DaemonSet을 생성함.
  • 생성된 DaemonSet을 보기 위해 kubectl get daemonset 명령어를 실행함.
  • 더 많은 정보를 보기 위해 kubectl describe daemonset 명령어를 실행함.

 

DaemonSet의 작동 방식

  • DaemonSet은 각 노드에 파드를 어떻게 스케줄링하고 모든 노드에 파드가 있는지 어떻게 보장하는가?
  • 클러스터의 각 노드에 파드를 스케줄링해야 한다면 어떻게 할 것인가?
  • 이전 강의 중 하나에서 파드 사양에 nodeName 속성을 설정하여
  • 스케줄러를 우회하고 파드를 직접 노드에 배치하는 방법을 논의했음.
  • 이것이 한 가지 접근 방식임.

  • 각 파드에 nodeName 속성을 설정한 다음 생성하면 해당 노드에 자동으로 배치됨.
  • Kubernetes 버전 1.12까지는 이렇게 작동했음.
  • 버전 1.12 이후로는 DaemonSet이 기본 스케줄러와 노드 어피니티 규칙을 사용하여 노드에 파드를 스케줄링함.
728x90

'자격증 > CKA' 카테고리의 다른 글

[CKA] Udemy Lightning Lab (1/7)  (2) 2024.07.17
[CKA] Udemy 74. Static Pods  (0) 2024.07.13
[CKA] Udemy 66. Taints and Tolerations vs Node Affinity  (0) 2024.07.13
[CKA] Udemy 63. Node Affinity  (0) 2024.07.13
[CKA] Udemy 59. Taints and Tolerations  (0) 2024.07.10