[쿠버네티스3] objects

Yona·2021년 2월 5일
0

kubernetes

목록 보기
3/3

유튜브 : 초보를 위한 쿠버네티스 안내서 를 보고 공부한 내용을 정리했습니다.

workloads

Pod

가장 작은 배포 단위
컨테이너를 감싼것 (여러개의 컨테이너가 하나의 pod에 속할 수 있음)
전체 클러스터에서 고유한 IP를 할당받아서 다른 pod들끼리의 통신이 가능

ReplicaSet

여러개의 pod을 관리
새로운 pod을 생성할땐 pod template를 참고하여 생성 (ex. replicas=4인데 3개 밖에 없네? 만들어야지)

Deployment

배포버전을 관리
내부적으로 replica set을 이용하여 버전관리

이외 kubernetes에서 제공하는 다양한 기본 workload

daemon set : 모든 노드에 하나씩만 떠있길 원하는 팟을 관리할때
stateful sets : 순서대로 사용하거나 같은 pod을 재활용할때
job : 한번 실행하고 죽는 pod


network

Service - clusterIP

클러스터 내부에서 사용하는 프록시
pod은 동적이이므로, 고유 IP를 통해 접근하기 위해 ClusterIP(고유 IP)를 가짐
그래서 클러스터 내부에서 서비스 연결은 DNS를 사용
다만 내부에서만 통신가능하고 외부에서 접근 불가능하기 때문에 외부접근을 위하여 nodeport 등장

Service - NodePort

노드(host)에 노출되어 외부에서 접근 가능한 서비스

Service - LoadBalancer

하나의 IP주소를 외부에 노출
각각의 nodeport 를 통신할때 중앙에서 거쳐가야하는 하나의 관리기관
ex) web에서의 요청 -> service (Loadbalancer) : 해당 nodeport로 연결 -> service(node port) : 해당 cluster로 연결 -> service(cluster ip) : 해당 pod으로 연결 -> 해당 Pod

Ingress

도메인 또는 경로별 라우팅 (ex) Nginx, HAProxy, ALB 등등)
요청마다 전부 loadbalancer를 만들지 않고, 도메인 혹은 경로별로 분기하도록 한다.

그 외 기본 오브젝트

volume - storage(EBS, NFS...)
Namespace - 논리적인 리소스 구분
ConfigMap / Secret - 설정
ServiceAccount - 권한 계정
Role/ClusterRole - 권한 설정 (get, list, watch, create)

profile
Sometimes you win, sometimes you learn 🏃‍♀️

0개의 댓글