扩容tikv会导致ticdc停止

【 TiDB 使用环境】生产环境
【 TiDB 版本】V7.5.4
【复现路径】做过哪些操作出现的问题
正常扩容tikv
【遇到的问题:问题现象及影响】
先缩容tikv完成后扩容tikv就会出现ticdc停止的问题。以前是v5.4.3不会有这个问题,现在换成v7.5.4,经测试只要一扩容tikv就会出现cdc报错并停止的现象
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【附件:截图/日志/监控】
tiup ctl:v7.5.4 cdc changefeed list --server=http://172.18.163.xxx:8300
Starting component ctl: /home/root/.tiup/components/ctl/v7.5.4/ctl cdc changefeed list --server=http://172.18.163.xxx:8300
[
{
“id”: “xxxxxx”,
“namespace”: “default”,
“summary”: {
“state”: “normal”,
“tso”: 45516896483290,
“checkpoint”: “2025-01-08 18:23:25.034”,
“error”: null
}
}
]
查看后台日志,扩容的时候点会出现大量 2025-01-08 18:24:03 (UTC+08:00)
[endpoint.rs:857] [“cdc initialize fail: Request error message: "peer is not leader for region 108063, leader may Some(id: 205362 store_id: 205348)" not_leader { region_id: 108063 leader { id: 205362 store_id: 205348 } }”] [request_id=1066] [conn_id=ConnId(9)] [region_id=108063] [thread_id=202]

1 个赞

你这报错TiCDC 在尝试与 Region 108063 进行通信时,发现当前的 peer 不是该 Region 的 Leader。这是 TiKV 集群的拓扑信息发生变化了,没及时更新,重启TiCDC 服务下看看行不

1 个赞

确认TiCDC组件是否也升级到了与TiDB v7.5.4兼容的版本。如果TiCDC版本过旧,可能会导致与新版本的TiDB不兼容。可以使用 tiup update cdc 命令来升级TiCDC组件到最新版本

首先确保你知道哪个节点是leader。根据你的错误消息,leader应该是id为205362,store_id为205348的节点。

1 个赞

不用重启,只要pause然后 resume就能恢复。但只要停2秒都是灾难。

重做的集群,所有组件都是与cluster版本一致的。

扩容之后有 leader 的 transfer,所以才会报错类似 leader not found。 最简单就是把 changefeed pause+resume 一下。后续不行就重启 cdc ,加重启 tikv解决。 三板斧

cdc 的报错是啥? 你提供的信息里看起来 cdc 的状态是正常的

1 个赞

看起来正常,但就是不会动了,checkpoint不动了。查看日志最多的就是leader not found。要pause resume一下才动起来。

现在问题是为什么会停掉。只要一停业务就有问题了。

操作的时候 要先进行扩容再缩容~

按照7.2.6排查看看
image
https://docs.pingcap.com/zh/tidb/stable/tidb-troubleshooting-map#72-tikv

不需要重启,pause再resume就能恢复