From f294c367c70d04d3de1c10fa87c2be4ea6cc3012 Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Wed, 7 Dec 2022 19:16:39 +0100 Subject: prometheus/node-exporter: make certificate SANs configurable promethues/server: add support for federation --- roles/monitoring/prometheus/server/tasks/main.yml | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'roles/monitoring/prometheus/server/tasks') 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 -- cgit v1.2.3