본문 바로가기
스터디/Cloud & k8s

[k8s] 컨테이너 오케스트레이션 (Container orchestration)

by zoodi 2022. 10. 10.
728x90

컨테이너 오케스트레이션이란?

출처: https://www.sharedit.co.kr/posts/12040

 

컨테이너 오케스트레이션은 복잡한 컨테이너 환경을 효과적으로 관리하기위한 도구입니다.

편리한 도커 컨테이너가 나타나면서 많은 곳에 적용되고있습니다. 그러나 관리하는 서버 컨테이너 수가 점점 증가하면서 관리가 힘들다는 문제가 생겼습니다. 그래서 등장한 것이 컨테이너 오케스트레이션입니다.

 

우리가 많이 들어본 쿠버네티스는 컨테이너 오케스트레이션 툴의 한 종류이며 엄청난 인기로 사실상 표준으로 사용되고있습니다~!

 

👉함께보면 좋은 게시글

 

[k8s] 컨테이너(Container)와 쿠버네티스(Kubernetes) 소개

컨테이너(Container) 컨테이너는 어떤 환경에서나 실행하기 위해 필요한 모든 요소를 포함하는 소프트웨어 패키지이다. 이러한 방식으로 운영체제를 가상화여 프라이빗 퍼블릭 클라우드 또는 개

hyeri0903.tistory.com

 

컨테이너 오케스트레이션, 왜 사용할까?

 

만약 컨테이너 오케스트레이션이 없다면..?

  • 배포
    • 각 서버의 ip를 찾고 각 서버에 접속해서 docker 명령어로 컨테이너 실행 및 종료해야합니다.
    • 만약 새로운 컨테이너를 실행하려면 빈 서버에 실행하는 것이 좋으므로 빈 서버를 일일이 찾아야합니다.
  • 서비스 검색
    • 서버가 많아지고 서버 ip가 업데이트되면서 관리자가 모두 관리하는 것은 어렵습니다.
    • 로드밸런서와 서버의 ip 설정과 같은 부분을 관리자가 직접 관리해야합니다.
  • 서비스 노출 (gateway)
    • nginx와 같이 외부에 노출된 프록시 서버를 두고 프록시 서버로 들어오는 host 요청에따라 내부 컨테이너에 연결하는 과정에 자동화가 필요합니다.
  • 모니터링
    • 갑자기 컨테이너가 죽은 경우 일일이 로그를 보고 다시 서버를 띄워야합니다.
    • 트래픽이 많아지면 부하가 걸려 느려집니다.

 

이러한 문제로 많은 컨테이너를 효율적으로 관리하기 위한 기술이 컨테이너 오케스트레이션입니다.

 

728x90

컨테이너 오케스트레이션 특징

  • 클러스터
    • 중앙제어 : 컨테이너 오케스트레이션에서 합쳐서 추상화하여 클러스트 단위로 관리
    • 네트워킹 : 클러스터 내 노드끼리 서로 통신이 잘되어야 함
  • 상태 관리
    • 트래픽 증가, 서버 장애 시 서버를 늘림
    • 오토 스케일링
  • 배포 관리
    • 자원 여유가 있는 서버에 알아서 적절히 띄워줌
    • 배포 버전 관리(롤백)

왜 쿠버네티스를 쓸까?

컨테이너 오케스트레이션인 쿠버네티스를 통해 물리 또는 가상머신의 클러스트에서 컨테이너를 예약하고 실행할 수 있는 플랫폼을 확보할 수 있습니다.

  • 애플리케이션 배포 및 업데이트를 제어하고 자동화
  • 스토리지 장착 및 추가해 stateful 애플리케이션 실행
  • 네트워크 트래픽을 로드밸런싱을 통해 안정적인 배포 (오토스케일링)
  • 자동화된 롤아웃과 롤백
  • 하드웨어 활용도 향상

 

 


출처:
https://wooody92.github.io/kubernetes/Kubernetes-컨테이너-오케스트레이션/

 

 

728x90

댓글