Consul makes it simple for services to register themselves, and to discover other service
Pairing service discovery with health checking prevents routing requests to unhealthy hosts, and enables services to easily provide circuit breakers.
Consul scales to multiple datacenters out of the box, with no complicated configuration.
Store hierarchical key/value configuration data for services.