쿠버네티스(Kubernetes)에 대해 핵심적인 내용을 정리해드리겠습니다.

  1. 쿠버네티스란?
  • 컨테이너화된 애플리케이션의 자동 배포, 스케일링, 관리를 위한 오픈소스 플랫폼
  • 구글이 개발했으며 현재는 CNCF(Cloud Native Computing Foundation)에서 관리
  • 컨테이너 오케스트레이션의 사실상 표준(De facto standard)
  1. 주요 특징
  • 자동화된 복구(Self-healing)
  • 수평적 확장(Horizontal scaling)
  • 자동화된 롤아웃과 롤백
  • 서비스 디스커버리와 로드 밸런싱
  • 자동화된 빈 패킹(bin packing)
  • 시크릿과 구성 관리
  1. 핵심 구성 요소

컨트롤 플레인 컴포넌트:

  • kube-apiserver: API 서버, 클러스터의 게이트웨이
  • etcd: 클러스터의 데이터베이스
  • kube-scheduler: 새로운 파드 배치 담당
  • kube-controller-manager: 컨트롤러 실행 관리

노드 컴포넌트:

  • kubelet: 각 노드에서 실행되는 에이전트
  • kube-proxy: 네트워크 규칙과 포워딩 담당
  • 컨테이너 런타임: 컨테이너 실행 환경
  1. 주요 개념

    Pod: 가장 작은 배포 단위
    ReplicaSet: Pod 복제본 관리
    Deployment: 선언적 업데이트 관리
    Service: Pod 그룹에 대한 단일 접점 제공
    Ingress: 외부 접근 규칙 정의
    ConfigMap: 설정 정보 관리
    Secret: 민감한 정보 관리
  2. 실제 사용 예시:

    apiVersion: apps/v1
    kind: Deployment
    metadata:
    name: nginx-deployment
    spec:
    replicas: 3
    selector:
     matchLabels:
       app: nginx
    template:
     metadata:
       labels:
         app: nginx
     spec:
       containers:
       - name: nginx
         image: nginx:1.14.2
         ports:
         - containerPort: 80
  3. 장점

  • 확장성과 고가용성
  • 선언적 구성 관리
  • 자동화된 운영
  • 클라우드 중립적
  • 큰 커뮤니티 지원
  1. 단점
  • 학습 곡선이 가파름
  • 작은 규모에선 과도할 수 있음
  • 복잡한 설정과 관리 필요

추가적으로 더 자세한 내용이나 특정 부분에 대해 알고 싶으신 것이 있다면 말씀해 주세요.

'IT > kubernetes[k8s]' 카테고리의 다른 글

Kubernetes PV와 PVC 개요  (0) 2024.11.16
Kubernetes Pod 개요  (2) 2024.11.16
쿠버네티스 기본 명령어 모음  (0) 2024.11.15
Taints와 Tolerations  (1) 2024.11.15
Kubernetes Ingress  (0) 2024.11.14

+ Recent posts