You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@kafka.apache.org by Mathieu Fenniak <ma...@replicon.com> on 2017/03/28 16:33:53 UTC
Managing topic configuration w/ auto.create.topics.enable
Hey Kafka Users,
When using a Kafka broker w/ auto.create.topics.enable set to true, how do
Kafka users generally manage configuration of those topics? In
particular, cleanup.policy={compact/delete} can be a crucial configuration
value to get correct.
In my application, I have a couple Kafka Connect sources that generate all
the input to my Kafka brokers, across about 30 different topics. All of
these specific topics are used in a KStreams app as tables, so they should
be configured w/ cleanup.policy=compact so that state-store restoration can
take place on them without losing data. As far as I know, there's no way
for a Kafka producer (or more specifically a KC source) to indicate topic
configuration if/when the topic is auto-created, so it needs to be done
afterwards.
Other topics, such as KStreams repartition topics, should be
cleanup.policy=delete, and others such as KStream changelog topics should
be cleanup.policy=compact... but KStreams handles all this for me for
internal topics.
I'm envisioning the ideal solution as something like a scheduled task that
runs against my cluster, with a configuration, that identifies and corrects
misconfigurations. This could then roll out through different staging and
testing areas just like a general software change. But developing such a
tool doesn't seem straight-forward since there currently isn't an API for
managing topic configuration either...
Mathieu