자격증/CKA

[CKA] Udemy 32. Deployments

14ben 2024. 6. 26. 00:01
728x90

Kubernetes Deployment

 

  • Pod, ReplicaSet 등의 Kubernetes 개념을 배제하고,
  • 프로덕션 환경에서 애플리케이션을 배포하는 방법

 

프로덕션 환경에서의 애플리케이션 배포

  • 웹 서버를 프로덕션 환경에 배포할 때 필요한 조건
    • 여러 인스턴스를 실행
    • 새로운 버전의 애플리케이션이 Docker Registry에 업로드될 때 무중단 업그레이드 필요
    • 모든 인스턴스를 한 번에 업그레이드하지 않고 순차적으로 업그레이드하는 롤링 업데이트 필요
    • 예상치 못한 오류 발생 시 최근 변경 사항을 롤백할 수 있어야 함
    • 여러 변경 사항을 일시 정지 후 한 번에 적용하는 기능 필요

 

Kubernetes Deployment의 기능

  • Deployment는 Pod와 ReplicaSet을 관리하는 상위 개념
  • Deployment의 주요 기능
    • 무중단 업그레이드
    • 롤백
    • 일시 정지 및 재개

 

Pod와 ReplicaSet의 개념 복습

  • Pod: 애플리케이션의 단일 인스턴스를 캡슐화한 객체
  • ReplicaSet: 여러 Pod를 관리하여 고가용성을 제공

 

Deployment의 주요 기능 설명

  • Deployment는 무중단 업그레이드와 롤백 기능을 제공
  • 여러 변경 사항을 일시 정지 후 한 번에 적용할 수 있음.

 

Deployment 정의 파일 작성 방법

  • Deployment 정의 파일 작성
    • API 버전: apps/v1
    • 메타데이터: 이름과 레이블 포함
    • 스펙: 템플릿, 레플리카 수, 셀렉터 포함
    • 템플릿: Pod 정의 포함

 

Deployment  확인

Deployment 생성 시 자동으로 Replica, pod 들이 만들어 지는 것을 확인 가능

  • kubectl get deployment 명령어로 생성된 Deployment 확인
  • Deployment는 자동으로 ReplicaSet 생성
  • kubectl get replicaset 명령어로 새로운 ReplicaSet 확인
  • kubectl get pods 명령어로 생성된 Pod 확인

 

Deployment와 ReplicaSet의 차이점

  • Deployment와 ReplicaSet의 차이점
    • Deployment는 ReplicaSet을 생성하고 관리
    • Deployment는 무중단 업그레이드, 롤백, 일시 정지 및 재개 기능을 제공

 

결론

  • Deployment는 Kubernetes에서 중요한 역할을
  • 무중단 업그레이드, 롤백, 일시 정지 및 재개 기능을 제공
  • 프로덕션 환경에서 안정적으로 애플리케이션을 배포하고 관리

 

 

 

728x90

'자격증 > CKA' 카테고리의 다른 글

[CKA] Udemy 37. Services - Cluster IP  (0) 2024.07.01
[CKA] Udemy 36. Services - NodePort  (0) 2024.06.30
[CKA] Udemy 29. ReplicaSet  (0) 2024.06.24
[CKA] Udemy 22. Pods with YAML  (0) 2024.06.23
[CKA] Udemy 21. Pods  (0) 2024.06.23