Deployment

zuckerfrei·2023년 6월 11일
0

Kubernetes

목록 보기
13/63

역할

배포deploy를 위해 필요한 여러 기능을 지원함
이전에 배운 ReplicaSet 보다 상위의 개념이라고 함
아직까지는 Deployment 와 ReplicaSet 사이에 큰 차이가 없음


기능

  • 롤링 업데이트 기능
    • 모든 인스턴스를 한 번에 업그레이드 하는 것이 아니라, 하나씩 순차적으로 업그레이드
    • 한 번에 업그레이드하면 사용자에게 영향을 줄 수 있기 때문
  • 롤백 기능
    • 업그레이드 중 예기치 않은 오류가 발생해서 다시 되돌리는 기능
  • 일시 정지
    • 변경사항을 즉시 반영하고 싶지 않을 경우, 환경을 일시적으로 정지시킨 후 변경 사항을 반영하고 다시 시작하는 기능

생성

  • 마찬가지로 yaml 파일로 생성
  • 파일 내용은 RS와 완전 동일하지만 kind만 변경
  • spec.template 에는 배포할 파드에 대한 정의
  • 예시
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: myapp-deployment
      labels:
        app: myapp
        type: front-end
    spec:
      template:
        metadata:
          name: myapp-pod
          labels:
            app: myapp
            type: front-end
        spec:
          containers:
          - name: nginx-container
            image: nginx
      replicas: 3
      selector:
        matchLabels:
          type: front-end
  • deployment 생성시 자동으로 ReplicaSet을 생성한다.
  • RepliacaSet은 최종적으로 파드를 생성하므로 deploy 생성 후 kubectl get pods 명령으로 파드가 생성되었는지 확인할 수 있음
    • kubectl get all 명령어를 사용하여 모든 개체 확인 가능


출처

profile
무설탕 음료를 좋아합니다

0개의 댓글