Kubernetes

Kubernetes 초보 강의 : Container Orchestration

브루노W 2023. 2. 14. 06:30

Container 간 연결을 Orchestration하고 부하에 따라서 자동으로 Scale-up 또는 Scale-down 하며, Container를 자동으로 배포하고 관리하는 프로세스를 Container Orchestration이라고 한다.

 

Kubernetes(K8S)는 Container Orchestration 기술 중 하나이다. (그 외 Docker의 Docker Swarm, Apache의 Mesos)

 

Docker Swarm은 설정이 쉬워서 시작하기 쉽지만 복잡한 애플리케이션에 필요한 autoscaling 기능이 부족하다.

반면 Mesos는 설정하고 시작하기 어렵지만 상위 기능을 지원한다.

 

Kubernetes는 가장 인기 있는 이유는 설정하고 시작하기 다소 어렵지만 사용자가 정의할 수 있는 많은 옵션을 제공하고 복잡한 아키텍쳐의 배포를 지원하기 때문이다.

(Kubernetes는 이제 GCP, Azure, AWS와 같은 모든 Public CSP에서 지원함)

 

Container Orchestration에는 아래와 같이 장점이 있다.

 

서로 다른 노드에서 실행 중인 애플리케이션의 여러 인스턴스가 있기 때문에 하드웨어 오류로 인해 애플리케이션이 중단되지 않아 가용성이 높다.

사용자 트래픽은 다양한 Container에서 Load Balancing이 된다.

수요가 증가하면 애플리케이션의 추가 인스턴스를 순식간에 배포할 수 있다.

하드웨어 리소스가 부족하면 애플리케이션을 중단하지 않고 노드 수를 늘리거나 줄일 수 있다.

 

 

* 본 게시글은 udemy "Kubernetes for the Absolute Beginners - Hands-on" 강의 수강 후 공부용으로 작성한 글입니다.