数据同步

数据同步使用 MirrorMaker2 将此 Kafka 实例配置为目标集群,以实现从源 Kafka 集群的数据复制。MirrorMaker2 在复制过程中保留主题、消费者组和偏移量,同时保持分区不变。

前提条件
  • 目标 Kafka 集群(即此实例)在配置复制前应为空,以避免冲突。
  • 源和目标 Kafka 集群必须处于运行状态
  • 集群间网络连通
  • 如果启用了安全性,则需配置适当的 ACL

配置数据同步

CLI
Web Console

通过 CLI 开启同步:

cat << EOF | kubectl -n default create -f -
apiVersion: middleware.alauda.io/v1
kind: RdsMirrorMaker2
metadata:
 labels:
   middleware.alauda.io/cluster: my-cluster
 name: rdsmm2-sample
spec:
 replicas: 2
 clusters:
   - bootstrapServers: source-cluster-kafka-bootstrap.yh-test:9093
 mirrors:
     - topicsPattern: ".*"
       groupsPattern: ".*"
       sourceConnector:
         tasksMax: 5
         config:
           replication.factor: '1'
           offset-syncs.topic.replication.factor: '1'
           sync.topic.acls.enabled: "false"
           refresh.topics.interval.seconds: '60'
           replication.policy.class: "org.apache.kafka.connect.mirror.IdentityReplicationPolicy"
       checkpointConnector:
         config:
           checkpoints.topic.replication.factor: '1'
           refresh.groups.interval.seconds: '600'
           sync.group.offsets.enabled: 'true'
           sync.group.offsets.interval.seconds: '60'
           emit.checkpoints.interval.seconds: '60'
           replication.policy.class: "org.apache.kafka.connect.mirror.IdentityReplicationPolicy"
 resources:
   limits:
     cpu: 1
     memory: 2Gi
   requests:
     cpu: 1
     memory: 2Gi

EOF

监控镜像同步

创建成功后,您可以在 Web Console 中监控数据同步:

  1. 进入 Kafka 实例的 数据同步 标签页
  2. 查看两个部分的详情:
    • MirrorMaker2 配置:显示所有配置详情,包括:
      • 源和目标集群信息
      • 复制设置
      • 资源分配
    • 拓扑结构:显示传输状态
  3. 查看详细指标:
    • 点击“传输状态”旁的 监控 按钮
    • 在监控面板中查看实时指标
重要提示
  1. 在监控面板中关注复制堆积量指标
  2. 升级期间,需规划短暂的复制暂停

关键配置参数

源连接器配置

参数描述默认值
replication.factor镜像主题的复制因子(-1 使用集群默认值)-1
offset-syncs.topic.replication.factor偏移同步主题的复制因子(-1 使用集群默认值)-1
sync.topic.acls.enabled是否同步 ACL(启用 user-operator 时固定为 false)false
refresh.topics.interval.seconds检查新主题的频率(秒)600
replication.policy.class复制策略类org.apache.kafka.connect.mirror.IdentityReplicationPolicy

检查点连接器配置

参数描述默认值
checkpoints.topic.replication.factor检查点主题的复制因子3
refresh.groups.interval.seconds检查新消费者组的频率(秒)600
sync.group.offsets.enabled是否同步消费者组偏移量true
sync.group.offsets.interval.seconds同步消费者组偏移量的频率(秒)60
emit.checkpoints.interval.seconds发送偏移跟踪检查点的频率(秒)60
重要提示
  1. 启用 user-operator 时,sync.topic.acls.enabled 强制为 false
  2. replication.policy.class 使用 IdentityReplicationPolicy 以保留原始主题名称
  3. 复制因子为 -1 时,将使用集群默认设置