쿠버네티스 기본개념

Huiji Kim·2023년 11월 24일
0
post-custom-banner

Master Node(Control Plane)

API Server

  • 상태 변경, 조회
  • 유일하게 etcd와 통신
  • 권한 체크

etcd

  • 모든 상태와 데이터를 저장
  • 분산시스템 - 고가용성
  • 백업 필수

Scheduler Server

  • 새로 생성된 pod 감지 -> 실행할 Node 선택
  • 노드의 현재상태와 원하는상태 체크

Controller Server

  • 끊임없이 상태를 체크하고 원하는 상태를 유지

Worker Node

Proxy

  • iptables, ipvs
  • 내/외부 통신 설정
  • 네트워크 프록시 부하분산

kubelet

  • 각 노드에서 실행됨
  • pod 실행/중지, 상태체크
  • cni

Object

Pod

  • 가장 작은 배포 단위
  • 전체 클러스터에서 고유한 IP를 할당
  • 여러개의 컨테이너가 하나의 Pod에 속할 수 있음

Container + Log

  • host 폴더 공유

Container + Cache

  • 로컬호스트 네트워크 공유

Replica Set

  • 여러개의 Pod를 관리
  • 신규 Pod를 생성하거나 기존 Pod를 제거하여 원하는 수 유지

Deploy

  • 배포 버전을 관리

Daemon Set

  • 모든 노드에 Pod가 하나씩만 떠있길 원할 때
  • 로그수집, 모니터링

Stateful Set

  • 순서대로 Pod를 실행할 때
  • 같은 볼륨을 사용할 때

Job

  • 한번 실행하고 죽는 pod

Service

Cluster IP

  • 클러스터 내부에서 사용하는 프록시
  • cluster ip로 요청을 보내면 연결된 pod로 요청이 가기 떄무에 로드밸런서 역할도 함
  • 클러스터 내부에서 서비스 연결은 DNS를 이용

NodePort

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

LoadBalancer

  • 하나의 ip주소를 외부에 노출

Ingress

  • 도메인 또는 경로별 라우팅
  • Nginx, HAProxy, ALB
profile
새로 학습하는 내용을 기록합니다. \n 예전 주소 : https://blog.naver.com/gmlwl0720
post-custom-banner

0개의 댓글