Skip to main content

01. 쿠버네티스란 무엇인가

쿠버네티스란 무엇인가

쿠버네티스는 왜 쓸까#

  • 쿠버네티스는 컨테이너 오케스트레이션 서비스다.

  • 굉장히 장점이 많은 서비스인데 그 중 특징적인 것들 위주로 빠르게 살펴보자.

  • 컨테이너의 신속한 배포가 가능하다.

  • 로드밸런싱, 네트워크 접근 제어 기능을 k8s에서 이미 제공한다.

  • 컨테이너 개수, CPU 사용률, 메모리 사용량을 설정할 수 있다.

  • 유연한 스케일 인/아웃 가능한 장점이 있다.

  • 새로운 버전의 애플리케이션을 무중단 배포가 가능하다.

  • 하드웨어 가동률을 높여 자원 낭비를 줄여준다.

쿠버네티스가 해결할 수 있는 문제#

  • 애플리케이션의 빈번한 출시에도 대응

  • 무정지 서비스

  • 초기 비용을 낮추고 비지니스 상황에 맞게 규모를 조정 (초기 클러스터는 낮은 장비로 배포하고 이후 트래픽이 증가하면 고성능 장비 투입 가능)

    • 1.11 버전 기준 k8s에 배포 가능한 노드의 수는 5000대
  • 쿠버네티스와 외부 서비스와의 연동 기능 제공

  • 개발 환경과 운영 환경의 분리 가능 (클러스터를 여러 개의 가상 환경으로 분할 하는 것이 가능)

  • 온프레미스와 클라우드 위에 구축 가능

  • 애플리케이션 중심의 오케스트레이션

  • 특정 기업에 종속되지 않는 표준 기술 (GCP든 AWS든 Azure든 카카오든 네이버든 어디든 구축 가능)

  • 서버들의 가동률 높이기 가능

    • CPU 사용률이 낮은 서버들이 노는 것은 퍼블릭 클라우드에서도 온프레미스에서도 바람직한 상황이 아님
    • k8s는 서버의 CPU 가동률을 높게 유지하면서 안정적인 서비스의 운영을 할 수 있게 도와줌

k8s 아키텍처#

스크린샷 2020-12-04 오전 12 25 54

핵심 요약#

쿠버네티스의 핵심을 마지막으로 정리해보자.

1) k8s는 대규모의 유저 요청을 받는 서비스의 백엔드에 적합한 플랫폼이며 CI/CD에 적합한 구조를 가진다. (MSA와도)#

2) 퍼블릭 클라우드와 온프레미스에서 같은 방식으로 사용 가능하다#

3) 컨테이너 기술을 통해 애플리케이션과 서버 인프라를 분리하여 변화에 대응할 수 있는 유연성과 확장성을 제공해준다#

4) 역사는 짧지만 많은 기업의 지지를 받아서 성장해왔고, 현재는 정식 서비스에 운영할 수 있을 정도로 성숙해졌다#

5) 주요 퍼블릭 클라우드 제공 업체(구글,아마존,마소)가 쿠버네티스 관리 서비스를 제공하고 있어 온프레미스에서 클라우드로 쉽게 이동이 가능하다#

6) 쿠버네티스는 그리스어로 조타수라는 뜻이다#

7) 핵심! 쿠버네티스의 아키텍처는 마스터와 노드로 구성되며 마스터가 노드를 제어하고 노드에서 컨테이너가 돌아간다.#

Reference#

k8s

15단계로 배우는 도커와 쿠버네티스 - 타카라 마호 저서

Last updated on