Service discovery overview
In traditional monitoring environments, administrators either needed to know what they would be monitoring in advance or needed to configure push-based monitoring systems. Since the servers and devices being monitored did not change frequently, it was acceptable that adding or removing monitoring required configuration changes. However, in modern cloud-native environments, where the number of instances of an application can scale up and down automatically through systems such as Kubernetes’ HorizontalPodAutoscaler
, this can introduce undesirable gaps in monitoring as targets that should be monitored are constantly added, removed, and replaced. Prometheus solves this through its service discovery system.
The Prometheus service discovery system provides over two dozen different methods of dynamically retrieving and adding scrape targets. These range from cloud providers such as AWS, Azure, and Akamai (Linode) to Docker and Kubernetes to more manual...