Kube Controller Manager

2024. 12. 12. 07:58쿠버네티스/쿠버네티스

728x90
반응형

 

1. Kube Controller Manager 개요

  • 역할: Kubernetes의 다양한 컨트롤러를 관리하는 프로세스.
  • 컨트롤러란?
    • Kubernetes 시스템 내 다양한 구성 요소의 상태를 지속적으로 모니터링하고, 원하는 상태로 유지하기 위해 필요한 조치를 수행하는 프로세스.
    • 예시: 노드 상태 확인, 파드 복구, 복제본 관리 등.

2. 주요 컨트롤러들

노드 컨트롤러 (Node Controller)

  • 역할: 노드 상태를 모니터링하고, 문제가 발생하면 대처.
  • 작동 방식:
    1. 노드 상태를 매 5초마다 확인.
    2. 노드의 하트비트 신호가 없으면, 40초 후 "unreachable(도달 불가)"로 표시.
    3. "unreachable" 상태에서 5분 동안 복구를 기다림.
    4. 복구되지 않으면 해당 노드에 할당된 파드를 제거하고, 다른 건강한 노드로 재배치 (복제본 세트가 있는 경우).

복제 컨트롤러 (Replication Controller)

  • 역할: 복제본 세트(Replica Set)의 상태를 모니터링하고, 항상 원하는 수의 파드가 실행되도록 보장.
  • 작동 방식:
    • 파드가 종료되면 새로운 파드를 생성하여 복구.

3. 컨트롤러의 역할과 중요성

  • Kubernetes의 다양한 기능(예: Deployment, Service, Namespace, Persistent Volume 등)은 모두 컨트롤러를 통해 구현됨.
  • 컨트롤러는 Kubernetes 클러스터의 "두뇌" 역할을 수행.

4. Kube Controller Manager 설치 및 설정

설치 방법

  1. Kubernetes 릴리스 페이지에서 Kube Controller Manager 다운로드.
  2. 파일을 추출하고 서비스로 실행.

설정 옵션

  • 실행 시 다양한 옵션을 제공하여 커스터마이징 가능.
  • 예시:
    • 노드 컨트롤러 기본 설정:
      • node-monitor-period: 노드 상태 확인 주기.
      • grace-period: 노드를 "unreachable"로 표시하기 전 대기 시간.
      • eviction-timeout: 노드 복구 대기 시간.
    • 컨트롤러 활성화/비활성화:
      • --controllers 옵션으로 특정 컨트롤러만 활성화 가능 (기본값: 모든 컨트롤러 활성화).

5. Kube Controller Manager 확인 방법

Kubeadm 기반 클러스터

  • Kubeadm으로 설치된 경우:
    • Kube Controller Manager는 마스터 노드의 kube-system 네임스페이스에 POD로 배포됨.
    • 설정 파일 위치: /etc/kubernetes/manifests/ 디렉토리 내 POD 정의 파일.

비 Kubeadm 기반 클러스터

  • 서비스 디렉토리에서 Kube Controller Manager 서비스 파일 확인.

실행 중인 프로세스 확인

  • 마스터 노드에서 실행 중인 프로세스를 나열하여 Kube Controller Manager 옵션 확인 가능.

6. 주요 참고 사항

  • 특정 컨트롤러가 작동하지 않거나 누락된 경우, --controllers 옵션 설정을 먼저 점검해야 함.
  • Kube Controller Manager는 클러스터의 안정성과 가용성을 유지하는 핵심 구성 요소이며, 적절한 설정과 모니터링이 중요함.

www.udemy.com/course/certified-kubernetes-administrator-with-practice-tests

https://toberich.co.kr/entry/Kube-Controller-Manager-Certified-Kubernetes-AdministratorCKA

 

Kube Controller Manager - Certified Kubernetes Administrator(CKA)

본 게시글은 CKA 취득 위해 공부한 내용 정리하기 위해 작성한 글이며 첨부한 자료 및 내용은 Udemy에서 제공하는 CKA강의를 활용하였습니다. (www.udemy.com/course/certified-kubernetes-administrator-with-practice-t

toberich.co.kr

 

반응형

'쿠버네티스 > 쿠버네티스' 카테고리의 다른 글

Kubelet  (1) 2024.12.12
Kube-Scheduler  (0) 2024.12.12
Kube-API Server 개요  (1) 2024.12.12
ETCDCTL API 버전별 명령어  (0) 2024.12.12
ETCD  (2) 2024.12.11