iT邦幫忙

0

k8s argocd 滾動式更新 rollup 的辦法

  • 分享至 

  • xImage

大家好,
最近在練習 argocd 去更新所使用的 k8s pod,但是做不到我要的效果

我希望我不要更動 k8s deployment.yaml 的時候,就能夠更新我的 container,
預想我的 container 會 v1->v2->v3 依此類推
但是我用 ci 把 container 更新後,

我的 k8s的容器卻不會更新。

我在 argocd UI上面按了許久,不知道要怎麼讓 argocd 執行這樣的效果,
不知道是不是 argocd sync 這一些要怎麼調整才能跟下面的指令一樣
https://ithelp.ithome.com.tw/upload/images/20231203/20160038sGtvHgaJ30.png

以下是我用 kubectl 指令做出的效果

❯  
Every 2.0s: kubectl get pod -n app1                                                                                                                    BigfundeMacBook-Air-2.local: Sun Dec  3 23:23:40 2023
NAME                                READY   STATUS    RESTARTS   AGE
nginx-deployment-7cbd57bcf8-lstpl   1/1     Running   0          59s
nginx-deployment-7cbd57bcf8-mxwxm   1/1     Running   0          49s
nginx-deployment-7cbd57bcf8-rxnz9   1/1     Running   0          74s


❯ kubectl rollout restart deployment/nginx-deployment  -n app1

❯ 
Every 2.0s: kubectl get pod -n app1                                                                                                                    BigfundeMacBook-Air-2.local: Sun Dec  3 23:25:32 2023

NAME                                READY   STATUS    RESTARTS   AGE
nginx-deployment-776459d778-jt2zd   1/1     Running   0          45s
nginx-deployment-776459d778-l5t7w   1/1     Running   0          36s
nginx-deployment-776459d778-vcs2m   1/1     Running   0          54s

這樣三個 nginx 都更新到最新版本了。

雖然我覺得沒什麼用,但是我提供我的 deployment.yaml
以下是我的 deployment.yaml

---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx
  strategy:
    type: RollingUpdate # 滾動式更新 RollingUpdate
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: 容器位置/nginx:latest
        ports:
        - containerPort: 80
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友回答

立即登入回答