kubernetes

신홍석·2022년 5월 4일
0

kubernetes

쿠버네티스
쿠버네티스는 컨테이너화된 워크로드와 서비스를 관리하기 위한 이식성이 있고, 확장가능한 오픈소스 플랫폼이다

  • 위는 쿠버네티스 공식 사이트 정의이다

컨테이너를 이용하면 우선 VM 을 사용할때 보다 가볍게 돌아간다. VM 에서는 각각의 VM이 OS를 가지고 있어서 OS 위에 또다른 OS가 돌아가는 형태이기 때문에 무겁게 돌아간다고 볼 수 있다. 하지만 컨테이너를 이용하면 OS를 공유 하기 때문에 보다 더 가볍게 돌아간다.

VM 이미지를 생성하는것보다, container 이미지를 생성하는것이 보다 쉽고 효율적이다.

쿠버네티스 구성형태
클러스터 => 노드 => 파드 => 컨터이너 => 도커
보통 한개의 노드 안에 한개의 파드가 존재한다.

쿠버네티스에서 가장 핵심적인 기능은 업데이트를 할때 서버를 종료할 필요가 없음.

기본적으로 배포를 할때, 기존에 만들어져 있는 서비스를 업데이트 하기 위해서 필요한 배포 방법이 존재한다. 기존에 존재하는 노드를 하나 더 만들어서 업데이트를 한다. 그리고 사용자들을 새로 만들어진 노드로 이동 시킨다. 사용자들을 이동 시키는 방법에는 여러가지가 있는데 몇가지 소개하자면 롤링 배포와 카나리 배포등이 존재한다.
롤링 배포: 처음부터 조금씩 조금씩 업데이트 전 노드에서 업데이트 된 노드로 넘긴다.
카나리 배포: 처음에 조금 넘겨보고 이상없으면 다 넘긴다.

profile
백엔드 개발자 공부

0개의 댓글