Kubernetes 클러스터의 구성요소

2023. 10. 31. 11:04k8s

Master Node
  • API 서버 (API Server) : 클러스터의 제어 중심 역할을 하는 구성 요소로, 클러스터 관리 및 상태 정보에 대한 엔드포인트를 제공한다. Kubelet, Kube-proxy 및 다른 컴포넌트와 상호작용할 때 사용된다.
  • etcd : Key-Value 저장소로, 클러스터의 모든 설정 데이터와 상태 정보를 저장한다.
  • 스케줄러 (Scheduler) : 새로운 Pod을 적절한 노드에 할당하는 역할을 한다.
  • 컨트롤러 매니저 (Controller Manager) : 클러스터의 상태를 관리하고 디렉티브에 따라 클러스터 자원을 관리하는 일련의 컨트롤러를 실행한다.

 

 

Controller Manager
  • Node 컨트롤러 (Node Controller) : 노드 관련 이벤트와 노드 장애를 처리한다.
  • ReplicaSet 컨트롤러 (ReplicaSet Controller) : ReplicaSet 오브젝트를 관리하고 원하는 Pod의 복제본 수를 유지한다.
  • Deployment 컨트롤러 (Deployment Controller) : Deployment 오브젝트를 관리하고 업데이트, 롤백 등을 처리한다.
  • StatefulSet 컨트롤러 (StatefulSet Controller) : StatefulSet 오브젝트를 관리하고 StatefulSet Pods의 고유한 식별자와 안정적인 네트워크 식별자 부여에 사용된다.
  • DaemonSet 컨트롤러 (DaemonSet Controller) : DaemonSet 오브젝트를 관리하고 클러스터의 모든 노드에 Pods를 배포한다.
  • Service Account 컨트롤러 (Service Account Controller) : ServiceAccount 오브젝트를 관리하고 네임스페이스 내의 서비스 어카운트를 생성하거나 삭제한다.
  • CronJob 컨트롤러 (CronJob Controller) : CronJob 오브젝트를 관리하고 지정된 시간에 작업을 실행한다.
  • Namespace 컨트롤러 (Namespace Controller) : Namespace 오브젝트를 관리하고 네임스페이스를 생성 또는 삭제한다.

 

 

Node Component
  • Kubelet : 각 노드에서 실행되며 해당 노드에 배포된 Pods를 관리하고 상태를 보고한다.
  • Kube-proxy : 네트워크 프록시로서 Pods 간 통신 및 외부와의 통신을 관리하며 서비스 정의를 통해 네트워크 규칙을 구현한다.

'k8s' 카테고리의 다른 글

loadbalancer  (0) 2023.10.31
etcd  (0) 2023.10.31
네임 스페이스 요구명세서 실습  (0) 2023.10.31
네임 스페이스  (0) 2023.10.31
버전패치 요구명세서 실습  (0) 2023.10.30