본문 바로가기
쿠버네티스 :: Kubernetes/01 쿠버네티스 용어 살짝 맛보기

02 쿠버네티스 동작방식 및 특징

by Jasie 2020. 6. 17.

1장은 쿠버네티스를 맛보기 위한 공간입니다.

컨테이너, 오케스트레이션 시스템, 쿠버네티스 특징을 알고자합니다.

 

  • 컨테이너

 

위그림은 컨테이너 구조와 가상머신의 구조의 차이점인데, 기존 방식과 달리 구조상 레이어가 간단해지므로 가상머신보다 성능을 높이기 유리합니다. 

도커를 이용하면 위 그림처럼 간단한 명령으로 컨테이너 이미지를 만들어 저장할수있고 도커를 설치한 호스트에 만들어 놓은 컨테이너를 다운로드해 컨테이너를 실행 시킬수있습니다. 즉 화물 선박의 컨테이너처럼 미리 포장해놓은것을 그대로 옮겨서 사용한다는 개념입니다.

 




 

 

이와 같이 컨테이너가 등장하기 전에는 호스트 환경에서도 개발 환경에 필요한 설정을 똑같이 설정해야했고 그 과정에서 여러 장애 요소가 많이 발생해서 불편했습니다. 이를 컨테이너 오케스트레이션 시스템으로 사용해 배포와 관리가 편해진것입니다.




  • 오케스트레이션 시스템

실제 상용화된 서비스들을 이용할때는 장애가 발생할수있으므로 보통 서버를 하나만으로 운영하지 않습니다. [그림 1-3] 과 같이 컨테이너 이미지를 만들고 여러대의서버에 컨테이너 배포하는 과정을 수동 제어해야합니다.   수동으로 제어하는 부분을 '오케스트레이션 시스템' 이라고합니다.

 

 

 

오케스트레이션 시스템 을 클러스터로 구성하면 서버를 1대든 10대든 컨테이너를 명령 한번으로 자동 배포할 수 있습니다.

 

클러스터 일부에서 장애가 발생하면 알아서 장애가 발생한 서버에 있는 컨테이너를 정상 운영중인 다른 서버로 옮겨서 실행하고 자동으로 장애가 발생한 컨테이너로 가는 트래픽을 자동으로 중지 시킨후 옮긴 컨테이너로 보냅니다.

 

 

쿠버네티스의 특징



1. 선언적 API

 

컨테이너가 항상 10개가 실행된다고 가정해놓고 시스템을 돌리고있는데 서버장애로 인해 8개의 컨테이너가 돌아가는 상황이 있을것입니다.

 

이때 서버 장애를 처리하고 다시 클러스터에 서버를 추가하면 쿠버네티스는 추가된 서버에 컨테이너 2개를 자동으로 실행시켜 컨테이너 10개를 실행 시킬수 있도록 합니다. 이런 '선언적' 특징이 없다면 수동으로 컨테이너를 추가해야하며 컨테이너가 모두 정상 동작하는지도 직접 확인해야합니다.
이를 줄여 비용적 측면에서 아주 유리해집니다. 사용자가 설정한 명령, 설정이 없어질 걱정도 하지 않아도 됩니다. 클러스터가 동작중이라면 항상 원하는 상태로 복구될 것입니다.

 

 

 

2. 워크로드 분리

쿠버네티스는 운영체제처럼 분산된 프로세스의 관리를 추상화하는 레이어가 되므로 시스템 운영에 대한 부담을 덜어줍니다.

 

 

3. 제약없는 실행

개인 컴퓨터, 여러대의 서버, 퍼블릭 클라우드에서도 쿠버네티스를 사용할수있고 테스트용도로 이용한다면 웹에서도 사용해 볼 수 있습니다. 즉 접근이 쉬워 많은 사용자가 몰린 원인이 되었습니다.

 

 

4. 커뮤니티

쿠버네티스 커뮤니티1

쿠버네티스 커뮤니티2

쿠버네티스 커뮤니티3

댓글