我知道如何删除Kafka连接器在这里提到Kafka连接-如何删除连接器
但我不确定它是否也会从*.sorage.topic中删除/擦除该辅助进程的特定连接器相关配置、偏移和状态?
例如:假设我删除了一个连接器名称为“connector--1.0.0”的连接器,kafka connect worker是用以下配置启动的。
offset.storage.topic=<topic.name>.internal.offsets
config.storage.topic=<topic.name>.internal.configs
status.storage.topic=<topic.name>.internal.status
现在,在删除该连接器的调用之后,它是否会删除该特定连接器的上述内部主题中的所有记录?
这样我就可以在同一个worker但不同的配置(不同的offset.start或connector.class)上创建具有“相同名称”的新连接器了?
2条答案
按热度按时间pzfprimi1#
删除连接器时,偏移将保留在“偏移”主题中。如果用相同的名称重新创建连接器,它将重新使用上一次执行的偏移量(即使连接器在两次执行之间被删除)。
f8rj6qna2#
由于kafka是append only,因此删除这些conncet主题中的消息的唯一方法是以连接器名称作为消息键进行发布,然后
null
作为值。您可以使用console consumer检查这些主题,以查看其中包含哪些数据
--property print.key=true
,并在删除连接器时保持使用者运行。你可以
PUT
新配置位于/connectors/{name}/config
,但使用的任何特定偏移取决于实际连接器类型(接收器/源);例如,Kafka的内部__consumer_offsets
主题以及offset.storage.topic
. 我不确定会不会变connector.class
考虑到这一点是个好主意