Container : 어플리케이션 및 서비스를 실행하는데 필요한 요소를 포함하는 소프트웨어 패키지.
운영체제를 컨테이너로 나누고 어플리케이션을 격리된 환경에서 사용가능
Container Orchestration: 컨테이너를 효과적으로 관리하도록 도와주는 것
Container Orchestration Tools: k8s, Docker Swarm, Apache Mesos
Kubernates란 컨테이너 기반의 어플리케이션을 개발하고 배포할 수 있도록 설계된 오픈 소스 플랫폼
Kubernates Objects: Pod: 쿠버네티스의 기본적인 배포단위
Service: 배포한 파드를 외부에서 접근할 수 있게 한다.
NameSpace: 쿠버네티스 클러스터의 논리적인 분리 단위
Volume: 컨테이너의 파일을 저장하고 컨테이너간 파일을 공유할 수 있는 저장소
쿠버네티스의 특징 : 무중단 서비스, 클라우드 벤더 종속성 해결, 효율적인 자원사용, 유연한 확장성, 어플리케이션 개발 단순화, 어플리케이션 배포 가속화
쿠버네티스 구조: 쿠버네티스 클러스터 < 마스터노드,워커노드 , 컨테이너 런타임: 파드를 실행하는 엔진, 영구스토리지: 파드 안에 있는 데이터 저장소
API 서버: 클러스터로 요청이 들어왔을때 그 요청이 유효한지 검증
etcd : 클러스터의 상태를 저장합니다. 클러스터의 필요한 정보,파드와 같은 리소스들의 상태정보가 담겨있는 곳
스케쥴러: 파드를 위치시킬 워커노드를 확인하고 API 서버에 전달
kubelet: API 서버가 파드를 위치시킬 워커노드에 있는 kubelet에 전달하는데 kubelet은 해당정보를 통해 파드 생성
쿠버네티스 컨트롤러: 파드를 관리하는 역할. 종류로는 데몬셋, 디플로이먼트, 레플리카셋,잡,크론잡
롤링업데이트: 기존에 배포된 어플리케이션을 수정해 재배포할 때, 새 버전의 어플은 수를 하나씩 늘려고가고 이전버전은 줄여가는 방식
쿠버네티스 서비스 종류: 클러스터 IP , 노드포트, 로드밸런서
CNI(Container Network Interface): 컨테이너간 통신을 위한 네트워크 인터페이스
카테고리 없음