-
Kubernetes (k8s) 구성과 개념 간단 정리프로그래밍/Kubernetes 2022. 8. 6. 00:29반응형
오랜만에 EKS를 쓰면서 쿠버네티스의 개념을 간단하게 글로 정리해 보려고 합니다.
쿠버네티스 클러스터구성
- Master Node (3대 이상의 고가용성 머신 or EKS같은 서비스 사용)
- Worker Node (실제 Pod등의 application이 올라가 있고 동작하는 머신들)
[Master Node의 구성]
사실 EKS같은 클라우드 매니징 서비스 등을 사용하면 MaterNode에 대한 내용은, 차차 알아가면 됩니다.- etcd : 각 상태 및 정보를 저장하고 의사결정을 합의하는 key-value형태의 저장소
- kube-apiserver : 모든 통신을 담당하는 컴포넌트로 모든 요청이 kube-apiserver를 통하여 통신하고, 요청의 유효성 및 권한 등을 검증한다. ectd에 접근하는 유일한 수단
- kuber-controller : 컨트롤러 각각을 실행하는 컴포넌트
- kube-scheduller : 노드의 상황 및 요구하는 스펙에 따라서 자원을 할당하는 역할
[Worker Node구성]
실제 pod등의 Object등이 실행되는 곳.
- kubelet : 클러스터 안에 노드들에서 실행되어 파드들을 직접 관리하는 역할을 합니다.
- kube-proxy : 클러스터 안의 가상 네트워크를 동작, 관리하는 역할을 합니다.
*k8s worker node에서 실행되는 것들..
- Object : Pod, Service, Volume..
- Controller : Deployment, statfulset, Job...
yaml파일에Controller의 성격을 적어주면, 그것들이 정의된 형태로 Pod가 실행되는 구조입니다.
ex) Deployment의 replica:3으로 wordpress를 띄워 놓으면 3개의 Pod로 wordpress가 실행됩니다.
[기타 k8s Addon]
클러스터 안에서 추가적인 기능들을 하는 파드들로 대표적인 것들이 있습니다.
Networking, DNS, DashBoad 등의 기능을 하는 애드온들이 있으며,
클라우드 서비스를 활용하여 EKS들을 활용하면 애드온들을 따로 안 쓰기도 합니다.
반응형'프로그래밍 > Kubernetes' 카테고리의 다른 글
쿠버네티스(k8s) Helm 사용 이유 (0) 2022.08.05