k8s

[MSA] k8s 간단 개념 정리

Posted by qwlake on September 15, 2020

쿠버네티스 #2 - 개념 이해 (1/2)

image

기본 오브젝트

Pod

이미지 → 도커 프로세스 생성(컨테이너)

여러 개의 컨테이너가 네트워크를 구성 → docker-compose

docker-compose → pod

Volume

각 컨테이너 내에서는 각자의 저장 공간을 갖는데 → 이는 일시적인 공간. 종료하면 사라짐 → pod 내부의 공용 공간에 volume을 마운트 해서 사용

Service

여러 개의 pod를 묶은 단위. 로드밸런서가 라벨과 셀렉터를 이용해 선택.

네임스페이스

클러스터 내의 논리적인 분리단위 → 개발/운영/테스트 3개의 네임스페이스 운영 가능. 자원, 접근권한 다르게 설정 가능

컨트롤러

Replication Controller

지정된 숫자로 pod 기동 및 관리

  • Replica의 수
  • pod selector: 라벨 기반 pod 선택
  • pod template: docker-compose와 비슷하게 pod를 구성하는 내용

블루/그린 배포: 새로운 시스템 만들어서 한꺼번에 이사

롤링 업데이트: pod를 하나씩 생성 후 이사

Deployment

pod 배포를 위해 RC 생성, 관리

RC보다 추상화된 개념

DaemonSet

모든 각 노드, 특정 노드에서 pod가 하나씩만 돌게함.

로그 등에 활용

Job

AWS lambda 같은거

Cron jobs

주기적 이벤트 실행

StatefulSet

데이터베이스 관리 특화