如何重新啟動或重置 K3s 叢集 Pod

如何重新啟動或重置 K3s 叢集 Pod

我有一個包含以下 pod 的k3s ( v1.21.1+ ) 叢集:k3s1

kube-system   pod/calico-node-xxxx                          
kube-system   pod/calico-kube-controllers-xxxxxx   
kube-system   pod/metrics-server-xxxxx
kube-system   pod/local-path-provisioner-xxxxx
kube-system   pod/coredns-xxxxx

如何使用命令(kubectl也許)或任何腳本重新啟動(停止並再次啟動 Pod)Pod?

答案1

Kubernetes 不支援停止/暫停 Pod 的目前狀態。但是,您可以使用下列命令執行Deployment/的轉出重新啟動(請參閱:DaemonSetkubectl rollout restartKubectl 參考文檔)。

若要重新啟動命名空間中的所有Deployments和,可以使用下列命令:DaemonSetskube-system

# kubectl -n kube-system rollout restart daemonsets,deployments
daemonset.apps/calico-node restarted
deployment.apps/local-path-provisioner restarted
deployment.apps/coredns restarted
deployment.apps/metrics-server restarted
deployment.apps/calico-kube-controllers restarted

您可能從上面的輸出中註意到,calico-node是 a DaemonSet,其餘 Pod 由 管理Deployments

如果需要,您可以重新啟動特定的Deployment/ Daemonset

# kubectl -n kube-system rollout restart deployment metrics-server
deployment.apps/metrics-server restarted
# kubectl get pod -n kube-system | grep metrics-server
metrics-server-6bd8786b6c-74qlt            1/1     Running       0          2s
metrics-server-647d5b4475-ch9zj            1/1     Terminating   0          28s

相關內容