如何重启或重置 K3s 集群 pod

如何重启或重置 K3s 集群 pod

我有一个 k3s ( v1.21.1+ k3s1) 集群,其中包含以下 pod:

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 ?

答案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是一个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

相关内容