쿠버네티스란

쿠버네티스란 컨테이너 오케스트레이션 도구입니다. 간단히 말해, 여러 컨테이너를 관리하는 도구입니다. 앞서 도커 컴포즈에 관한 글에서 도커 컴포즈와 쿠버네티스를 간단히 비교한 적이 있습니다. 도커 컴포즈는 여러 컨테이너 생성 및 폐기가 가능하지만, 관리 기능은 없다고 하였습니다. 반면 쿠버네티스에는 관리 기능이 있죠. 뿐만 아니라 쿠버네티스는 동일 구성의 컨테이너 여러 세트를 생성하는 것에도 적합한데, 이 부분에서 쿠버네티스의 컨테이너 관리 기능 부각되는 게 아닐까 싶습니다. 만약 여러 컨테이너를 다루는 데 관리 기능이 없다면? 그랬다면, 엔지니어가 일일이 컨테이너 상태를 모니터링하며 장애가 발생할 때마다 컨테이너를 버리고 만들어주는 일을 해줘야만 했을 겁니다. 하지만 쿠버네티스는 바로 이 컨테이너 관리를 해주는 도구인 것이죠.

그럼 여러 컨테이너를 생성하고 또 관리하는 기능은 어떻게 제공되는 걸까요? 바로 이 작동 원리를 이해하기 위해선 먼저 쿠버네티스 구조를 이해할 필요가 있습니다.

 

 

쿠버네티스 구조

쿠버네티스는 여러 컨테이너를 관리할 수 있는 오케스트레이션 도구입니다. 따라서 이를 활용해 컨테이너 그룹을 배포할 수 있는데요. 중요한 건 쿠버네티스는 컨테이너 그룹을 포함해 클러스터라는 것을 만들어낼 수 있다는 점입니다.

클러스터란 컨트롤 플레인과 데이터 플레인으로 구성된 하나의 쿠버네티스 시스템을 의미합니다. 

 

왜 클러스터를 배포할까요? 만약 컨테이너만 배포한다면 어땠을까요?

그럼 쿠버네티스는 오케스트레이션 도구라 불릴 수 없었을 것입니다. 이점에서 쿠버네티스에는 관리를 위한 구성요소가 있어야 한다는 걸 생각해볼 수 있습니다. 이 관리를 담당하는 레이어가 컨트롤 플레인이고 컨테이너를 띄우고 서로 연결될 수 있도록, 일명 실무자와 같은 역할을 수행하는 레이어가 데이터 플레인입니다.

 


출처

 

쿠버네티스 컴포넌트

쿠버네티스 클러스터는 컴퓨터 집합인 노드 컴포넌트와 컨트롤 플레인 컴포넌트로 구성된다.

kubernetes.io

 

용어집

 

kubernetes.io

 

 

 

+ Recent posts