-
Kubernetes Deploymentkubernetes 2021. 12. 20. 21:10
Deployment 정의하기
deployment.yml 파일을 작성한다.
Kubernetes ReplicaSet 생성, 확인, 수정, 삭제하기 에서 kind 를 Deployment 로 수정 후 deployment.yml 로 저장한다.
apiVersion: apps/v1 kind: Deployment metadata: name: myapp spec: selector: matchLabels: app: nginx replicas: 3 template: metadata: name: nginx labels: app: nginx spec: containers: - name: nginx-container image: nginx
Deployment 생성하기
kubectl apply 로 deployment.yml 실행
kubectl apply -f deployment.yml # kubectl create -f deployment.yml
Deployment 확인하기
kubectl get all # kubectl get deployments # kubectl describe deployment myapp
Deployment 변경해 보기
replicas=4 로 변경하기
deployment.yml 파일 수정 후 kubectl apply -f deployment.yml 실행한다.
혹은 kubectl edit deployment myapp 을 실행하면 myapp deployment editor 가 뜨는데, 여기서 수정 후 저장하면 수정한 부분이 적용된다. deploy 진행 상태를 아래 명령어로 확인할 수 있다.
kubectl rollout status deployment myapp
container image 를 nginx 에서 nginx:1.20 으로 변경하기
kubectl edit deployment myapp 을 실행해 수정 후 저장하면 변경된 내용이 저장된다. 최초 deploy 이후 변경 history 를 아래 명령어로 확인할 수 있다.
kubectl rollout history deployment myapp
revision=2 가 nginx:1.20 으로 수정한 revision 인데, 변경된 부분을 아래처럼 확인할 수 있다.
kubectl rollout history deployment myapp --revision=2
revision=1 로 돌아가기
현재 revision=2 로 배포되어 있는데, revision=1 로 돌아가 보자
kubectl rollout undo deployment myapp --to-revision=1
revision=1 로 돌아간 revision 이 revision=3 이 되어 적용되어 있다. (기존 revision=1 은 없어짐)
Deployment 삭제하기
kubectl delete deployment myapp
'kubernetes' 카테고리의 다른 글
Kubernetes 실습 - Voting App (0) 2021.12.27 Kubernetes Services (0) 2021.12.25 Kubernetes ReplicaSet 생성, 확인, 수정, 삭제하기 (0) 2021.12.20 Kubernetes Pod 생성, 확인, 수정, 삭제하기 (0) 2021.12.11