95 lines
2.7 KiB
YAML+Jinja
95 lines
2.7 KiB
YAML+Jinja
{% set smtp_monitoring_enabled = salt['pillar.get']('pmg:smtp_monitoring:enabled', True) %}
|
|
{% set blackbox_package = salt['pillar.get']('pmg:smtp_monitoring:blackbox:package', 'prometheus-blackbox-exporter') %}
|
|
{% set blackbox_service = salt['pillar.get']('pmg:smtp_monitoring:blackbox:service', 'prometheus-blackbox-exporter') %}
|
|
{% set smtp_ports = salt['pillar.get']('pmg:smtp_monitoring:ports', [25, 26]) %}
|
|
{% set smtp_log_window_seconds = salt['pillar.get']('pmg:smtp_monitoring:log_window_seconds', 300) %}
|
|
|
|
{% if smtp_monitoring_enabled %}
|
|
pmg-smtp-monitoring-packages:
|
|
pkg.installed:
|
|
- pkgs:
|
|
- {{ blackbox_package }}
|
|
- iproute2
|
|
- jq
|
|
|
|
pmg-smtp-monitoring-metrics-dir:
|
|
file.directory:
|
|
- name: /var/lib/prometheus/node-exporter
|
|
- user: root
|
|
- group: root
|
|
- mode: "0755"
|
|
|
|
pmg-smtp-monitoring-script:
|
|
file.managed:
|
|
- name: /usr/local/bin/pmg-smtp-metrics.sh
|
|
- source: salt://pmg/files/pmg-smtp-metrics.sh.jinja
|
|
- template: jinja
|
|
- context:
|
|
smtp_ports: {{ smtp_ports }}
|
|
smtp_log_window_seconds: {{ smtp_log_window_seconds }}
|
|
- user: root
|
|
- group: root
|
|
- mode: "0755"
|
|
- require:
|
|
- file: pmg-smtp-monitoring-metrics-dir
|
|
|
|
pmg-smtp-monitoring-service:
|
|
file.managed:
|
|
- name: /etc/systemd/system/pmg-smtp-metrics.service
|
|
- source: salt://pmg/files/pmg-smtp-metrics.service.jinja
|
|
- user: root
|
|
- group: root
|
|
- mode: "0644"
|
|
|
|
pmg-smtp-monitoring-timer:
|
|
file.managed:
|
|
- name: /etc/systemd/system/pmg-smtp-metrics.timer
|
|
- source: salt://pmg/files/pmg-smtp-metrics.timer.jinja
|
|
- user: root
|
|
- group: root
|
|
- mode: "0644"
|
|
|
|
pmg-smtp-monitoring-blackbox-config:
|
|
file.managed:
|
|
- name: /etc/prometheus/blackbox.yml
|
|
- source: salt://pmg/files/blackbox.yml.jinja
|
|
- template: jinja
|
|
- context:
|
|
smtp_ports: {{ smtp_ports }}
|
|
- user: root
|
|
- group: root
|
|
- mode: "0644"
|
|
- require:
|
|
- pkg: pmg-smtp-monitoring-packages
|
|
|
|
pmg-smtp-monitoring-systemd-reload:
|
|
cmd.run:
|
|
- name: systemctl daemon-reload
|
|
- onchanges:
|
|
- file: pmg-smtp-monitoring-service
|
|
- file: pmg-smtp-monitoring-timer
|
|
|
|
pmg-smtp-monitoring-blackbox-service:
|
|
service.running:
|
|
- name: {{ blackbox_service }}
|
|
- enable: true
|
|
- require:
|
|
- pkg: pmg-smtp-monitoring-packages
|
|
- watch:
|
|
- file: pmg-smtp-monitoring-blackbox-config
|
|
|
|
pmg-smtp-monitoring-timer-running:
|
|
service.running:
|
|
- name: pmg-smtp-metrics.timer
|
|
- enable: true
|
|
- require:
|
|
- cmd: pmg-smtp-monitoring-systemd-reload
|
|
- file: pmg-smtp-monitoring-script
|
|
|
|
pmg-smtp-monitoring-run-once:
|
|
cmd.run:
|
|
- name: /usr/local/bin/pmg-smtp-metrics.sh
|
|
- require:
|
|
- file: pmg-smtp-monitoring-script
|
|
{% endif %}
|