Kafka Connect 概览

Kafka Connect 是 Kafka 开发者进行数据集成的首选工具。它提供了一个框架,用于将 Kafka 与数据库、消息队列和文件系统等外部系统连接起来。

Kafka Connect 提供了一组由 Google Cloud审核和维护的精选内置连接器插件。这些连接器插件会自动进行修补和升级,从而简化维护并确保兼容性。Google Cloud 还提供内置的监控和日志记录功能,以维护流水线的健康状况。

Kafka Connect API 作为 Google Cloud Managed Service for Apache Kafka 服务的一部分提供。这些 API 可通过 managedkafka.googleapis.com 访问,并已集成到 Google Cloud 控制台和客户端库中。如需管理 Kafka Connect,您可以使用 Google Cloud 控制台、gcloud CLI、Managed Kafka API、Cloud 客户端库或 Terraform。

Kafka Connect 应用场景

Kafka Connect 支持在 Managed Service for Apache Kafka 集群与各种其他系统之间进行数据集成。以下是一些关键使用场景:

  • 将现有 Kafka 部署迁移到 Managed Service for Apache Kafka。

  • 将 Managed Service for Apache Kafka 集群复制到其他区域,以实现灾难恢复。

  • 将数据从 Managed Service for Apache Kafka 流式传输到 BigQuery、Cloud Storage、Pub/Sub。

Connect 集群

Connect 集群是 Kafka Connect 的分布式部署,包含预打包的连接器插件和配置。每个 Connect 集群都与一个主 Managed Service for Apache Kafka 集群相关联。此主集群存储在 Connect 集群上运行的连接器的状态。

一般来说,主 Managed Service for Apache Kafka 集群也充当关联的 Connect 集群上运行的所有源连接器的目标,以及所有接收器连接器的源。

单个 Managed Service for Apache Kafka 集群可以有多个 Connect 集群。如果运行的是 MirrorMaker 2.0,Connect 集群可以连接到非主 Managed Service for Apache Kafka 集群或自行管理的 Kafka 集群,以读取或写入主题数据。此过程可在不同集群之间实现主题复制。

从资源模型的角度来看,Connect 集群是与 Managed Service for Apache Kafka 集群分开的资源。

假设您有一个 Managed Service for Apache Kafka 集群,用于存储网站流量数据。您希望将这些数据流式传输到 BigQuery 以进行分析。您可以创建 Connect 集群,并使用 BigQuery 接收器连接器将数据从 Kafka 主题移至 BigQuery。此 Connect 集群与您的 Managed Service for Apache Kafka 集群相关联,并将其作为主集群。

连接器

连接器是用于在 Kafka 集群与其他系统之间传输数据的软件组件。

  • 源连接器将数据从来源写入 Managed Service for Apache Kafka 集群。

  • 接收器连接器用于将数据从 Managed Service for Apache Kafka 集群写入接收器。

连接器在 Connect 集群中部署、配置和管理。可以启动、停止、暂停、重启,并且可以更新其配置。

如需详细了解 Managed Service for Apache Kafka 支持的连接器类型,请参阅连接器概览。

管理 Kafka Connect

借助 Kafka Connect,您可以专注于部署连接器,而 Managed Service for Apache Kafka 会处理底层基础架构和运营复杂性。

Kafka Connect 服务会自动执行以下操作:

  • 预配 Kafka Connect 工作人员:创建 Connect 集群时,Kafka Connect 服务会自动在 Kubernetes 中预配一个工作集群。

  • 网络:Kafka Connect 服务会配置网络,以实现工作线程、Managed Service for Apache Kafka 代理和外部系统之间的通信。在某些情况下,您可能需要对现有投放网络设置进行一些更改。

  • 可用区级弹性:Kafka Connect 服务将工作器分布在至少三个可用区中,确保在发生可用区服务中断时,数据处理能够继续进行。

  • 身份验证:Kafka Connect 服务还配置了与 Kafka 代理的身份验证,以确保连接安全。

  • 推出和升级:Kafka Connect 服务可管理工作线程配置更改、版本升级和安全补丁,确保您的部署始终处于最新状态。

在 Kafka Connect 服务中,您可以执行以下配置:

  • 容量和网络限制:定义资源限制和网络配置,以优化性能和成本。

  • 监控和日志记录:访问连接器的日志和指标,以监控性能并排查问题。

  • 连接器生命周期管理:根据需要暂停、恢复、重启或停止连接器,以管理数据流水线。

限制

  • 主 Kafka 集群必须是 Managed Service for Apache Kafka 集群。主集群是指 Kafka Connect 集群向其写入元数据的集群。

  • 您无法将自定义连接器插件上传到 Kafka Connect 集群。

  • 该服务不支持使用架构注册表针对远程架构进行验证。

接下来怎么做?

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