首页 > 解决方案 > 部署时缩小旧副本集需要数据迁移

问题描述

ReplicaSet_B 和 ReplicaSet_A 更新同一个数据库呢?我希望 ReplicaSet_A 中的 pod 停止拍摄快照。但是在https://kubernetes.io/docs/concepts/workloads/controllers/deployment/中没有这样的解释。我认为,假设容器在 Pod 中运行在线应用程序。如果它们是批处理应用程序怎么办?我的意思是属于旧副本的旧 pod 将以旧方式更新数据库。这也需要数据迁移问题。

标签: databasedeploymentkubernetesmigrationreplicaset

解决方案


是的。ReplicaSets(由 管理Deployments)做出两个假设:1. 您的工作负载是无状态的,以及 2. 所有 pod 都是相同的克隆(除了它们的 IP 地址)。现在,StatefulSets解决了一些方面的问题,例如,您可以为 pod 分配特定的身份(例如:领导者或追随者),但实际上只适用于特定的工作负载。此外,Kubernetes 中的Jobs抽象在有状态工作负载方面并不能真正帮助您。您可能正在查看的是自定义控制器或操作员。我们正在通过stateful.kubernetes.sh收集好的实践和工具,也许那里有什么可以帮助的?


推荐阅读