Bootcamp
[Kubernetes] Rolling Updte
K_Hyul
2024. 2. 5. 15:49
728x90
# yaml 적용
k apply -f echo-hname.yaml
# 확인
k9s
# node 정지
k cordon ip-192-168-28-76.ap-northeast-2.compute.internal
k scale deployment echo-hname --replicas=9
# 확인
k9s
정지 시킨 node에서는 확장되지 않는다.
# 다시 3개로
k scale deployment echo-hname --replicas=3
# 정지를 풀어준다
k uncordon ip-192-168-28-76.ap-northeast-2.compute.internal
vim rollout-hname.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: rollout-nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.15.12
k apply -f rollout-hname.yaml
k rollout history deployment rollout-nginx
# image: nginx:1.15.12 -> 1.16.0
k set image deployment rollout-nginx nginx=nginx:1.16.0 --record
curl -I --silent 192.168.94.71 | grep Server
Server: nginx/1.16.0
# 없는 버전으로 다운해봄
k set image deployment rollout-nginx nginx=nginx:1.17.23 --record
# error가 뜬 것을 볼 수 있음
k9s
# 다시 되돌리기
k rollout history deployment rollout-nginx
k rollout undo deployment rollout-nginx
k rollout status deployment rollout-nginx
ec2-user
k drain ip-192-168-28-76.ap-northeast-2.compute.internal --ignore-daemonsets --delete-emptydir-data
728x90