From 993e29c0fe94ce41cc8bf1294fe88f313fc84633 Mon Sep 17 00:00:00 2001 From: "Dustin C. Hatch" Date: Thu, 11 Aug 2022 21:39:50 -0500 Subject: [PATCH] r/scrape-collectd: collectd scrape targets config The *scrape-collectd* role generates the `/etc/prometheus/scrape-collectd.yml` file. This file can be read by Prometheus/Victoria Metrics/vmagent to identify the hosts running *collectd* with the *write_prometheus* plugin, using the `files_sd_configs` scrape configuration option. All hosts in the *collectd-prometheus* group are listed as scrape targets. --- metricspi.yml | 4 ++++ roles/scrape-collectd/tasks/main.yml | 8 ++++++++ roles/scrape-collectd/vars/main.yml | 2 ++ 3 files changed, 14 insertions(+) create mode 100644 roles/scrape-collectd/tasks/main.yml create mode 100644 roles/scrape-collectd/vars/main.yml diff --git a/metricspi.yml b/metricspi.yml index 45bcbcc..18da9d2 100644 --- a/metricspi.yml +++ b/metricspi.yml @@ -14,3 +14,7 @@ - import_playbook: victoria-metrics.yml - import_playbook: alertmanager.yml - import_playbook: grafana.yml + +- hosts: metricspi + roles: + - scrape-collectd diff --git a/roles/scrape-collectd/tasks/main.yml b/roles/scrape-collectd/tasks/main.yml new file mode 100644 index 0000000..c6f5667 --- /dev/null +++ b/roles/scrape-collectd/tasks/main.yml @@ -0,0 +1,8 @@ +- name: ensure scrape hosts file is populated + copy: + dest: /etc/prometheus/scrape-collectd.yml + content: |+ + {{ scrape_collectd_config | to_nice_yaml }} + mode: u=rw,go=r + owner: root + group: root diff --git a/roles/scrape-collectd/vars/main.yml b/roles/scrape-collectd/vars/main.yml new file mode 100644 index 0000000..eaaa6e7 --- /dev/null +++ b/roles/scrape-collectd/vars/main.yml @@ -0,0 +1,2 @@ +scrape_collectd_config: +- targets: '{{ groups["collectd-prometheus"] }}'