kubernets 部署dm集群DMCluster中dm-worker配置副本数和实际生成不一样

【 TiDB 使用环境】生产环境
【 TiDB 版本】5.2.2
【复现路径】
【遇到的问题:问题现象及影响】
通过kubernetes部署dm 集群,DMCluster中配置的是29个副本数,但是实际会产生32个副本,如下:

image

【资源配置】
【附件:截图/日志/监控】

DM 集群中的 dm-worker 副本数是由 StatefulSet 控制的,而不是由 DMCluster 控制的。因此,如果您在 DMCluster 中配置了 29 个 dm-worker 副本,但实际上生成了 32 个副本,可能是由于 StatefulSet 的配置不正确导致的。

您可以通过以下步骤来检查和解决此问题:

  1. 检查 StatefulSet 的配置是否正确。您可以使用以下命令获取 StatefulSet 的详细信息:
kubectl describe statefulset <statefulset-name> -n <namespace>

您需要检查以下字段是否正确设置:

  • spec.replicas:应该与 DMCluster 中的 dm-worker 副本数相同。
  • spec.volumeClaimTemplates:应该与 DMCluster 中的 dm-worker PVC 模板相同。
  1. 检查是否存在其他的 dm-worker 副本。您可以使用以下命令获取所有 dm-worker 副本的详细信息:
kubectl get pods -l app.kubernetes.io/component=dm-worker -n <namespace>

如果存在其他的 dm-worker 副本,您可以使用以下命令删除它们:

kubectl delete pod <pod-name> -n <namespace>

请注意,这将会停止正在运行的 dm-worker 副本,并重新启动一个新的副本。

好的,多谢,我试一下

我得statefulset中是32个,但是我通过kubectl edit statefulset dm1-dm-worker -n 修改成29个后,会自动变成32个

这是一个DMCluster配置: