MLOps/Docker

[Kubernetes#1] 쿠버네티스(Kubernetes)란?

j.d 2025. 5. 13. 23:25

오늘날의 소프트웨어 개발 환경에서는 수많은 컨테이너(Container) 들이 동시에 실행되고, 서로 협업하며 하나의 애플리케이션을 구성합니다. 이러한 환경을 안정적으로 운영하고 관리하기 위해 등장한 기술이 바로 쿠버네티스(Kubernetes) 입니다.

 

 

쿠버네티스란?

쿠버네티스(Kubernetes)는 여러 개의 컨테이너를 효율적으로 배포하고, 자동으로 확장하고, 안정적으로 운영하도록 돕는 오픈 소스 컨테이너 오케스트레이션 시스템입니다.

다르게 표현하자면, 단순히 컨테이너를 실행하는 수준을 넘어서, 전체 인프라 수준에서 컨테이너들을 자동으로 배치하고, 관리하고, 복구하는 기술입니다.

 

쉽게 말해, 쿠버네티스는 Docker Compose의 확장판이라고 볼 수 있습니다.

Docker Compose가 로컬 개발 환경에서 여러 개의 컨테이너를 쉽게 실행하게 해주는 도구라면,
쿠버네티스는 대규모 환경에서 컨테이너들을 자동으로 운영하는 강력한 도구입니다.

 

 

출처: https://kubernetes.io/

 

 

핵심 장점

자동화된 컨테이너 관리

애플리케이션을 배포하고, 업데이트하고, 문제 발생 시 자동 복구까지 해줍니다.
수동으로 관리하던 작업들이 자동화되어 운영 효율이 크게 향상됩니다.

 

부하 분산 (로드 밸런싱)

여러 컨테이너에 자동으로 트래픽을 분산시켜서 어느 하나에 과부하가 걸리지 않도록 조절해줍니다.
사용자 경험 향상과 시스템 안정성을 모두 잡을 수 있습니다.

 

손쉬운 스케일링

서비스에 더 많은 사용자가 몰리면, 자동으로 컨테이너 수를 늘리거나 줄일 수 있습니다.
비용과 성능을 모두 고려한 유연한 확장/축소가 가능합니다.

 

셀프 힐링(Self-healing)

컨테이너가 예상치 못하게 종료되거나 문제가 생기면, 쿠버네티스가 자동으로 이를 감지하고 다시 실행시켜줍니다.
운영자의 개입 없이도 시스템이 스스로 복구됩니다.