如何更新 StatefulSet 中的环境变量

How to update environment variables in a StatefulSet

我想更新 Kubernetes StatefulSet 中的环境变量。我更新了 YAML 文件并执行了 $kubectl apply -f my-statefulset.yml,但没有任何改变。然后我尝试 $kubectl scale sts my-statefulset --replicas=0; kubectl scale sts my-statefulset --replicas=4 并且它只重新创建了 StatefulSet 中的最后一个 pod。

删除我的整个 StatefulSet 并重新创建它只是为了更改环境变量看起来不是一个好主意。 $kubectl patch 可以在这里工作,但我无法形成更新 json。我需要一些关于如何在 StatefulSet 中更新环境变量的帮助。

如果您的 StatefulSet 名称是 my-statefulset,以下命令应该可以帮助您:

kubectl patch statefulset my-statefulset -p '{"spec":{"updateStrategy":{"type":"RollingUpdate"}}}'

您可以在 Updating StatefulSets 文档中找到更多信息。