Reminded me of this project: https://github.com/travisjeffery/jocko Kafka implemented in Go without needing Zookeeper.
Hey, I'm the author of Jocko. I've been working at Confluent the past four years. I just finished writing a book that shows how to build similar distributed services from scratch, it walks though building a simple distributed commit log with built-in consensus and service discovery from nothing to deployment: https://pragprog.com/titles/tjgo/distributed-services-with-g...
Kafka without ZooKeeper
171–180 of 201 posts
Re: Kafka without ZooKeeper
#172Earlier quoted context omitted.
I’m trying to take a similar path with this project [1] though there’s no HA story for now and it’s not meant to be protocol-compatible. The goal is to make it lightweight and simple to operate, yet very fast. [1] https://github.com/dataptive/styx
From a feature list perspective on the readme it basically is what we did at Redpanda (dev here)
I took a different path by divorcing from the Kafka protocol and experimenting with what I believe is a simpler to model approach to reliable event processing [1].
[1] https://github.com/dataptive/styx/blob/master/docs/howto/rel...
Re: Kafka without ZooKeeper
#173Earlier quoted context omitted.
What's the downside?
The BSL license makes choosing it "a discussion" versus using OSI licensed software: https://github.com/vectorizedio/redpanda/tree/v21.3.7/licens... I don't have enough experience with these new vanity licenses to know what the contribution story looks like, either
Re: Kafka without ZooKeeper
#174IIRC, ZK would be more modern and cloud-friendly if it could self-assemble with a preshared passphrase alone. It's good technology otherwise, it's just a PITA to deploy, configure, and support.
It seems weird to me that cloud providers do not offer distributed coordination primitives "as a service." I understand there are KV stores but not with watches, locks, etc. in the way that etcd and ZK have them.
Re: Kafka without ZooKeeper
#175If designing a new system is there any reason to choose Kafka over Pulsar at this point? Apart from Confluent wanting you to use Kafka so they can keep leeching money off you by hijacking de facto ownership of an open source project, of course.
Pulsar also requires you to run ZooKeeper and BookKeeper, so TFA has at least one reason you might choose Kafka. (That said, unlike many I consider depending on ZooKeeper to be a positive sign. "We wrote our own consensus protocol" belongs in roughly the same bucket as "we wrote our own crypto." Using ZooKeeper doesn't automatically mean your distributed system will work but at least you'll have a fighting chance.)
One layer BookKeeper provide an abstraction similar to HDFS. That is it provide file that are horizontally scalable in size and throughput and reliable append only files.
Pulsar is a service built on top of BookKeeper but could run on top of HDFS or something like Amazon S3 ...
And is only responsible for making sure there is only one writer per BookKeeper file even if multiple process try sending request to Pulsar to write to the same partition. It also try to balance request across all the brokers.
Re: Kafka without ZooKeeper
#176Earlier quoted context omitted.
Why would someone choose Confluent Cloud over the Kafka offerings of Azure/AWS/GCP?
Is there a GCP offering that isn't just Confluent Cloud billed via Google?
With a Kafka compatibility shim: https://github.com/googleapis/java-pubsublite-kafka
Disclaimer: I work on GCP.
Re: Kafka without ZooKeeper
#177Earlier quoted context omitted.
What do you use instead?
Cheap managed cloud services, like AWS SQS and Azure Storage Queue (I usually want some kind of persistence for my queues).
With a Kafka compatibility shim: https://github.com/googleapis/java-pubsublite-kafka
Disclaimer: I work for GCP.
Re: Kafka without ZooKeeper
#178Kafka is a pretty cool technology, but for every project that I work on, it's never used because it feels like it's overkill (costly and operation heavy). Maybe I should start looking for bigger projects :D
What do you use instead?
https://cloud.google.com/pubsub/lite/docs https://github.com/googleapis/java-pubsublite-kafka
Disclaimer: I work on this product.
Re: Kafka without ZooKeeper
#179Earlier quoted context omitted.
It seems weird to me that cloud providers do not offer distributed coordination primitives "as a service." I understand there are KV stores but not with watches, locks, etc. in the way that etcd and ZK have them.
Are you looking for something like this ? https://azure.microsoft.com/en-us/updates/azure-cosmos-db-ap...
Re: Kafka without ZooKeeper
#180one step closer to being able to run only a single broker at the edge.