
У меня есть кластер 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
возможно) или какого-либо скрипта?
решение1
Kubernetes не поддерживает остановку/приостановку текущего состояния Pod. Однако вы можете выполнить повторный запуск Deployment
/ DaemonSet
с помощью kubectl rollout restart
команды (см.:Справочные документы Kubectl).
Для перезапуска всех Deployments
объектов DaemonSets
в kube-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
остальные модули управляются 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