将 Kubernetes Statefulset Pod 移动到另一个节点

Ram*_*Ram 6 kubernetes kubernetes-pvc kubernetes-statefulset kubernetes-pod

我的 k8s 集群最初有 2node 和 1master,我使用 3pod 部署了 statefulset,因此带有 PVC 的 3pod 在 2 个节点上运行。现在我将节点从 2 个增加到 3 个。所以现在 k8s 是 3nodes 和 1master。我想将其中一个有状态 pod 移动到新添加的节点而不删除 PVC,以便 3 个 pod 将分布在每个 3 个节点上。我尝试删除 pod,但它在同一节点上创建,而不是在新节点上创建(这是预期的)。谁能告诉我是否可以将一个 Pod 移动到另一个节点而不删除 PVC?这是可以实现的吗?或任何替代解决方案,因为我不想删除 PVC。

Arg*_*dhu 1

不建议删除有状态集的 Pod。您可以将有状态集缩小到 2 个副本,然后将其扩大到 3 个。

kubectl get statefulsets <stateful-set-name>

kubectl scale statefulsets <stateful-set-name> --replicas=<new-replicas>
Run Code Online (Sandbox Code Playgroud)

  • 我尝试了这个,但每次有状态集都会在之前运行的同一节点上创建 pod。 (3认同)