초이로그

[Kubernetes] 쿠버네티스 본문

etc

[Kubernetes] 쿠버네티스

수연초이 2022. 8. 7. 16:03

쿠버네티스(Kubernetes)?

  • 도커 컨테이너와 도커 스웜, 도커 컴포즈 도구의 개념을 한군데로 모아 사용할 수 있는 훌륭한 프로젝트
  • 사실상 표준으로 사용되고 있는 컨테이너 오케스트레이션 도구. 구글에서 2014년에 오픈소스로 공개한 이후, 오픈시프트, 랜처와 같은 클라우드 플랫폼을 비롯한 많은 회사들이 실제 서비스 운영에 도입해 사용중
  • 도커 스웜 모드처럼 여러 대의 도커 호스트를 하나의 클러스터로 만들어준다는 점은 같지만, 세부적인 기능을 더욱 폭넓게 제공하기 때문에 실제 서비스 운영 단계에서는 쿠버네티스가 가장 많이 사용된다.

 

[장점]

  • 서버 자원 클러스터링, 마이크로서비스 구조의 컨테이너 배포, 서비스 장애 복구 등 컨테이너 기반의 서비스 운영에 필요한 대부분의 오케스트레이션 기능을 폭넓게 지원
  • 구글, 레드햇을 비롯한 많은 오픈 소스 진영에서 쿠버네티스의 소스코드에 기여하고 있기 때문에 성능과 안정성 면에서 신뢰받는다.
  • 영속적 볼륨(Persistent Volume), 스케줄링, 장애 복구, 오토 스케일링, 서비스 디스커버리 및 인그래스(Ingress) 등 컨테이너 기반의 클라우들르 운영할 때 필요한 대부분의 기능과 컴포넌트를 사용자가 직접 커스터마이징 가능
  • 높은 확장성 - CNCF(CloudNative Computing Foundation) 및 다른 클라우드 운영 도구들과 쉽게 연동된다.

[단점]

  • 쿠버네티스는 다른 오케스트레이션 툴보다 훨씬 다양한 지식을 필요로 하며, 쿠버네티스 자체의 관리가 더욱 어려울 수 있다.
  • 도커 스웜보다 구조가 훨씬 더 복잡하고 사용 방법이 다양하기 때문에 쿠버네티스를 배우는 학습 비용 또한 고려해야한다.
  • 일정 규모 이상의 서비스를 제공하는 회사에서는 쿠버네티스를 도입해 더욱 안정적이고 효율적인 서비스를 제공할 수 있지만, 소규모 조직에서는 오버 엔지니어링이 될 수 있다.

[정리]

현재 운영 중이거나 계획하고 있는 서비스가 쿠버네티스에 적합한지, 또한 쿠버네티스를 운영하고 관리하기 위한 인력이나 비용을 감당할 수 있는지 등을 반드시 생각해보는 것이 좋다.

 

 

 

도커 스웜 모드로 컨테이너 오케스트레이션의 개념을 이해했고, 도커 컴포즈로 YAML파일에서 컨테이너를 정의하는 방법을 익혔다면, 쿠버네티스로 상용 단계의 컨테이너 플랫폼 구축을 해보자. (현재 이전 단계 모두 미숙하다)

근로 회식 때 카카오에서 쿠버네틱스를 도입한 이후 새해마다 서버가 터지지 않게 되었다는 이야기를 넌지시 듣게된 후 궁금해져 살짝 찾아봤다. 깊게 공부하기도 전에 확실히 팀프로젝트나 사이드 프로젝트에서는 오버 엔지니어링이라는 생각이 든다😅

나중에 개념 공부가 된 이후 더 읽어봐야지: https://tech.kakao.com/tag/kubernetes/

 

출처: [책] 시작하세요! 도커/쿠버네티스

'etc' 카테고리의 다른 글

[Docker] 도커는 왜 사용하는가?  (0) 2022.08.07