Study/Kubernetes

[Intro] K8S란? 왜 사용하는 걸까?

Dream Amal 2024. 11. 18.

들어가기 전에

이 글은 RoadMap 에 대한 첫 번째 포스팅인
쿠버네티스란 무엇인가? 에 대한 개요 를 다룹니다.
이 글에서는 쿠버네티스의 기본 개념을 최대한 쉽게 설명하고,
현대 IT 인프라에서 왜 중요하게 여겨지는지 간단하게 알아보겠습니다.


쿠버네티스(Kubernetes)는 무엇인가요?

쿠버네티스(Kubernetes)는
클라우드 환경에서 애플리케이션을 쉽게 배포하고, 확장하며, 관리할 수 있도록 도와주는 도구입니다.
특히 컨테이너(Container)라는 기술을 기반으로 작동합니다.

컨테이너란?

컨테이너는 프로그램, 설정 파일, 그리고 실행 환경 등을 한곳에 묶어 어디서든 똑같이 실행할 수 있게 만든 작은 상자라고 생각하면 됩니다.
*"내 컴퓨터에서는 잘되는데 다른 컴퓨터에서는 왜 안 될까?"* 같은 문제를 해결해줍니다.


쿠버네티스는 왜 필요한가요?

컨테이너를 몇 개만 사용할 때는 문제가 없지만,
수십, 수백 개의 컨테이너를 관리하려면 어떻게 해야 할까요?

  • 누가 컨테이너를 켜고 끌지 관리할까요?
  • 서버가 고장 나면 컨테이너는 어떻게 복구할까요?
  • 갑자기 사용자가 많아지면 어떻게 컨테이너를 늘릴까요?

이 모든 문제를 해결하는 것이 바로 쿠버네티스입니다.
쿠버네티스는 컨테이너 오케스트레이션(Orchestration)을 담당하는 도구입니다.
예를 들어, 서버가 고장나면 그 서버에서 실행되던 애플리케이션을 다른 서버로 옮겨야 하는데, 이를 자동으로 처리해주는 것이 바로 쿠버네티스입니다.

즉, 컨테이너가 제대로 작동하도록 지휘하고 관리해주는 역할을 합니다.


쿠버네티스의 주요 기능

1.자동화된 배포와 복구
컨테이너가 고장 나면 자동으로 다시 시작하거나 복구합니다.

2.확장성
사용자가 많아지면 컨테이너 수를 자동으로 늘리고, 줄어들면 다시 줄입니다.

3.로드 밸런싱
사용자 요청을 여러 컨테이너로 나누어 효율적으로 처리합니다.

4.자원 관리
서버의 CPU, 메모리 같은 자원을 적절히 나누어 사용하도록 관리합니다.


쿠버네티스를 사용하면 어떤 점이 좋을까요?

1.효율적인 운영
복잡한 작업을 자동으로 처리해 주니, 운영이 훨씬 쉬워집니다.

2.높은 안정성
서버가 고장 나도 애플리케이션이 계속 작동하도록 도와줍니다.

3.유연한 확장
어떤 환경에서도 쉽게 확장하거나 축소할 수 있습니다.


정리

쿠버네티스는 복잡한 IT 환경에서 애플리케이션을 효율적으로 관리하고 자동화하는 강력한 도구입니다. 비록 처음에는 다소 어려워 보일 수 있지만, 그 개념 자체는 컨테이너라는 작은 단위를 관리하는 시스템이라고 생각하면 이해하기 쉽습니다.
자동화된 배포, 확장성, 자가 복구 기능 등을 통해 개발자들은 인프라 관리에 대한 부담을 덜고 애플리케이션 개발에 집중할 수 있습니다.

개념 정리

  • 컨테이너 : 애플리케이션을 실행하는 작은 상자
  • 쿠버네티스 : 이 상자들을 여러대의 컴퓨터에 나눠서 배치하고, 문제가 생기면 자동으로 해결해주는 관리자

관련해서 궁금한 점이 있다면 댓글로 남겨주세요! 😊

728x90

댓글