쿠버네티스, 이것만 알면 된다! - #3 쿠버네티스 구성 요소
쿠버네티스는 어떻게 이루어져 있을까요?
쿠버네티스는 여러 개의 노드(예를 들어, 가상서버/Virtual Machine)로 구성된 클러스터로 이루어져 있습니다.
출처: https://kubernetes.io/docs/concepts/_print/
여기서 Node라는 개념이 나오는데요.
위의 그림에서 Node는 하나의 VM(Virtual Machine)을 의미합니다. 쿠버네티스는 컨테이너화 된 애플리케이션을 실행하는 Worker Node와 그러한 Worker Node를 관리하는 Master Node로 구성되어 있습니다.
이때 Worker Node와 Master Node는 다수로 이루어질 수 있으며, 쿠버네티스를 사용하기 위해서는 최소 1개의 Worker Node를 보유해야 합니다.
Master Node에는 어떤 것들이 필요할까요?
Master Node에는 클러스터에 관한 전반적인 결정을 수행하고, 이벤트를 감지하고 반응하는 역할을 해야 합니다.
Master Node는 다음과 같은 그림으로 구성되어 있습니다.
출처: https://subicura.com/2019/05/19/kubernetes-basic-1.html
Master Node에는 기본적으로 다음 컴포넌트들을 통해 역할을 수행합니다.
컴포넌트 명 | 역할 |
kube-apiserver | 모든 요청을 처리하는 역할 |
kube-controller-manager | 다양한 컨트롤러(복제/배포/상태 등)를 관리 |
kube-scheduler | 상황에 맞게 적절한 Worker Node를 선택 |
etcd | 클러스터 내의 데이터를 담는 저장소 |
Worker Node에는 어떤 것들이 필요할까요?
Worker Node에서는 컨테이너화된 애플리케이션을 동작하고 유지시키는 역할을 합니다.
Worker Node는 다음과 같은 그림으로 구성되어 있습니다.
출처: https://subicura.com/2019/05/19/kubernetes-basic-1.html
Worker Node에서는 다음 컴포넌트들을 통해 역할을 수행합니다.
컴포넌트 명 | 역할 |
pod | 컨테이너화된 애플리케이션 그룹 |
kubelet | Node에 할당된 pod의 상태를 체크하고 관리 |
kube-proxy | pod로 연결되는 네트워크를 관리 |
마무리
이번 장에서는 쿠버네티스가 가지고 있는 구성 요소에 대해서 학습하였습니다.
다음 장에서는 쿠버네티스를 실제로 설치해보는 시간을 가져보겠습니다.
관련글
1.쿠버네티스란 무엇일까? - https://ktcloudplatform.tistory.com/67
2.Desired State - https://tech.ktcloud.com/68