Earlier quoted context omitted.
I agree. At FoundationDB, we're writing a coordination tool (working name "beastmaster") that provides service discovery, locking, leader election, etc on top of our transactional key/value store. It is higher level than these tools; our idea is to try to make it useful from a command line or DNS rather than have to be baked into every piece of software that needs service discovery. beast service --lock name=mailserv…
That is cool! How are you doing locking for transactions right now internally? You can use etcd from the command line with etcdctl or grab environment variables for your process using etcdenv. I would love to see someone back a DNS server with etcd too. etcdctl: https://github.com/coreos/etcdctl etcdenv: https://github.com/mattn/etcdenv
Beastmaster is just a client that sits on top of FoundationDB's transactions and fault tolerance, and adds coordination-specific things like a global clock, fair locks with timeouts, and a data model for service discovery. And then provides useful command line tools and a simple DNS and REST server. We should have it on github soon.