IT_Study/Ops

[MLOps] Kubeflow 활용을 위한 Kubernetes에 대한 이해

__Vivacé__ 2023. 11. 21. 10:05

Kubernetes 개요

 현업에서, 여러가지 서비스들을 동시에 관리할 일이 생길 것이다.

 카카오T를 생각했을 때, 배차에 관련된 API 뿐만 아니라 여러 비즈니스 서비스에 관련된 서버가 있을 것이고, 여기에 맞는 스케일링 전략을 따로 설정을 해야 했을 것이다.

 즉, 서비스 개수가 많아질수록, 인프라를 통합적으로 관리하는 데 어려움이 생긴다.

 

 그래서, 서비스들을 안정적으로 서빙할 수 있도록 지원해주는 Tool 중 하나가 Kubernetes다.

 


Kubernetes에서는 리소스 관리를 위해, 오토 스케일러를 사용한다. 용도에 따라 몇가지 다른 오토 스케일러를 제공하고 있다.

 

수직적 오토스케일링 (Vertical Pod Auto-scaler)

k8s의 대표적인 기능 중 하나가 스케일링이다. (Vertical, Horizontal 둘 다 지원)

VPA의 동작 원리 / https://bcho.tistory.com/1349

 POT의 메모리 사이즈나 CPU 사이즈를 늘려주는 식으로 스케일링을 VPA로 지원

 

수평적 오토스케일링 (Horizontal Pod Auto-scaler)

HPA의 동작 원리 / https://bcho.tistory.com/1349

Pod 추가 배치 / 제거도 지원한다.