Facebook's Zookeeper Implementation on Delos
engineering.fb.com
engineering.fb.com
[1] https://clickhouse.com/docs/en/operations/clickhouse-keeper/
(I'm not a committer but have a lively interest in the topic as my company supports a couple hundred customers running on ClickHouse.)
Some previous discussion here: https://news.ycombinator.com/item?id=18687516
I also enjoyed this lecture about zookeeper: https://www.youtube.com/watch?v=pbmyrNjzdDk
Then why there are so many projects still rely on Zookeeper and spend so much time on re-writing its features instead of switching to etcd like what OP, ClickHouse (in the discussion), and Kafka (KRaft) are doing? It there something that etcd won't fit?
There's a good talk by ClickHouse committer Alexander Sapin that explains the design considerations: https://www.youtube.com/watch?v=abhcCRW09Ac
Otherwise manually managing it is crufty and ancient feeling. The API for “dynamic reconfiguration” is like something I’d expect from Oracle software in the 90s. It sucks.