summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2022-07-02 02:40:20 +0200
committerChristian Pointner <equinox@spreadspace.org>2022-07-02 02:40:20 +0200
commitcf697068026e6ebe195f9b3c860185305e9f8f4b (patch)
treeee83b36efcd7e075c560d0dc217c1ddeb8165698
parentreserve IP for telesto IPMI in mgmt VLANs (diff)
prometheus exporter: improve configurability for listen address
-rw-r--r--roles/monitoring/prometheus/exporter/base/defaults/main.yml3
-rw-r--r--roles/monitoring/prometheus/exporter/base/tasks/tls.yml2
-rw-r--r--roles/monitoring/prometheus/exporter/base/templates/nginx-vhost.j26
3 files changed, 8 insertions, 3 deletions
diff --git a/roles/monitoring/prometheus/exporter/base/defaults/main.yml b/roles/monitoring/prometheus/exporter/base/defaults/main.yml
index 613943d8..2eef79fe 100644
--- a/roles/monitoring/prometheus/exporter/base/defaults/main.yml
+++ b/roles/monitoring/prometheus/exporter/base/defaults/main.yml
@@ -1,2 +1,3 @@
---
-prometheus_exporter_listen: "9999"
+#prometheus_exporter_listen_addr:
+prometheus_exporter_listen_port: 9999
diff --git a/roles/monitoring/prometheus/exporter/base/tasks/tls.yml b/roles/monitoring/prometheus/exporter/base/tasks/tls.yml
index 7adbd8ee..199cd6e2 100644
--- a/roles/monitoring/prometheus/exporter/base/tasks/tls.yml
+++ b/roles/monitoring/prometheus/exporter/base/tasks/tls.yml
@@ -34,7 +34,7 @@
CN: "{{ inventory_hostname }}"
subject_alt_name:
- "DNS:{{ host_name }}.{{ host_domain }}"
- - "IP:{{ (inventory_hostname == prometheus_server) | ternary('127.0.0.1', ansible_default_ipv4.address) }}"
+ - "IP:{{ (inventory_hostname == prometheus_server) | ternary('127.0.0.1', (prometheus_exporter_listen_addr | default(ansible_default_ipv4.address))) }}"
key_usage:
- digitalSignature
key_usage_critical: yes
diff --git a/roles/monitoring/prometheus/exporter/base/templates/nginx-vhost.j2 b/roles/monitoring/prometheus/exporter/base/templates/nginx-vhost.j2
index a392e821..2b17995d 100644
--- a/roles/monitoring/prometheus/exporter/base/templates/nginx-vhost.j2
+++ b/roles/monitoring/prometheus/exporter/base/templates/nginx-vhost.j2
@@ -1,5 +1,9 @@
server {
- listen {{ (inventory_hostname == prometheus_server) | ternary('127.0.0.1:9999', prometheus_exporter_listen) }} ssl;
+{% if (inventory_hostname == prometheus_server) %}
+ listen 127.0.0.1:{{ prometheus_exporter_listen_port }} ssl;
+{% else %}
+ listen {{ (prometheus_exporter_listen_addr is defined) | ternary(prometheus_exporter_listen_addr+':', '') }}{{ prometheus_exporter_listen_port }} ssl;
+{% endif %}
server_name _;
ssl_certificate /etc/ssl/prometheus/exporter/crt.pem;