'

ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Study44] Kubernetes (1)
    FISA 2026. 3. 31. 10:26

    드디어 도커를 지나

    네트워크를 지나

    리눅스를 지나서 쿠버네티스까지 왔습니다.

     

    What is K8s(Kubernetes)?

    : container화된 application을 automatic하게 deploy,extension,운영까지 지원하는 오케스트레이션 플랫폼!!

     

    도커를 쓸 때, 도커컴포즈로 한방에 껏다켰다하잖아요

    그것처럼 여러 개의 컨테이너를 관리하는 기능임니다.

     

    자동화된 배포 및 롤아웃(다운타임없음), 자체복구, 자동 스케일링 합니다.

    • docker의 경우 : docker run 명령어 20번 실행해서 생성
    • k8s의 경우 : 설정 정보(물리적 서버) 파일 하나로 20개의 컨테이너 생성 → 실행 → 관리

    라고 생각하시면 될 거 같아요

    운영 자동화 자동화된 롤아웃 및 롤백 애플리케이션의 변경 사항을 점진적으로 배포하며, 문제 발생 시 이전 버전으로 자동 복구
      자가 치유 (Self-healing) 실패한 컨테이너를 다시 시작하고, 응답이 없는 컨테이너를 교체하며, 비정상적인 노드의 컨테이너를 다른 곳에 재배치
    네트워킹 서비스 디스커버리 및 로드 밸런싱 DNS 이름이나 IP 주소를 사용해 컨테이너를 외부에 노출하고, 트래픽이 많을 경우 부하를 분산하여 안정성을 유지
    자원 관리 자동화된 빈 패킹
    (Bin Packing)
    각 컨테이너가 필요로 하는 CPU와 메모리를 지정하면, 가용한 노드에 자원을 효율적으로 배치하여 낭비를 감소
      수평 확장 (Auto-scaling) CPU 사용률 등에 따라 컨테이너의 개수를 자동으로 늘리거나 줄여 부하에 대응
    스토리징 스토리지 오케스트레이션 로컬 저장소, 클라우드 제공자(AWS, GCP 등), 네트워크 스토리지(NFS 등)를 원하는 대로 자동 마운트
    보안 및 설정 시크릿 및 구성 관리 암호, OAuth 토큰, SSH 키와 같은 민감한 정보(Secret)와 애플리케이션 설정(Config)을 컨테이너 이미지와 분리하여 관리

     

    의 기능을 가지고 있습니다.

     

     

    여기서 알아야 할 게, 클러스터입니다.

    하나의 시스템으로 묶는거를 의미해요.

    저번에 vCenter에서 클러스터 묶는거랑 똑같이 생각하면돼요.

    서비스 자동화 하는 쿠버네티스 클러스터 , 고가용성 지원하는 고가용성 클러스터, 대규모 연산하는 고성능 클러스터, 트래픽 분산 하는 부하분산 클러스터, 데이터를 저장하는 스토리지 클러스터가 있습니다.

     

    쿠버네티스 주요 객체에는 6개가 있어요.

    시큐리티 / Pod / Namespace / Service / Deploy / ConfigMaps 

     

     

     

    워크로드 (실제 실행 객체)

    :워크로드는 실제로 애플리케이션을 실행하는 객체들이며, 대부분 컨트롤러 형태로 Pod를 관리합니다.

    주요 구조

    Kubernetes에서 실제 실행 구조는 다음과 같이 이어집니다.

    Deployment > ReplicaSet > Pod

    • ReplicaSet
      지정된 개수의 Pod를 항상 유지하며, 장애 발생 시 자동으로 보충합니다.
    • Deployment
      ReplicaSet을 관리하면서 배포 전략까지 포함해 제어하는 객체로, 무중단 배포와 롤백을 지원합니다.

    기타 워크로드

    • StatefulSet
      DB처럼 상태 유지가 필요한 서비스에 사용되며, Pod의 순서와 고유성을 보장합니다.
    • DaemonSet
      클러스터의 모든 노드에 Pod를 하나씩 실행하며, 로그 수집이나 모니터링에 사용됩니다.
    • Job
      한 번 실행되고 종료되는 작업을 처리합니다.
    • CronJob
      Job을 주기적으로 실행하도록 스케줄링합니다.

    03. Pod Lifecycle

    Pod는 생성부터 종료까지 여러 상태를 가지며, 그 흐름을 이해하는 것이 중요합니다.

    주요 상태

    • Pending
      생성 요청은 되었지만 아직 실행되지 않은 상태
    • ContainerCreating
      컨테이너를 생성하는 과정
    • Running
      정상적으로 실행 중인 상태
    • Completed
      작업이 정상적으로 완료된 상태 (주로 Job)
    • Error / CrashLoopBackOff실행 중 오류 발생 또는 반복 실패 상태
    728x90

    댓글

Designed by Tistory.
티스토리 친구하기