[TIL] Kubernetes

강지훈·2022년 12월 19일
0

TIL

목록 보기
6/8


도커 vs 도커컴포즈 vs 도커스웜

-Docker : 하나의 컨테이너를 다룬다.
-Docker-Compose : 컨테이너 여러개를 다룬다.
-Docker-swarm : 컨테이너 관리자 (컨테이너를 늘리고 줄이는 일을 함)


도커 스웜과 비슷한 것들

-Mesos : 컨테이너 관리자
-Kubernestes : 컨테이너 관리자



쿠버네티스

쿠버네티스는 관리자며

아래 그림은 "클러스터" 단위라고 부른다.
각 노드들이 연결되어 있고, 노드 안에 파드가 있고, 그 파드 안에 컨테이너들이 존재함.

노드란,,, 작업하는 컴퓨터 1대를 노드라고 부른다.
하나의 대장 노드를 "마스터노드"라 부르고 나머지는 "워커노드"라 부른다.

파드란,,, 도커(컨테이너)를 덮고 있는 단위이다.
파드는 여러개의 컨테이너를 묶을 수 있으나, 다른 노드의 컨테이너를 동시에 묶을 수는 없다.

쿠버네티스를 쓰는 이유?

쿠버네티스 설정은 굉장히 어려웠으나, 요즘에는 GCP나 AWS에서 서비스하여 설정 및 관리가 용이하다.


쿠버네티스의 특징


블루그린배포

예전에는 업데이트 할 때 아래와 같은 방식을 사용했다.

새로운 VM에 추가된 기능을 별도의 VM을 만들어서 업데이트하고
서버를 닫지않고 업데이트 된 VM에 바로 연결후 기존 VM을 닫아버리는 방식

이 방식의 문제점은?

업데이트하여 배포한 GREEN 컴퓨터에 문제가 생기면
다시 BLUE로 돌리게 되어 유저들의 사용감이 불편해진다.

카나리배포

블루그린배포의 문제점을 해결하기 위해,

새로 업데이트 된 GREEN 컴퓨터에 모든 트래픽을 보내지 않고,
일부만 먼저 GREEN으로 보내면서 에러가 있는 지 없는 지 확인하는 방법.


롤링배포

업데이트 할때,

1번 컴퓨터 OFF -> 1번 컴퓨터 업데이트 -> 2번컴퓨터 OFF -> 2번 컴퓨터 업데이트
같은 방식으로 하나씩 돌아가면서 업데이트 배포를 진행하는 것이며,

쿠버네티스는 이와 같은 방식을 사용한다.


쿠버네티스 사용하기

GCP에서 지원하는 쿠버네시트 엔진을 사용해보자!
생성만 만들면 바로 생성이 된다.

AutoScaling(사용자에 숫자에 맞게 알아서 노드를 늘리고 줄이는 것)을 지원하는
구글 자체 Autopilot 설정이 존재한다.
스탠다드 설정도 있는데, 직접 노드 숫자도 설정해야하는 번거로움이 있다.



profile
우당탕탕 개발자

0개의 댓글