There are two sides to monitoring - exposing problems with alerts and acting upon those alerts to find solutions to the exposed problem. For exposing problems, users can define any script for Consul to intelligently check and report the health status of all nodes in a cluster. These scripts could be as simple as returning a 200, or as complex as querying the load and query response time on a database server. Other monitoring solutions already provide such functionality, but where Consul shines is in the second half of monitoring - automatic intervention to find solutions to problems without human operators.

Since Consul has built-in health checking, it not only notifies operators of a node or service failure, but automatically routes traffic away from unhealthy nodes. Consul is also able to re-route traffic back to a troubled node, once the node reports it is healthy again. In this way Consul pushes the existing paradigms of monitoring, making it much more than a simple notification system. Rather it surfaces problems and solves them without human intervention. Don't worry about that pager going off in the middle of the night - rest easy with Consul.

This talk will cover many of the high-level features of Consul as they relate to monitoring. While this talk may seem deeply technical on the surface, it is aimed at a very large audience. I will not discuss setup or installation of Consul, but I will demonstrate the Consul Web UI and command line. There will be some commands/code on slides, but there will be no live demos.

One of the goals of this talk is to demonstrate the Consul is more than a traditional monitoring solution - it is a runtime for the modern datacenter. Consul allows infrastructure to adapt to the changing needs of any environment.", Challenges in SOA - Service Oriented Architectures:

- Autonomous
- Limited Scope
- Loose Coupling

How does the web app tell the order processing that there is a new order?

- A Service discovery problem.
- Load balancing problem.
- Healt checking: How to avoid sending processes to unhealthy nodes?
- Key-Value configuration: How to update a server without taking down the whole system? (tune feature flags)

### Existing (partial) solutions

- Zookeeper
- ETCD
- Sensu
- Smart Stack

- Service discovery: HTTP and DNS API (dig)

Speaker is director of evangelism at Hashicorp.