반응형

쿠버네티스 정의

컨테이너를 도커 런타임에 올려서 관리 운영, 클러스터 서비스를 지원해주는 프레임워크.

 

쿠버네티스 구조

[ 요약 ]

 

 

[ 상세 ]

 

 

components -> api -> etcd 순으로 watch 하고 있다가 변경 사항이 발생하면 watch 대상에게 notify 한다.

구조에서 components API 서버와 Pod 제외한 나머지들 (Controller Manager, Scheduler, Kublet) API 서버에 있는 리소스들은 사실상 etcd 내부에 있는 내용들이다.

 

쿠버네티스 실행 흐름

(kubectl get events)

 

 

Deployment -> ReplicaSet -> Pod 순으로 실행된다.

7 pod 선정에 대한 내용 로직들은 다음과 같다.

 

 

스케줄러가 kubelet 에서 보내준 노드 / 컨테이너 지표(CPU, Memory 사용량), Affinity, Taint 설정 등을 종합적으로 분석하여 새로운 파드를 생성할 워크 노드를 선정한다.

 

쿠버네티스 고가용성

 

쿠버네티스 구조를 보면 나머지 구성 정보는 Pod 재빠르게 뜨면제가 없을 있지만, API 서버와 etcd 죽으면 가용성에 문제가 생긴다. 그래서 API 서버는 2, etcd 3대가 최소 필요하다. etcd RAFT 라는 분산합의 알고리즘으로 인해 홀수 개를 유지해야 해서 최소 3대가 필요하다.

 

출처

쿠알못이 Amazon EKS로 안정적인 서비스 운영하기 - 최용호 (넥슨코리아) :: AWS Community Day 2020 (youtube.com)

반응형

+ Recent posts