summaryrefslogtreecommitdiff
path: root/roles/monitoring/prometheus/server/tasks
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2022-12-07 19:16:39 +0100
committerChristian Pointner <equinox@spreadspace.org>2022-12-07 19:33:32 +0100
commitf294c367c70d04d3de1c10fa87c2be4ea6cc3012 (patch)
treee9accdbd8bb877f02543a3425fc394517cac4007 /roles/monitoring/prometheus/server/tasks
parentalerta: allow to force alerm severity for heartbeats (diff)
prometheus/node-exporter: make certificate SANs configurable
promethues/server: add support for federation
Diffstat (limited to 'roles/monitoring/prometheus/server/tasks')
-rw-r--r--roles/monitoring/prometheus/server/tasks/main.yml17
1 files changed, 15 insertions, 2 deletions
diff --git a/roles/monitoring/prometheus/server/tasks/main.yml b/roles/monitoring/prometheus/server/tasks/main.yml
index e93221d5..fce41214 100644
--- a/roles/monitoring/prometheus/server/tasks/main.yml
+++ b/roles/monitoring/prometheus/server/tasks/main.yml
@@ -91,13 +91,13 @@
notify: reload prometheus
- name: create sub-directories for all jobs in rules directory
- loop: "{{ prometheus_server_jobs | select('match', '.*/.*') | map('dirname') | unique }}"
+ loop: "{{ prometheus_server_jobs | union(prometheus_server_federation | default({}) | dict2items | map(attribute='value.jobs') | flatten | unique) | select('match', '.*/.*') | map('dirname') | unique }}"
file:
path: "/etc/prometheus/rules/{{ item }}"
state: directory
- name: generate rules files for all jobs
- loop: "{{ prometheus_server_jobs | union(['prometheus']) }}"
+ loop: "{{ prometheus_server_jobs | union(prometheus_server_federation | default({}) | dict2items | map(attribute='value.jobs') | flatten | unique) | union(['prometheus']) }}"
template:
src: rules.yml.j2
dest: "/etc/prometheus/rules/{{ item }}.yml"
@@ -151,6 +151,19 @@
no_log: yes
notify: reload prometheus
+- name: generate password file prometheus server to access federation
+ loop: "{{ prometheus_server_federation | default({}) | dict2items | selectattr('value.basic_auth', 'defined') }}"
+ loop_control:
+ label: "{{ item.key }}"
+ copy:
+ content: "{{ item.value.basic_auth.password }}\n"
+ dest: "/etc/prometheus/prometheus-federation-{{ item.key }}.password"
+ mode: 0640
+ owner: root
+ group: prometheus
+ no_log: yes
+ notify: reload prometheus
+
- name: generate systemd service unit
template:
src: prometheus.service.j2