From 48140e5189576d79d7626a15d39b7990f7781726 Mon Sep 17 00:00:00 2001 From: Julien Pivotto Date: Sat, 18 Jul 2020 00:25:06 +0200 Subject: [PATCH] Improve docker swarm configuration exemple Improve to use the unix socket as this is what is enabled by default. Signed-off-by: Julien Pivotto --- .../examples/prometheus-dockerswarm.yml | 37 +++++++++++++------ 1 file changed, 26 insertions(+), 11 deletions(-) diff --git a/documentation/examples/prometheus-dockerswarm.yml b/documentation/examples/prometheus-dockerswarm.yml index 70f68863a..efb228fa9 100644 --- a/documentation/examples/prometheus-dockerswarm.yml +++ b/documentation/examples/prometheus-dockerswarm.yml @@ -1,15 +1,5 @@ # A example scrape configuration for running Prometheus with # Docker Swarm. -# -# This example works with cadvisor deployed with: -# docker service create --name cadvisor -l prometheus-job=cadvisor -# --mode=global --publish published=8080,target=8080,mode=host -# --mount type=bind,src=/var/run/docker.sock,dst=/var/run/docker.sock,ro -# --mount type=bind,src=/,dst=/rootfs,ro -# --mount type=bind,src=/var/run,dst=/var/run -# --mount type=bind,src=/sys,dst=/sys,ro -# --mount type=bind,src=/var/lib/docker,dst=/var/lib/docker,ro -# google/cadvisor -docker_only scrape_configs: @@ -18,10 +8,35 @@ scrape_configs: static_configs: - targets: ['localhost:9090'] + # Create a job for Docker daemons. + # + # This exemple requires Docker daemons to be configured to expose + # Prometheus metrics, as documented here: + # https://docs.docker.com/config/daemon/prometheus/ + - job_name: 'docker' + dockerswarm_sd_configs: + - host: unix:///var/run/docker.sock # You can also use http/https to connect to the Docker daemon. + role: nodes + relabel_configs: + # Fetch metrics on port 9323. + - source_labels: [__meta_dockerswarm_node_address] + target_label: __address__ + replacement: $1:9323 + # Create a job for Docker Swarm containers. + # + # This example works with cadvisor deployed with: + # docker service create --name cadvisor -l prometheus-job=cadvisor + # --mode=global --publish published=8080,target=8080,mode=host + # --mount type=bind,src=/var/run/docker.sock,dst=/var/run/docker.sock,ro + # --mount type=bind,src=/,dst=/rootfs,ro + # --mount type=bind,src=/var/run,dst=/var/run + # --mount type=bind,src=/sys,dst=/sys,ro + # --mount type=bind,src=/var/lib/docker,dst=/var/lib/docker,ro + # google/cadvisor -docker_only - job_name: 'dockerswarm' dockerswarm_sd_configs: - - host: http://127.0.0.1:2375 + - host: unix:///var/run/docker.sock # You can also use http/https to connect to the Docker daemon. role: tasks relabel_configs: # Only keep containers that should be running.