본문 바로가기

MSA/Kubernetes

Kubernetes 개념 - Object

먼저 Kubernetes란???

Kubernetes : 구글에서 개발한 컨테이너 오케스트레이션

 

 

 

 

다음은 Kubernetes가 구성되는 개념인 Object와 Controller에 대해서 정리해보려고한다.

 

 

Object란 "하나의 의도를 담은 레코드" 라고 쿠버네티스 공식문서에 나와있다.

- 여기서 의도를 담은 레코드란 무엇일까??

레코드마다 음악이 다르듯이 Kuberntes에서도 각 object들이 어떤 의미를 가지고 행하는것인지 하는게 아닐까?? 라고 추측해본다 (주관적인 생각)

Kubernets에서 기본적인 구성단위가 되는건 크게 Basic Object와 Basic Object를 추가관리하는 Controller로 나뉜다고한다.

 

Basic Object

- Pod

   쿠버네티스에서 가장 기본적인 배포단위,  컨테이너를 포함하는 단위이며 Pod는 하나 이상의 컨테이너를 가지고있다.

 

- Service

  Pod와 볼륨을 이용하여 컨테이너를 정의한 후 여러개의 Pod를 서비스하며 로드밸런싱을 이용해 하나의 IP와 Port를 제공한다.

 

- Volume

  Pod가 기동될때 기본적으로 로컬디스크를 생성하는데 이 로컬디스크는 비영구적이며 Container가 재시작될때마다 사라진다.

  데이터를 저장하기 위해서는 Pod가 기동할때 컨테이너에 마운트하여 사용한다.

 

- Namespace

  쿠버네티스에서 논리적으로 분리한 단위라고 생각하면된다. Pod나 Services 등은 네임스페이스별로 생성/관리 되며 사용자역시 네임스페이스별로 나뉜다. Redhat Openshift에서는 Project 라고 네이밍하였다.

 

Controller

- Replicaset

- Deployment

- Statefulset

- Daemonset

- Job

 

위와 같이 쿠버네티스를 구성하는 Basic Object와 Controller의 종류를 정리해보았다.

Controller에대한 정리는 아래 포스트를 참고하기바란다.

 

'MSA > Kubernetes' 카테고리의 다른 글

Kubernetes 기본개념 - 구조  (0) 2021.11.18
Service Mesh란??  (0) 2021.10.19
Kubernetes 개념 - Controller  (0) 2021.10.19