本文档提供了有关 Connect 集群和连接器的故障排查指南。
分离状态
Connect 集群可以处于 DETACHED 状态。此状态表示底层 Kafka 集群已被删除或正在被删除。由于 Kafka Connect 将所有状态存储在 Kafka 上,因此 Connect 集群会永久停止。无法重新附加 Connect 集群,因此应删除此集群。
每个集群的限制
如果单个 Connect 集群尝试管理过多的 Connect 任务,可能会变得无响应。为防止出现此问题,请注意以下限制:
- 一个关联集群最多可以有 20 个连接器。
- 一个连接器最多可以有 200 个任务。
如果您需要更多连接器,可以将第二个 Connect 集群附加到同一个 Kafka 集群。
排查连接器问题
如果连接器启动失败或在运行期间失败,则运行状态为 Failed。连接器在运行期间也可能会出现错误;这些错误会显示在连接器日志中。
如需排查连接器问题,请执行以下步骤。
查看连接器日志以确定错误。如需了解详情,请参阅查看连接器日志。
确定错误的根本原因。以下主题介绍了每种连接器类型可能出现的具体错误:
最佳做法是将连接器的任务重启政策设置为以指数退避算法重启。此设置有助于避免因暂时性错误而导致连接器故障。
Connect 集群错误
本部分介绍了在 Connect 集群中可能发生的错误。
元数据主题具有 'cleanup policy=delete'
Connect 集群日志显示类似于以下内容的错误:
org.apache.kafka.common.config.ConfigException: Topic 'connect-offsets-
PROJECT_ID-LOCATION-CONNECT_CLUSTER_NAME-UNIQUE_ID' supplied via the
'offset.storage.topic' property is required to have 'cleanup policy=compact' to
guarantee consistency and durability of source connector offsets, but found the
topic currently has 'cleanup policy=delete'.
出现此错误的原因可能如下:
- Connect 集群的 Kafka 主集群已被删除,然后以相同的名称重新创建。
- 删除了 Connect 集群在主 Kafka 集群中创建的元数据主题。
要解决此错误,请执行以下步骤:
在主 Kafka 集群中找到元数据主题。元数据主题的命名格式如下:
connect-status-PROJECT_ID-LOCATION-CONNECT_CLUSTER_NAME-UNIQUE_ID例如:
connect-status-project1-us-central1-connect1-3c563900-a4e4-4eDe-88f7-73b16d6344d2对于每个元数据主题,请修改该主题,然后将键值对
cleanup.policy:compact添加到非默认参数字段。如需了解详情,请参阅更新 Kafka 主题。