k8s中推出重啟pod和刪除pod有什麼不同?他們都重新啟動 Pod 嗎?
答案1
在 Kubernetes 中,rollout restart 和 delete 指令分別用於重新啟動或刪除 pod。然而,它們的運作方式不同,對 Pod 和整個系統有不同的影響。
rollout restart指令用於重啟Kubernetes中的部署或副本集。這意味著它將用新的 Pod 取代部署或副本集中的現有 Pod,新的 Pod 將具有最新版本的應用程式程式碼和任何更新的配置。這對於將更新部署到應用程式或重新啟動無法正常運行的部署非常有用。
另一方面,delete指令用於直接刪除Pod,不會影響部署或副本集。這將從系統中刪除 Pod 並釋放它正在使用的資源。這對於刪除不再需要的 pod 或解決單一 pod 的問題非常有用。
總的來說,rollout restart和delete指令都可以用來重啟Kubernetes中的pod,但是它們的運作方式不同,對系統的影響也不同。 rollout restart指令用於重新啟動整個部署或副本集,而delete指令用於刪除單一pod。
答案2
對於最終到達這裡的其他人來說,kubectl rollout
不適用於吊艙。根據命令列幫助 ( kubectl rollout -h
):
Valid resource types include:
* deployments
* daemonsets
* statefulsets
在我撰寫本文時,如果您嘗試在 Pod 上執行推出重新啟動,您可能會收到以下錯誤訊息:
$ kubectl rollout restart pod test-zrdcs
error: pods "test-zrdcs" restarting is not supported
對於 Pod 資源,刪除操作將按照其提示操作並嘗試刪除 Pod。如果 Pod 由更高層級的資源(例如副本集或部署)管理,則該物件可能會取代已刪除的 Pod。
kubectl
這是我現在使用的版本:
$ kubectl version --client --short
Client Version: v1.25.4