CMAK, AKHQ, Kafdrop, Kowl, Conduktor, Kafkatool etc.... why are there so many attempts to build a kafka UI? Does each one have its own use case? I'd think that something as large as "Kafka" in the software ecosystem would have a goto defacto standard UI for managing it.
You are absolutely right, there are many options which we looked at before we began with the project. None of existing solutions provided the features we needed:
Authentication and authorization to meet our compliance needs, a satisfactory UI/UX, message streaming with JavaScript filters and a couple more features. We thought we can do better and just started hacking something. There's a lot more to come. I'll create a blog post describing in more detail why we've created Kowl.
Having looked into a couple of these, it seems like they each have their own sort of focus, which makes sense. From my own experience, and talking to other engineers, companies use kafka for: an http replacement that lets subscribers have down time, a way to record and replay time series data, a tool for buffering to some async path, or general pub-sub event bus. Sometimes all of these at once! Each one has it's only operational patterns, so having UIs that focus on these patterns sorta clicks with me.
That said, it's been a while since kafka gained popularity, so it's surprising we've not seen any coalesce into a main contender.
Does your company use both Avro and Protobuf for message serialization? Most places tend to standardize with one or the other and I’m wondering if there is a use case for both.
I think if you use open source stuff you will find a lot of Avro, like Debezium. Supporting both so you get best of in-house and external makes sense to me.
This looks dope, I'll check it out after my vacation for our Kafka clusters. I haven't yet found a decent web interface for Kafka. For cluster overview there's cruise-control but apart from that it all feels too messy and the UX is often more of an afterthought. Thanks for doing this. I hope your enterprise features provide you with sufficient revenue to keep this going. If not, maybe offer a donation button somewhere?
We don't have any expectations or force to make money with Kowl. Besides that we already use Kowl at our company where engineers use it with joy in their daily business. We don't only get valuable feedback from colleagues who use Kowl, but our employer does also sponsor our efforts with working time. If it ultimately turns out to be not profitable at all we will simply open source everything I guess.
Some of these had more descriptive names, but the apache software foundation doesn't allow names with "Kafka" as part of the name because it's a protected trademark apparently.
No it doesn't support avro yet, but this is being worked on and we think this could be added in 1.2 already! I added a note about the supported message formats in the readme.
Very nice, I think we’ll give it a shot on our test cluster tomorrow, we been looking for something like this, both for ourself, but also for a customer.
Actually we haven't thought about message headers as we haven't used them for so long. Please submit an issue in GitHub and it would be awesome if you describe how you are using headers (what do you use them for?).
This is amazing, thanks for pointing me to it. I googled around for better tooling but apart from a few "playing around with golang/rust"-cli tools I didn't find anything with better UX than the abysmal shell script tooling provided with Kafka.
Slightly off topic but for the shell in the example what did they export PS1 to get the nice looking solid background color for the host name and current working directory?