ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Kubernetes (K8S): Object - 3. Deployment
    공부합시다!/Kubernetes 2022. 6. 12. 16:34
    728x90

    POD : 여러 개의 컨테이너를 추상화해 하나의 애플리케이션으로 동작하도록 만드는 컨테이너 묶음.

    Replicaset : 일정한 갯수의 POD를 유지하는 Controller

     

    1. 정의

     1.1. POD와 Replicaset 에 대한 선언과 업데이트 제공하는 Controller

     1.2. POD만으로 Service 운영시 복제 불가능

     1.3. 안정적인 서비스를 위해서 복제 조절은 필수조건

     1.4. POD의 복제를 비롯한 다양한 부분의 제어 가능

     

    2. nginx Deployment 

     2.1. deploymemt  구성파일 

      2.1.1. # nginxdep.yml 작성

    nginxdep.yml

      2.1.2. 적용

    # kubectl apply -f nginxdep.yml

      2.1.3. POD 확인

    # kubectl get pod

      2.1.4. replicaset 확인

    # kubectl get replicaset

      2.1.5. deployment 확인

    # kubectl get deployment

    적용 및 확인

      2.1.6. deployment 정보 확인

    # kubectl describe deployment nginx-deployment

    deployment 정보 확인

     

    3. Deployment Update

     3.1. deployment 구성파일 변경

      3.1.1. nginx image version 변경

    nginx image version 변경

      3.1.2. 변경 파일 적용

    # kubectl apply -f nginxdep.yml

      3.1.3. POD변경 확인

    kubectl get pod

    POD 재생성

      3.1.4. deployment 정보 확인

    # kubectl describe deployment nginx-deployment

    deployment 정보 확인

    4. Application  확장 : Replica  수 늘리기

     4.1. deployment 구성파일 

      4.1.1. replicaset 변경

    replicaset 변경

      4.1.2. 적용 및 확인

    # kubectl apply -f nginxdep.yml
    # kubectl get replicaset
    # kubectl get pod
    # kubectl get deployment

    적용 및 확인

      4.1.3. 변경 정보 history 확인 및 변경

    # kubectl rollout history deployment nginx-deployment
    # kubectl annotate deployment nginx-deployment \
    > kubernetes.io/change-cause="replicaset update"

    rollout 정보확인

     

    5. Deployment 삭제하기

     5.1. deployment 삭제 및 확인

    # kubectl delete deployment nginx-deployment
    # kubectl get deployment
    # kubectl get replicaset
    # kubectl get pod

    deployment 삭제

    차후 Roll Out 과 Roll Back 에 대해서 포스팅하는 시간을 갖도록 하겠습니다.

    Have a nice day!

    728x90
Designed by Tistory.