쿠버네티스의 기초 개념 (1)

반응형
728x90
반응형

쿠버네티스의 개념

컨테이너를 실행하는 서버 클러스터를 하나의 커다란 논리 서버로 만드는 컨테이너 오케스트레이터이다. 또한 컨테이너를 쉽고 빠르게 배포 및 확장할 수 있고, 관리를 자동화해주는 오픈소스 플랫폼이다. 

 

  • 오케스트레이터

데브옵스(DevOps) 직원(또는 자동화)이 레지스트리에서 이미지를 가져오고, 컨테이너 이미지를 배치하고, 실행 중인 컨테이너를 관리할 수 있게 하는 도구이다.

 

 

역할

1) 컨테이너를 배포/실행 하면서 '무중단 롤링 업그레이드'를 지원한다.

= 새로운 버전의 컨테이너가 배포되더라도, 기존의 컨테이너가 중지되지 않고 교체되며 이를 무중단 배포라고 한다.

 

2) 하나 혹은 다수의 컨테이너가 배치된 포드(pod)를 클러스터의 가용 노드에 스케줄링 할 수 있다.

 

3) 실행중인 컨테이너의 상태를 모니터링할 수 있다.

 

 

용어정리

용어 설명
노드 (node) 클러스터에 속한 가상 혹은 물리 서버
포드 (pod) 쿠버네티스에 배포할 수 있는 컴포넌트의 최소 단위
하나 혹은 여러개의 컨테이너를 포함 가능
디플로이먼트 (deployment) 포드를 배포 및 업그레이드 실행
디플로이먼트 객체는 포드 생성 및 모니터링은 레플리카 셋이 담당하도록 위임
레플리카셋 (ReplicaSet) 지정한 수의 포드가 항상 실행하게 하고, 포드가 삭제되면 레플리카 셋이 대체할 포드를 실행
서비스 (Service) 하나 혹은 여러개의 포드를 연결하고자 사용하는 안정적인 네트워크 엔드포인트
인그레스 (ingress) 쿠버네티스 클러스터의 서비스에 대한 HTTP 기반의 외부 접근을 관리
네임스페이스 (namespace) 쿠버네티스 클러스터의 리소스를 모으고 특정 수준으로 격리하고자 사용
컨피그 맵 (configMap) 컨테이너에서 사용하는 구성을 저장할때 사용
시크릿 (secret) 자격 증명 등의 컨테이너에서 사용하는 민감한 정보를 저장할때 사용
DaemonSet 클러스터 노드 집합의 각 노드마다 하나의 포드가 실행되게한다

 

 

더 알아보기

쿠버네티스는 실행중인 포드와 컨테이너를 위한 서비스 검색을 제공한다. 쿠버네티스의 서비스 객체를 정의하면 요청을 가용 포드로 로드밸런싱하고 서비스를 검색할 수 있다. 

 

쿠버네티스는 직접 컨테이너를 실행하지 않고, 포드를 실행하여 포드 속의 각 컨테이너가 동일한 리소스 및 로컬 네트워크를 공유하게된다. 

 

컨테이너를 모아 포드를 만들기 때문에, 만약 포드 하나의 장애가 감지되면 쿠버네티스는 자동으로 해당 포드를 복제한 다음 클러스터에 배포한다. 각 컨테이너를 관리하지 않고, 하나의 포드에 여러개의 컨테이너를 묶어서 관리하기 때문에 가능하다.

 

 

반응형

Designed by JB FACTORY