The most notable new feature is the addition of a remote read endpoint to Prometheus. This allows a Prometheus server to use remote read against another Prometheus server. This is primarily intended to allow for transparently accessing older data in Prometheus 1.x from Prometheus 2.x servers, as Prometheus 2.0 will have a completely different storage format. This will also be of use to those horizontally sharding. Uses beyond that should be approached with caution, as for example sending big queries simultaneously to all of your Prometheus severs is a good way to take out all of your monitoring at the same time.
A number of improvements have been made to service discovery. Kubernetes ingresses and Consul node metadata are now available. EC2 discovery now tries to auto-detect the default region. For Openstack, it can now also discover hypervisors which can be selected with the now mandatory
role configuration field (similar to how Kubernetes service discovery is configured).
/-/ready endpoints have been added to allow process supervisors to check if Prometheus is up and running.
In PromQL there’s a new
label_join function, and the expression browser graphs have more readable values on the axes.
There’s also a number of bug fixes and other changes, see the release notes for more detail.
Wondering how to plan for Prometheus 2.0? Contact us.