On Tue, Mar 3, 2020 at 4:02 PM Andy Taylor <andy.tayl...@gmail.com> wrote:

> Personally I wouldn't use Zookeeper, I think there are better options. Also
> looks like Kafka are replacing it as well. Saying that, it doesn't really
> matter what is used, the main thing is we need to remove the burden of
> providing consensus away from the broker.


https://cwiki.apache.org/confluence/display/KAFKA/KIP-500%3A+Replace+ZooKeeper+with+a+Self-Managed+Metadata+Quorum

There is a blog from person who prototyped replacing Zookeeper with
Atomix.io.
https://medium.com/@lukasz.antoniak/apache-kafka-leaves-the-zoo-bef529ba82b7.
It is afaik independent work to the KIP-500, as the proposal does not say
Atomix.io is to be used. The blog links to other reimplementations/forks;
one that replaces Zookeeper with etcd, and another one that does something
with Go and Raft.

Rabbitmq has implemented Raft in Erlang and they now have "mirrored queues"
(legacy, the pre-raft version) and Quorum queues, the new thing (
https://www.rabbitmq.com/quorum-queues.html) There is a presentation that
tries to explain it to people who don't know RabbitMQ
https://www.slideshare.net/Pivotal/implementing-raft-in-rabbitmq. For some
reason, they wanted to vote up a leader for each queue separately, and then
they had to make it perform well.

On Mon, Mar 9, 2020 at 4:02 PM Clebert Suconic <clebert.suco...@gmail.com>
wrote:

> I think we should have a management component, that runs outside of
> the broker and would manage quorum.
>
> That way you can have the quorum running outside of the broker itself.
> which would improve the need of multiple brokers to manage the quorum.
> You just need Quorum Managers in distinct places.
>
> I had recently worked with a software called Ceph... And Ceph has the
> concept of managers working away from their "broker" (it's not a
> broker.. it's a DB, but in a sense it's the same concept here). I
> think we should do the same.
>

One of the reasons for KIP-500 is simplification of deployment. From this
point of view, taking inspiration for ActiveMQ from Ceph, which is
notoriously hard to install, at least in folk memory, could be a step back.
Also see section Rejected Alternatives -> Pluggable Consensus in the KIP.

Btw, Kafka has controller brokers and ordinary brokers. Sounds a bit like
Ceph manager.... Also, a Kafka broker is a DB of sorts (of events).
-- 
Mit freundlichen Grüßen / Kind regards
Jiri Daněk

Reply via email to