feat: add alertmanager and grafana
This commit is contained in:
parent
4816cce305
commit
f4680f2072
10 changed files with 428 additions and 11 deletions
|
|
@ -0,0 +1 @@
|
|||
{{ podman_prometheus_alertmanager_config | to_nice_yaml( width=50, explicit_start=True, explicit_end=True) }}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
[Container]
|
||||
ContainerName=alertmanager
|
||||
Image=quay.io/prometheus/alertmanager:v0.31.1
|
||||
Network=monitor.network
|
||||
Volume=/home/{{ podman_prometheus_podman_rootless_user }}/alertmanager.yml:/etc/alertmanager/alertmanager.yml:ro,Z
|
||||
|
||||
[Service]
|
||||
Restart=on-failure
|
||||
|
||||
[Install]
|
||||
WantedBy=default.target
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
[Container]
|
||||
ContainerName=grafana
|
||||
Image=docker.io/grafana/grafana
|
||||
Environment=GF_SERVER_DOMAIN={{ inventory_hostname }}
|
||||
Environment=GF_SERVER_ROOT_URL=https://%%(domain)s/
|
||||
Network=frontend.network
|
||||
Network=monitor.network
|
||||
Volume=/home/{{ podman_prometheus_podman_rootless_user }}/grafana-data:/var/lib/grafana:rw,Z
|
||||
|
||||
[Service]
|
||||
Restart=on-failure
|
||||
|
||||
[Install]
|
||||
WantedBy=default.target
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
[Network]
|
||||
NetworkName=network
|
||||
|
|
@ -1,10 +1,11 @@
|
|||
[Container]
|
||||
ContainerName=prometheus
|
||||
Image=quay.io/prometheus/prometheus:v3.8.1
|
||||
Network=frontend.network
|
||||
Image=quay.io/prometheus/prometheus:v3.9.1
|
||||
Network=monitor.network
|
||||
Volume=/home/{{ podman_prometheus_podman_rootless_user }}/prometheus-data:/prometheus:rw,Z
|
||||
Volume=/home/{{ podman_prometheus_podman_rootless_user }}/file-configs:/file-configs:ro,Z
|
||||
Volume=/home/{{ podman_prometheus_podman_rootless_user }}/prometheus.yml:/etc/prometheus/prometheus.yml:ro,Z
|
||||
Volume=/home/{{ podman_prometheus_podman_rootless_user }}/alert.rules.yml:/etc/alertmanager/alert.rules.yml:ro,Z
|
||||
|
||||
[Service]
|
||||
Restart=on-failure
|
||||
|
|
|
|||
|
|
@ -21,9 +21,9 @@ server {
|
|||
}
|
||||
}
|
||||
|
||||
upstream prometheus {
|
||||
zone prometheus_upstream 64k;
|
||||
server prometheus:9090 resolve;
|
||||
upstream grafana {
|
||||
zone grafana_upstream 64k;
|
||||
server grafana:3000 resolve;
|
||||
}
|
||||
|
||||
server {
|
||||
|
|
@ -37,7 +37,7 @@ server {
|
|||
ssl_certificate_key /etc/letsencrypt/live/{{ inventory_hostname }}/privkey.pem;
|
||||
|
||||
add_header Strict-Transport-Security "max-age=31536000" always;
|
||||
add_header Referrer-Policy origin always; # make sure outgoing links don't show the URL to the Prometheus instance
|
||||
add_header Referrer-Policy origin always; # make sure outgoing links don't show the URL
|
||||
add_header X-Content-Type-Options "nosniff" always;
|
||||
add_header X-XSS-Protection "1; mode=block" always;
|
||||
|
||||
|
|
@ -47,6 +47,6 @@ server {
|
|||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
|
||||
proxy_read_timeout 180;
|
||||
proxy_pass http://prometheus;
|
||||
proxy_pass http://grafana;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,6 +8,9 @@ scrape_configs:
|
|||
scrape_interval: 5s
|
||||
static_configs:
|
||||
- targets: ['localhost:9090']
|
||||
- job_name: 'alertmanager'
|
||||
static_configs:
|
||||
- targets: ['alertmanager:9093']
|
||||
- job_name: 'node'
|
||||
scrape_interval: 5s
|
||||
scheme: https
|
||||
|
|
@ -25,9 +28,22 @@ scrape_configs:
|
|||
{% for host in groups['keycloak'] %}
|
||||
- '{{ host }}:9100'
|
||||
{% endfor %}
|
||||
{% for host in groups['radius'] %}
|
||||
- '{{ host }}:9100'
|
||||
{% endfor %}
|
||||
{% for host in groups['generic'] %}
|
||||
- '{{ host }}:9100'
|
||||
{% endfor %}
|
||||
file_sd_configs:
|
||||
- files:
|
||||
- "/file-configs/*.yml"
|
||||
|
||||
alerting:
|
||||
alertmanagers:
|
||||
- scheme: http
|
||||
static_configs:
|
||||
- targets:
|
||||
- "alertmanager:9093"
|
||||
|
||||
rule_files:
|
||||
- "/etc/alertmanager/alert.rules.yml"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue