쿠버네티스와 미니큐브

 1. 쿠버네티스란?

점차 운영 환경이 물리적 서버1대 -> 버추얼머신(OS포함) -> 컨테이너 로 변해가고

큰 규모의 시스템에서 운영 자동화 필요성이 생겼다.

컨테이너 운영 환경의 관리 & 자동화를 위해서 만든 시스템


컨테이너와의 연관성 ? 쿠버네티스에서는 추상화된 파드라는 개념을 쓴다. 파드의 구현으로써 컨테이너를 사용하는것.


2. 쿠버네티스 아키텍처(구성)



클러스터

- 마스터 노드(=물리적 서버1대)

--- API 서버 프로세스 : 워커 노드에 명령을 전달, 개발한 컨테이너 배포를 위한 서버

--- 스케쥴러 프로세스 : 파드 생성 계획을 담당, CPU가 덜 바쁜 워커 노드 혹은 접속이 적은 워커 노드 혹은 번갈아 등등

--- 컨트롤러 프로세스 : 클러스터 상태 변화를 탐지(파드 충돌 등등)

--- etcd 프로세스 : 클러스터 변화, 리소스 정보 등등이 저장 & 업데이트 됨

   (마스터 노드도 스케일업이 가능하기 떄문에 이런 저장 정보는 별도의 DB에 넣어야할 필요가 있음)


- 워커 노드(=물리적 서버1대)

--- 컨테이너 런타임 프로세스 : 도커면 도커 런타임, 그 외 컨테이너는 해당 컨테이너 런타임

--- 큐브렛 프로세스 : 쿠버네티스 파드(추상) 와 컨테이너(실제)를 이어주는 어댑터. 노드와 통신하며 파드 생성(=컨테이너 생성)을 담당


3. minikube 란?



출처 : https://www.devopsschool.com/blog/what-is-minikube/


클러스터를 구성하려면 일반적으로 물리서버가 여럿 필요하고, 자원도 많이 필요함

minikube는 가벼운 테스트 정도 목적으로 클러스터를 1개의 노드에서 구성한 것.


컨테이너

----

마스터&워커 합친 1노드 (=프로세스를 다 갖고 있음)

----

가상환경(virtual box, hypervisor)

----

내 PC


댓글