summaryrefslogtreecommitdiff
path: root/roles/monitoring/prometheus
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2021-06-24 22:29:26 +0200
committerChristian Pointner <equinox@spreadspace.org>2021-06-24 22:29:26 +0200
commit6c990fd148f8813dcbafbf2e27fa5ecbe88af5dc (patch)
tree5e1d71a45610f4c29c3679edc817b5f0aa1aed7d /roles/monitoring/prometheus
parentprometheus: connect server to alertmanager if configured (diff)
move monitoring web interfaces into common nginx vhost
Diffstat (limited to 'roles/monitoring/prometheus')
-rw-r--r--roles/monitoring/prometheus/alertmanager/defaults/main.yml3
-rw-r--r--roles/monitoring/prometheus/alertmanager/templates/prometheus-alertmanager.service.j22
-rw-r--r--roles/monitoring/prometheus/server/defaults/main/main.yml4
-rw-r--r--roles/monitoring/prometheus/server/templates/prometheus.service.j22
-rw-r--r--roles/monitoring/prometheus/server/templates/prometheus.yml.j29
5 files changed, 18 insertions, 2 deletions
diff --git a/roles/monitoring/prometheus/alertmanager/defaults/main.yml b/roles/monitoring/prometheus/alertmanager/defaults/main.yml
index 34b03df0..62663ab8 100644
--- a/roles/monitoring/prometheus/alertmanager/defaults/main.yml
+++ b/roles/monitoring/prometheus/alertmanager/defaults/main.yml
@@ -3,3 +3,6 @@ promethues_alertmanager_smtp:
smarthost: "127.0.0.1:25"
from: "noreply@example.com"
require_tls: no
+
+prometheus_alertmanager_web_listen_address: 127.0.0.1:9093
+# prometheus_alertmanager_web_route_prefix: /alertmanager/
diff --git a/roles/monitoring/prometheus/alertmanager/templates/prometheus-alertmanager.service.j2 b/roles/monitoring/prometheus/alertmanager/templates/prometheus-alertmanager.service.j2
index f290dca8..e548607d 100644
--- a/roles/monitoring/prometheus/alertmanager/templates/prometheus-alertmanager.service.j2
+++ b/roles/monitoring/prometheus/alertmanager/templates/prometheus-alertmanager.service.j2
@@ -5,7 +5,7 @@ Documentation=https://prometheus.io/docs/alerting/alertmanager/
[Service]
Restart=on-failure
User=prometheus-alertmanager
-ExecStart=/usr/bin/prometheus-alertmanager --config.file=/etc/prometheus/alertmanager.yml --cluster.listen-address= --storage.path="/var/lib/prometheus/alertmanager"
+ExecStart=/usr/bin/prometheus-alertmanager --config.file=/etc/prometheus/alertmanager.yml --cluster.listen-address= --storage.path="/var/lib/prometheus/alertmanager"{% if prometheus_alertmanager_web_route_prefix is defined %} --web.route-prefix={{ prometheus_alertmanager_web_route_prefix }}{% endif %} --web.listen-address={{ prometheus_alertmanager_web_listen_address }}
ExecReload=/bin/kill -HUP $MAINPID
TimeoutStopSec=20s
SendSIGKILL=no
diff --git a/roles/monitoring/prometheus/server/defaults/main/main.yml b/roles/monitoring/prometheus/server/defaults/main/main.yml
index 8e7fea4b..c9291172 100644
--- a/roles/monitoring/prometheus/server/defaults/main/main.yml
+++ b/roles/monitoring/prometheus/server/defaults/main/main.yml
@@ -14,3 +14,7 @@ prometheus_server_rules:
# prometheus_server_alertmanager:
# url: "127.0.0.1:9093"
+# path_prefix: /
+
+prometheus_server_web_listen_address: 127.0.0.1:9090
+# prometheus_server_web_external_url: /prometheus/
diff --git a/roles/monitoring/prometheus/server/templates/prometheus.service.j2 b/roles/monitoring/prometheus/server/templates/prometheus.service.j2
index 0530e589..3a366a61 100644
--- a/roles/monitoring/prometheus/server/templates/prometheus.service.j2
+++ b/roles/monitoring/prometheus/server/templates/prometheus.service.j2
@@ -6,7 +6,7 @@ After=time-sync.target
[Service]
Restart=on-failure
User=prometheus
-ExecStart=/usr/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.path=/var/lib/prometheus/metrics2/ --storage.tsdb.retention.time={{ prometheus_server_retention }}
+ExecStart=/usr/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.path=/var/lib/prometheus/metrics2/ --storage.tsdb.retention.time={{ prometheus_server_retention }}{% if prometheus_server_web_external_url is defined %} --web.external-url={{ prometheus_server_web_external_url }}{% endif %} --web.listen-address={{ prometheus_server_web_listen_address }}
ExecReload=/bin/kill -HUP $MAINPID
TimeoutStopSec=20s
SendSIGKILL=no
diff --git a/roles/monitoring/prometheus/server/templates/prometheus.yml.j2 b/roles/monitoring/prometheus/server/templates/prometheus.yml.j2
index c76990f4..69d5bcdc 100644
--- a/roles/monitoring/prometheus/server/templates/prometheus.yml.j2
+++ b/roles/monitoring/prometheus/server/templates/prometheus.yml.j2
@@ -12,10 +12,16 @@ alerting:
alertmanagers:
- static_configs:
- targets: ['{{ prometheus_server_alertmanager.url }}']
+{% if 'path_prefix' in prometheus_server_alertmanager %}
+ path_prefix: '{{ prometheus_server_alertmanager.path_prefix }}'
+{% endif %}
{% endif %}
scrape_configs:
- job_name: 'prometheus'
+{% if prometheus_server_web_external_url is defined %}
+ metrics_path: '{{ (prometheus_server_web_external_url | urlsplit('path'), 'metrics') | path_join }}'
+{% endif %}
static_configs:
- targets: ['localhost:9090']
labels:
@@ -23,6 +29,9 @@ scrape_configs:
{% if prometheus_server_alertmanager is defined %}
- job_name: 'alertmanager'
+{% if 'path_prefix' in prometheus_server_alertmanager %}
+ metrics_path: '{{ (prometheus_server_alertmanager.path_prefix, 'metrics') | path_join }}'
+{% endif %}
static_configs:
- targets: ['{{ prometheus_server_alertmanager.url }}']
{% endif %}