Hacker News new | ask | show | jobs
by piyh 1808 days ago
>you really don't wanna manage your own Kafka instance

So much of my life would be better right know if you didn't just describe me.

1 comments

Care to provide some details on this?
Lets say you have a small team and dev, test, prod environments. You want high availability. You need kafka and zookeeper servers, 2-3 of each so let's say 5 total. Dev can be single servers, but you should probably have an environment that closely mirrors prod, so for your Kafka stack alone you have to manage 12 servers, 5 for prod/test, 2 for dev.

Then you probably have Kafka connect running somewhere. That's another handful of servers. Maybe Kafka streams is a few more servers. Then you're going to have servers that collect events and publish them to the server. How many more servers is that per environment?

Congratulations, you now have a state of the art event streaming enterprise grade platform, and 20 servers to manage. Better hope your company gets on board with the real time model, otherwise you're now the owner of these pet servers until the end of time.

What's that, you ran into a rare kafka bug that caused your offsets to be lost after a reboot and now the bus is pushing millions of messages down the pipe to all the consumers? Wow, that sure sucks, hope you can juggle your day job with this massive production issue.

Probably because....zookeeper
I find zookeeper to be the easy part. Managing Kafka’s byzantine auth systems, and applying upgrades to clients and servers that change a million things every release, and dealing with the shitstorm of gigabytes of text logs, and dealing with tuning mistakes (don’t you dare leave the file descriptor limit at the OS default!) just sucks up so much attention.
I thought Kafka stopped using zookeeper.
They're working toward that goal.
2.8.0 is out and it supports zk-less. But I'm not too sure the alternative is much better.
Confluent will tell you straight out it is not production ready. I know there are other common features not supported, but authorization for example is not supported in the current implementation. They told us 2 years before zook is dead dead.