[용어소개] 컨테이너와 쿠버네티스

  • cloudnativelab
    (클라우드네이티브랩)
  • cloudnativelab's Avatar 이 글의 작성자
  • Offline
  • Newbie
  • Newbie
더보기
13 Nov 2020 13:19 - 13 Nov 2020 13:19 #5151 작성자: cloudnativelab
cloudnativelab 님의 글: [용어소개] 컨테이너와 쿠버네티스
컨테이너와 쿠버네티스

최진식 (LG CNS 클라우드운영혁신팀장 / 자바 고양이 Tomcat 이야기, Amazon Web Services 이야기 저자)



컨테이너란 비즈니스 서비스를 제공하기 위한 응용 프로그램과 그 응용 프로그램의 실행에 필요한 관련 정보들이 함께 패키징된 것입니다. 이러한 컨테이너는 이미지 형태로 존재하는데, 이미지를 통해 컨테이너 단위로 실행함에 따라 IT 인프라 환경에 구애받지 않고 비즈니스 서비스를 제공할 수 있습니다. 한편 쿠버네티스란 관리하는 컨테이너의 수량이 증가하더라도 효율적이고 안정적으로 서비스를 제공할 수 있도록 다양한 기능을 제공해주는 플랫폼입니다.

물류업계의 컨테이너는 규격화된 컨테이너 박스, 컨테이너들을 처리하기 위한 크레인, 그리고 표준화된 수송체계를 통해 물류수송에 일대 혁명을 가져온 발명품 중 하나로 평가 받습니다. IT의 컨테이너 역시 표준화, 규격화된 이미지 단위로 응용 프로그램을 실행함에 따라 일관적인 구성을 유지할 수 있다는 장점이 있으며, 서버 장비 단위로 구성하는 것보다 소형이기 때문에 클라우드나 MSA(마이크로 서비스 아키텍처)에 매우 적합합니다.

그런데 물류 관리 시에 컨테이너 박스와 운송선의 수량이 점점 늘어난다면 어떻게 될까요? 아마 특정 컨테이너가 어느 운송선에 실려있는지 파악하기 어려워지고, 각 운송선들이 적절한 수량의 컨테이너 박스를 운반하고 있는지도 알기 어려워질 것입니다. 이는 IT의 컨테이너도 마찬가지입니다. 실행 컨테이너의 수가 많아질 수록 컨테이너들이 어느 호스트(=컨테이너 수송선)에서 실행되고 있는지 일일이 확인하기에는 한계가 있으며, 각 호스트들이 적절한 수량과 용량의 컨테이너를 실행하고 있는지도 알기 어렵습니다.

이러한 문제를 해결해 주는 도구가 바로 쿠버네티스(Kubernetes)입니다. 쿠버네티스는 그리스어로 키잡이 혹은 파일럿이란 뜻을 가지고 있는데요, 컨테이너를 가장 적합한 호스트에 배치하여 실행하고, 고장난 컨테이너가 생기면 자동으로 교체(Auto-healing)하며, 사용자 요청이 늘어나면 자동으로 컨테이너 수량을 증가(Auto-scaling)시키는 등 컨테이너를 위한 다양한 기능과 가시성을 제공해 줍니다.

다만 오픈 소스 소프트웨어인 쿠버네티스는 네트워크, 서버, 보안 등 다양한 기능의 모듈들로 구성되어 있어 복잡도가 높고 그 자체로도 많은 자원을 필요로 하기 때문에 주요 CSP사들은 별도의 구성작업 없이도 바로 사용 가능한 관리형 서비스 형태의 쿠버네티스를 제공합니다. AWS의 EKS(Elastic Kubernetes Service), MS Azure의 AKS(Azure Kubernetes Service), GCP의 GKE(Google Kubernetes Engine) 등이 대표적입니다.

[무단전재 및 재배포 금지]
Time to create page: 0.047 seconds
Powered by Kunena Forum