创建 MirrorMaker 2.0 检测信号连接器

MirrorMaker 2.0 检测信号连接器会定期生成检测信号消息。 它会将这些消息写入目标集群中名为 heartbeats 的专用主题。

配置 MirrorMaker 2.0 检测信号连接器后,您可以使用 MirrorMaker 2.0 源连接器将 heartbeats 主题复制到远程集群。通过观察复制的心跳信号,您可以实现以下应用场景:

  • 监控集群之间数据复制的状态和性能。

  • 即使没有生成其他数据,也可以验证集群之间的连接和数据流。

  • 在 Cloud Monitoring 中配置提醒,以便在心跳复制停止时通知您。

  • 监控两个集群之间的延迟时间(端到端复制延迟时间)。

Heartbeat 连接器本身不会自动监控集群之间的复制。您必须复制 heartbeats 主题,并观察到达远程集群的心跳消息。

创建 MirrorMaker 2.0 检测信号连接器

控制台

  1. 在 Google Cloud 控制台中,前往连接集群页面。

    前往“连接集群”

  2. 点击要在其中创建连接器的 Connect 集群。

    系统会显示连接集群详情页面。

  3. 点击创建连接器。

  4. 在连接器名称字段中,输入连接器的名称。

  5. 在连接器插件列表中,选择“MirrorMaker 2.0 Heartbeat”。

  6. 对于 Kafka 主集群,请选择以下选项之一:

    • 将 Kafka 主集群用作源集群。
    • 将 Kafka 主集群用作目标集群。

    连接器会将检测信号写入目标集群。

  7. 对于目标集群或源集群,请选择以下选项之一:

    • Managed Service for Apache Kafka 集群。如果您选择此选项,请在 Kafka 集群列表中选择 Managed Service for Apache Kafka 集群。
    • 自行管理的 Kafka 集群或外部 Kafka 集群:如果您选择此选项,请输入 Kafka 集群的引导地址,格式为 HOSTNAME:PORT_NUMBER。
  8. 可选:在配置框中,添加配置属性或修改默认属性。如需了解详情,请参阅配置连接器。

  9. 选择任务重启政策。如需了解详情,请参阅任务重启政策。

  10. 点击创建。

gcloud

运行 gcloud managed-kafka connectors create 命令:

gcloud managed-kafka connectors create CONNECTOR_ID \
    --connect-cluster=CONNECT_CLUSTER_ID \
    --location=LOCATION \
    --config-file=CONFIG_FILE

替换以下内容:

  • CONNECTOR_ID:连接器的 ID 或名称。
  • CONNECT_CLUSTER_ID:在其中创建连接器的 Connect 集群的 ID。
  • LOCATION:Connect 集群的位置。
  • CONFIG_FILE:本地 YAML 或 JSON 配置文件的路径。

以下是 MirrorMaker 2.0 Heartbeat 连接器的配置文件示例:

connector.class: "org.apache.kafka.connect.mirror.MirrorHeartbeatConnector"
source.cluster.alias: "source"
source.cluster.bootstrap.servers: "SOURCE_CLUSTER_BOOTSTRAP_ADDRESS"
target.cluster.alias: "target"
target.cluster.bootstrap.servers: "TARGET_CLUSTER_BOOTSTRAP_ADDRESS"
tasks.max: "3"

替换以下内容:

  • SOURCE_CLUSTER_BOOTSTRAP_ADDRESS:源 Kafka 集群的引导地址。

  • TARGET_CLUSTER_BOOTSTRAP_ADDRESS:目标 Kafka 集群的引导地址。

配置连接器

您可以选择性地设置以下配置参数:

  • heartbeats.topic.replication.factor:heartbeats 主题的复制因子。

  • emit.heartbeats.interval.seconds:连接器发出心跳信号的频率(以秒为单位)。

如需了解详情,请参阅 Apache Kafka 文档中的 MirrorMaker 心跳配置。

后续步骤

Apache Kafka® 是 Apache Software Foundation 或其关联公司在美国和/或其他国家/地区的注册商标。