Status: | Proof of Concept |
---|---|
Documentation: | http://verwalter.readthedocs.org |
Verwalter manages local configuration data and signals processes for reload. It's similar in spirit to confd or consul-template but has very different feature set.
Verwalter also has optional resource management facility and may provide service discovery too.
Features:
- Decentralized distribution of configuration
- Includes scriptable automated resource management (scripting via lua)
- Allows resource management even in minority partitions
- May provide discovery of only same-partition services in case of partitioning
- Liquid templates for configuration files
- Web interface to view current configuration state
Assumptions:
- Partitions happen
- Need some resource management in minority partition (even if it's essentially a "shutdown this service in minority partition", which can't be done if configuration is stored in zookeeper/consul/etcd)
- Need service discovery in minority partition, better if we could provide "only thease instances are available in current partition"
How it works:
- Collects metrics via cantal
- Makes decisions in 10 second rounds
- Takes into account from 0.5 to 60 minutes of historical metrics
- Checks reachable nodes at each round
- Uses raft-like algorithm with weaker consistency guarantees