我有一个部署(starterservice(,它部署了一个具有持久卷声明的单个pod。这是有效的。但是重新启动失败:
kubectl rollout restart deploy starterservice
新的pod在旧的pod终止之前启动,它无法连接卷(卷"pvc-…"的多重连接错误(。我可以通过缩放到零然后返回到1来解决这个问题:
kubectl scale --replicas=0 deployment/starterservice
kubectl scale --replicas=1 deployment/starterservice
我想知道是否有办法让kubectl rollout restart
在开始新的pod之前等待旧pod终止?Tx.
您需要设置部署策略=重新创建。
spec:
strategy:
type: Recreate
与RollingUpdate
(默认(相比,Recreate
策略的不同之处在于,Recreate
将在创建新pod之前终止旧pod,而RollingUpdate
将在终止旧pod之前创建新pod。
https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#recreate-部署