Although your question is not really clear, I believe that you are now using deployment or other types of replica set to spawn the pods.
So, neither kubectl delete pod
nor kubectl set env
are the correct one to restart all the replicas in the Kubernetes. The proper way to restart all the pod under a replica set is kubectl rollout restart <type-of-replica-set>/<name>
.
But kubectl delete pod
and kubectl set env
still work by seeing the conclusion only. Here are the reasons.
kubectl delete pod
will reduce the number of desired pods for your replica set. The replica set controller will reconcile and spawn a new pod in order to fulfill your desired number defined.
kubectl set env
is used for updating the environment variable in the specification. So, once you run the command, the whole version in the replica set is bumped. The controller will reconcile and try to spawn a new set of pods for you.
Eventually, both of the commands can lead you to the restart of the pods. But the commands are not designed for restart.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…