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