Container Orchestration

MIN·2025년 8월 3일

weekly

목록 보기
29/31

📦

여러 개의 컨테이너를 자동으로 배포하고, 관리하고, 확장하고, 복구하는 기술 또는 시스템

필요한 이유?

컨테이너(Docker)를 사용하면 앱을 작은 단위로 나눠서 실행할 수 있게 되는데
그 컨테이너의 개수가 많아진다면 관리하기 어려울 것

  • 어느 서버에서 실행?
  • 죽은 컨테이너는 자동으로 다시 살릴 수 있는지?
  • 트래픽이 많아지면 자동으로 늘릴 수 있는지?
  • 업데이트할 때 다운타임 없이 바꿀 수 있을지?

이런 이슈들을 자동으로 해결해주는 시스템 - 오케스트레이션이다.

오케이스트레이션을 사용했을 때

  1. 컨테이너 배포
  • 어떤 컨테이너를 어떤 서버에 실행할지 자동으로 결정할 수있음
  1. 서비스 복구
  • 컨테이너가 죽으면 자동으로 복구할 수 있음
  1. 로드 밸런싱
  • 여러 컨테이너에 요청을 고루 분산
  1. 스케일링
  • 사용량의 증감에 따라 컨테이너 수 자동증가/감소
  1. 롤링 업데이트
  • 다운타임없이 점진적으로 업데이트 진행

대표적인 도구

Kubernetes (쿠버네티스)
가장 많이 쓰이는 오케스트레이터, 구글이 개발

Docker Swarm
Docker에서 제공, 간단함

Amazon ECS / EKS
AWS에서 제공하는 컨테이너 관리 서비스

✍️

서비스가 커질수록 컨테이너 수가 많아지며 관리가 점점 복잡해지게 될거고
이때 컨테이너 오케스트레이션을 활용하면 컨테이너들을 자동으로 배포하고, 확장하고, 복구할 수 있어서
안정적이고 효율적인 서비스 운영이 가능할 것 같다.

0개의 댓글