Skip to content

Latest commit

 

History

History
52 lines (42 loc) · 2.81 KB

README.md

File metadata and controls

52 lines (42 loc) · 2.81 KB

parkeeper Build Status Docker Repository on Quay.io

One service discovery backend to rule them all. The idea behind this was to seamlessly use tools and frameworks that heavily rely on zookeeper, for example, finagle, kafka, and keep/support/maintain just one key-value store. This could facilitate the migration to the nextgen service discovery/distributed configuration services like etcd or consul.

One of these two backends are available:

  • etcd
  • consul

Unsupported ZooKeeper features (ordered by priority):

  • Reliable zxid (X-Consul-Index & X-Etcd-Index)
  • Watches
  • Ephemeral Nodes
  • Sequence Nodes
  • ACLs
  • Auth
  • Process requests in batch (Multi)
  • Reliable Stats (?)

Listing of supported requests with some notes:

etcd consul
CREATE 1
DELETE
EXISTS
GETDATA
SETDATA
GETACL 🚧 🚧
SETACL 🚧 🚧
GETCHILDREN
SYNC ✅ <sup23 2
PING
GETCHILDREN2
CHECK
MULTI 🚧 🚧
CREATE2 1
CLOSE
SETAUTH 🚧 🚧
SETWATCHES 🚧 🚧

1 Unable to create a node with a key/path equal to an existing directory. (etcd will support this in v3 api: #1855)

2 There is no similar etcd/consul request. For now, it does not proceed.

Using parkeeper is as easy as this:

docker run -p 2181:2181 quay.io/glerchundi/parkeeper -backend-url etcd://127.0.0.1:4001
docker run -p 2181:2181 quay.io/glerchundi/parkeeper -backend-url consul://127.0.0.1:8500

This project is in its early stages, use at your own risk. And of course, any feedback is appreciated as well as issues!