본문 바로가기

Cloud/Kubernetes

15단계로 배우는 도커와 쿠버네티스 (서터디)

 저는 백수이기 때문에 공부합니다.

08. 디플로이먼트

- 디플로이먼트의 주된 역할은 파드의 개수를 관리

- 기존의 수평 분산 시스템은 로드밸런서 + 같은 스펙의 여러 서버로 구성되어 로드밸런서가 요청을 서버에 전송

- 이를 통해 처리 능력을 높일 수 있으며 장애가 발생하여도 서비스가 지속 가능

- K8S 에서는 파드가 서버의 역할을 담당함

- 디플로이먼트는 요청한 개수만큼 파드를 기동하고, 장애 등의 이유로 파드의 개수가 줄어들면 새롭게 파드를 만들어 기동함.

- 애플리케이션의 버전을 업그레이드 할 때 새로운 버전의 파드로 바꿔줌

- 로드밸런서 기능은 디플로이먼트가 아닌 K8S의 서비스가 담당

- 혼자 동작하지 않고 레플리카셋과 함께 동작함.

1. 기능

- 스케일 기능

- 롤아웃 기능 : 컨테이너의 업데이트

- 롤백 기능 : 예전 컨테이너로 되돌림

- 자동 복구 : 컨테이너 수준의 장애가 발생하였을 경우 (종료되었을 경우) 자동으로 복구

 

09. 서비스

- 파드는 일시적인 존재기 때문에 IP 주소가 계속 변경됨. 클라이언트 입장에선 파드의 IP 주소를 파악하기 어렵기 때문에 서비스라는 오브젝트를 통해서 관리

- 서비스는 ClusterIP, NodePort, LoadBalancer, ExternalName 타입이 있음

- 세션 어피니티 : 동일한 클라이언트에서 온 요청을 같은 파드에 전송하고 싶을 때 사용 (클라이언트 IP 주소에 따라 전송 파드가 결정됨)

 

10. 잡과 크론잡

- 잡 : 파드에 있는 모든 컨테이너가 정상적으로 종료할 때 까지 재실행

- 크론잡 : UNIX 크론과 같은 포맷으로 실행 스케줄을 지정