CKafka 到 CLS 使用日志服务方案

最近更新时间:2025-12-03 14:41:52

我的收藏

一、迁移场景

目标:CKafka 数据写入 CLS。
存量迁移方案:使用 CLS 提供的 Kafka 订阅功能。
新增的同步链路请直接参考本文档第四部分

二、迁移步骤

简述:先双写后单写,完成平滑迁移。具体迁移步骤如下:
1. 双写:在 CKafka 控制台查询 topic 信息。然后在 CLS 平台里,日志主题里配置好 Kafka 订阅,从最新的日志开始拉取数据。
2. 双写后,连接器和 CLS 的 Kafka 订阅同时往 CLS 日志主题生产数据。
3. 单写:确认 CLS 的 Kafka 数据订阅任务正常运行后,停止 CKafka 的连接器任务,实现单写。
4. 单写后,CLS 日志不再重复。



风险:日志数据会有少量重复。
建议:低峰期操作,减少影响。

三、方案

3.1. 方案对比

方案
方案1:主动迁移,提前规避风险。
方案2:被动迁移,防止二次故障。
思路
低峰期启动 CLS Kafka 订阅数据同步,下线cKafka连接器
提前配置好 CLS Kafka 订阅服务,在连接器故障后,启动 CLS 数据同步任务
把 CLS Kafka 订阅服务任务提前建立好,让其处于暂停状态;
连接器故障或者异常后,在 CKafka 平台重置 CLS Kafka 订阅的消费 offset 到最新或者到故障时刻;
启动 CLS Kafka 订阅服务。
优点
低峰期操作,风险可控
现有任务暂时不动,业务短期不受影响
缺点
导入 CLS 的数据会有少量重复
故障后的止损预案,时效性低,故障影响面不可控;
CLS 可能存在少量数据缺少或重复。
回滚方案
-
双写阶段:如果遇到不符合预期,可以直接在CLS平台暂停或者删除任务;
单写阶段:如果发现不符合预期,可以把连接器再次启动,同时暂停CLS 采集Kafka的订阅任务。
兜底预案
-
CLS 采集Kafka的订阅任务暂停或者删除;
CKafka连接器任务重启。

3.2. 注意事项

需要注意的是 CLS Kafka 订阅任务一建立,就会默认启动,在 CKafka 创建订阅并生成消费进度,可能会造成数据采集重复。

四、POC 验证

1. 日志主题中,选择某一个主题,单击采集配置

2. Kafka数据订阅配置中,单击新增,并按提示配置。

3. 配置集群及配置订阅规则,包括消费组,其中起始位置需选择最早。
注意:
消费组不能填写和连接器一样的名称,否则数据会有丢失或者重复(原理是 CLS 配置 Kafka 订阅会选择从最新或者最老的位置消费)。






4. 订阅任务创建成功,状态会变成进行中。

5. CLS Kafka 订阅任务正常采集数据后,在消息队列 CKafka 控制台中单击更多 > 暂停任务来停止连接器任务。