Kubernetes/Udemy - CKAD with Tests

쿠버네티스 구조

비번변경 2021. 6. 29. 20:34

노드; Node

쿠버네티스가 설치된 물리 또는 가상 머신

컨테이너가 호스팅 된다.

미니언이라고 알려지기도 했다. 

고가용성을 확보하기 위해서는 두 개 이상의 노드가 필요하다.

 

클러스터; Cluster

그룹화 상태인 노드의 집합

노드 하나에 장애가 발생해도 다른 노드를 통해 애플리케이션을 사용할 수 있다. 즉, 고가용성이 확보된다.

부하 분산에 도움이 된다.

 

마스터; Master

쿠버네티스를 설치하고 마스터로 설정한 노드

클러스터에 있는 노드를 감시하면서 워커 노드 컨테이너의 실제 오케스트레이션을 담당한다.

 

k8s components
출처 : https://kubernetes.io/ko/docs/concepts/overview/components/

 

구성 요소

  • API 서버
    쿠버네티스 프런트엔드 역할을 담당한다.
    사용자, 관리 장비, 커맨드 라인 인터페이스는 API 서버를 통해 쿠버네티스 클러스터와 상호작용한다.

  • ETCD 서비스
    쿠버네티스에서 클러스터 관리에 사용되는 모든 데이터를 저장하는 데 사용하는 분산 키-값 저장소

  • kubelet
    클러스터의 각 노드에서 동작하는 에이전트
    컨테이너가 의도한 대로 노드에서 동작하는지 확인한다.

  • 컨테이너 런타임
    컨테이너 실행에 사용되는 소프트웨어

  • 컨트롤러
    노드, 컨테이너, 엔드포인트가 중단된 경우를 인식하고 알리는 역할을 한다.

  • 스케쥴러
    여러 노드에 걸쳐 컨테이너나 작업을 배포한다.

  • kube-proxy
    쿠버네티스 네트워크 관리