1.1. 쿠버네티스 개념


1.1.1. 쿠버네티스의 역할

쿠버네티스는 컨테이너화된 애플리케이션의 자동 배포, 확장 및 관리를 해주는 오픈소스 플랫폼이다. (수많은 컨테이너를 한꺼번에 관리하는 시스템)

1.2. 쿠버네티스 구조


1.2.1. 쿠버네티스 클러스터

쿠버네티스 클러스터는 크게 마스터 노드워커 노드로 구분된다. 개발자는 주로 마스터 노드와 통신하며, 사용자는 인터넷을 통해 워커 노드와 통신하는 경우가 많다.

image (1).png

그림과 같은 구조를 유지하기 위해선 마스터 노드와 워커 노드 간의 유기적인 통신이 중요한데, 이를 위해 CNI[Container Network Interfaces]라는 개념이 사용된다.

CNI는 쿠버네티스 클러스터에 존재하는 컨테이너 같의 통신을 위해 필요한 인터페이스를 의미한다.

1.2.2. 컨트롤 플레인

쿠버네티스 마스터 노드는 컨트롤 플레인을 다루는데, 컨트롤 플레인이란 쿠버네티스 클러스터 전반의 작업을 관리하는 역할을 한다.

3d7467f0-7b1d-427c-a02f-3a1db34150bb.jfif

API 서버

쿠버네티스의 작업은 kubectl 명령어를 통해 마스터 노드의 kube-apiserver에게 API 요청을 보냄으로서 이루어 진다.

etcd