Re:Topicctl – an easier way to manage Kafka topics
by rbranson on Tuesday August 25, 2020 @02:24PM
(#24274368)
Segment employee here. Our Kafka runbook looks 100X cleaner after this tool was rolled out by Ben and folks. One of my favorite parts is how it makes dangerous things harder :)
Re:Topicctl – an easier way to manage Kafka topics
by xref on Wednesday August 26, 2020 @01:33AM
(#24279448)
Is there a reason you chose not to use ACLs? We did enable them, but it feels like it is causing more headaches than any security benefit it might provide...
Re:Topicctl – an easier way to manage Kafka topics
by pryz on Wednesday August 26, 2020 @11:38AM
(#24283435)
I guess we just haven't got the need to use ACL yet. This may be something we will look later on. We have been started to implement what's needed to leverage things like SASL in our instrumentation but we are not there yet (see https://github.com/segmentio/kafka-go).
Re:Topicctl – an easier way to manage Kafka topics
by pryz on Tuesday August 25, 2020 @05:35PM
(#24276426)
Segment employee here.
Yes, we looked at Terraform to manage our topics. We are big Terraform user to manage our infrastructure. We mostly didn't go that way because we didn't want to have to manage the Terraform state. We also wanted the tool to be extensible and writing custom TF providers can sometime be tricky.
Re:Topicctl – an easier way to manage Kafka topics
by retzkek on Tuesday August 25, 2020 @03:25PM
(#24275030)
> Replica placement strategy
This is huge, currently you have to manually specify placement for all replicas when you increase the replication factor for a topic. Do this for many topics and it quickly becomes very tedious and error-prone. Thanks for this, I'm very excited to try it out!
Re:Topicctl – an easier way to manage Kafka topics
by abledon on Tuesday August 25, 2020 @04:25PM
(#24275706)
"""Many of these were shaped by our experiences making AWS changes with Terraform and Kubernetes changes with kubectl. We wanted an equivalent to these for Kafka!"""
so use this topicctl for advanced topic changes.... and the more primitive kafkactl[1] for basic stuff?
Re:Topicctl – an easier way to manage Kafka topics
by bhyolken on Tuesday August 25, 2020 @05:07PM
(#24276116)
Author here, thanks for the comment. topicctl is really motivated by a desire to support rigorous, git-based topic management. The read-only views (tailing, repl, etc.) are secondary to that and are useful for our command-line-based workflows inside Segment, but are definitely not intended to replace all of the other good tooling out there, including the ones you've referenced.
Re:Topicctl – an easier way to manage Kafka topics
by caiobegotti on Tuesday August 25, 2020 @06:34PM
(#24277046)
That looks very interesting! About managing YAMLs like we'd do with kubectl as explained in the article, how does topicctl differ both in concept and operation from Strimzi's Kafka Operator for Kubernetes? I know, they are a different company etc but that Kafka operator is gitops-friendly and everything so I'm honestly trying to compare them as managing Kafka is a REALLY HARD problem, so kudos for trying to make it easier!
Yes, we looked at Terraform to manage our topics. We are big Terraform user to manage our infrastructure. We mostly didn't go that way because we didn't want to have to manage the Terraform state. We also wanted the tool to be extensible and writing custom TF providers can sometime be tricky.
This is huge, currently you have to manually specify placement for all replicas when you increase the replication factor for a topic. Do this for many topics and it quickly becomes very tedious and error-prone. Thanks for this, I'm very excited to try it out!
so use this topicctl for advanced topic changes.... and the more primitive kafkactl[1] for basic stuff?
What about the 10 or so other GUI managers like this one? https://github.com/cloudhut/kowl [2]
[1]https://github.com/deviceinsight/kafkactl
[2] https://news.ycombinator.com/item?id=24099037
[1]: https://github.com/devshawn/kafka-gitops
If I'm right the Strimzi operator is also managing the brokers. Here we only focus on the topics.