TICDC模块如何实现高可用

【 TiDB 使用环境】生产环境
【 TiDB 版本】v7.1.0
【遇到的问题:问题现象及影响】 TICDC能实现TIDB集群间的数据增量同步,这个组建如何实现高可用呢,例如:可否部署2个TICDC组建,一主一备的模式,主异常后备自动接管同步任务

多个ticdc节点会自动实现高可用,每个 TiCDC 集群都包含多个 TiCDC 节点,这些节点定期向 PD 集群中的 etcd 集群汇报自己的状态,并选举出其中一个节点作为 TiCDC 集群的 Owner。Owner 采用 etcd 统一存储状态来进行调度,并将调度结果直接写入 etcd。Processor 按照状态完成对应的任务,如果 Processor 所在节点出现异常,集群会将表调度到其他节点。如果 Owner 节点出现异常,其他节点的 Capture 进程会选举出新的 Owner
https://docs.pingcap.com/zh/tidb/v6.5/ticdc-architecture

那就需要部署ticdc集群模式了,还有个问题,ticdc消费上游的redo log的话是密等的么? 例如部署单个ticdc组建后异常了,想再部署一个新的ticdc组建继续同步,这个点如何去找?可否按照异常那时刻往前推进呢? 还是说ticdc自动会找点?

cdc是读取tikv的changelogs 同步到下游,期间会有一个tso记录同步时间点,如果你任务失败了,可以在新的任务中指定这个tso时间点开始读取changelogs

问题一:这个changelog就是rocksdb的wal日志么?
问题二:tso这个时间点从哪里查,同步延迟从哪里查,有API接口么?

kv change log不是raft log,kv change log是TiKV 提供的隐藏大部分内部实现细节的的 row changed event,这个是以region为单位进行的。
这个tso在cdc日志或者cdc cli changefeed list 任务列表里面都可以查到,延迟的话你在granafa监控tsp-prod-slave-cluster-TiCDC中可以看到详情
企业微信截图_16940749262478

你想跟进一步了解cdc可以去看看他们的设计文档
https://github.com/pingcap/tiflow/tree/master/docs/design

收到,非常感谢

此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。