summaryrefslogtreecommitdiff
path: root/roles
diff options
context:
space:
mode:
Diffstat (limited to 'roles')
-rw-r--r--roles/monitoring/prometheus/alertmanager/defaults/main.yml2
-rw-r--r--roles/monitoring/prometheus/alertmanager/tasks/main.yml19
-rw-r--r--roles/monitoring/prometheus/exporter/blackbox/defaults/main.yml2
-rw-r--r--roles/monitoring/prometheus/exporter/blackbox/tasks/main.yml19
-rw-r--r--roles/monitoring/prometheus/exporter/ipmi/defaults/main.yml2
-rw-r--r--roles/monitoring/prometheus/exporter/ipmi/tasks/main.yml19
-rw-r--r--roles/monitoring/prometheus/exporter/mikrotik/defaults/main.yml2
-rw-r--r--roles/monitoring/prometheus/exporter/mikrotik/tasks/main.yml19
-rw-r--r--roles/monitoring/prometheus/exporter/node/defaults/main.yml2
-rw-r--r--roles/monitoring/prometheus/exporter/node/tasks/main.yml19
-rw-r--r--roles/monitoring/prometheus/exporter/nut/defaults/main.yml2
-rw-r--r--roles/monitoring/prometheus/exporter/nut/tasks/main.yml19
-rw-r--r--roles/monitoring/prometheus/exporter/ssl/defaults/main.yml2
-rw-r--r--roles/monitoring/prometheus/exporter/ssl/tasks/main.yml19
-rw-r--r--roles/monitoring/prometheus/server/defaults/main/main.yml2
-rw-r--r--roles/monitoring/prometheus/server/tasks/main.yml19
16 files changed, 152 insertions, 16 deletions
diff --git a/roles/monitoring/prometheus/alertmanager/defaults/main.yml b/roles/monitoring/prometheus/alertmanager/defaults/main.yml
index ac4f7600..85ba4f3b 100644
--- a/roles/monitoring/prometheus/alertmanager/defaults/main.yml
+++ b/roles/monitoring/prometheus/alertmanager/defaults/main.yml
@@ -1,4 +1,6 @@
---
+# prometheus_alertmanager_version:
+
prometheus_alertmanager_web_listen_address: 127.0.0.1:9093
# prometheus_alertmanager_web_route_prefix: /alertmanager/
# prometheus_alertmanager_web_external_url: https://mon.example.com/alertmanager/
diff --git a/roles/monitoring/prometheus/alertmanager/tasks/main.yml b/roles/monitoring/prometheus/alertmanager/tasks/main.yml
index 173ea758..796f9def 100644
--- a/roles/monitoring/prometheus/alertmanager/tasks/main.yml
+++ b/roles/monitoring/prometheus/alertmanager/tasks/main.yml
@@ -6,11 +6,26 @@
- spreadspace_apt_repo_components is defined
- "'prometheus' in spreadspace_apt_repo_components"
- ## TODO: pin version
+- name: generate apt pin file for alertmanager package
+ when: prometheus_alertmanager_version is defined
+ copy:
+ dest: "/etc/apt/preferences.d/prom-alertmanager.pref"
+ content: |
+ Package: prom-alertmanager
+ Pin: version {{ prometheus_alertmanager_version }}-1
+ Pin-Priority: 1001
+
+- name: remove apt pin file for alertmanager package
+ when: prometheus_alertmanager_version is not defined
+ file:
+ path: "/etc/apt/preferences.d/prom-alertmanager.pref"
+ state: absent
+
- name: install apt packages
apt:
- name: prom-alertmanager
+ name: "prom-alertmanager{% if prometheus_alertmanager_version is defined %}={{ prometheus_alertmanager_version }}-1{% endif %}"
state: present
+ allow_downgrade: yes
- name: add user for alertmanager
user:
diff --git a/roles/monitoring/prometheus/exporter/blackbox/defaults/main.yml b/roles/monitoring/prometheus/exporter/blackbox/defaults/main.yml
index 73b9fde1..5d5f98a7 100644
--- a/roles/monitoring/prometheus/exporter/blackbox/defaults/main.yml
+++ b/roles/monitoring/prometheus/exporter/blackbox/defaults/main.yml
@@ -1,4 +1,6 @@
---
+# prometheus_exporter_blackbox_version:
+
prometheus_exporter_blackbox_modules:
tcp_connect:
prober: tcp
diff --git a/roles/monitoring/prometheus/exporter/blackbox/tasks/main.yml b/roles/monitoring/prometheus/exporter/blackbox/tasks/main.yml
index c4cabfce..f04cf68d 100644
--- a/roles/monitoring/prometheus/exporter/blackbox/tasks/main.yml
+++ b/roles/monitoring/prometheus/exporter/blackbox/tasks/main.yml
@@ -1,9 +1,24 @@
---
- ## TODO: pin version
+- name: generate apt pin file for exporter-blackbox package
+ when: prometheus_exporter_blackbox_version is defined
+ copy:
+ dest: "/etc/apt/preferences.d/prom-exporter-blackbox.pref"
+ content: |
+ Package: prom-exporter-blackbox
+ Pin: version {{ prometheus_exporter_blackbox_version }}-1
+ Pin-Priority: 1001
+
+- name: remove apt pin file for exporter-blackbox package
+ when: prometheus_exporter_blackbox_version is not defined
+ file:
+ path: "/etc/apt/preferences.d/prom-exporter-blackbox.pref"
+ state: absent
+
- name: install apt packages
apt:
- name: prom-exporter-blackbox
+ name: "prom-exporter-blackbox{% if prometheus_exporter_blackbox_version is defined %}={{ prometheus_exporter_blackbox_version }}-1{% endif %}"
state: present
+ allow_downgrade: yes
- name: create config directory
file:
diff --git a/roles/monitoring/prometheus/exporter/ipmi/defaults/main.yml b/roles/monitoring/prometheus/exporter/ipmi/defaults/main.yml
index 6cf14f76..fa9de646 100644
--- a/roles/monitoring/prometheus/exporter/ipmi/defaults/main.yml
+++ b/roles/monitoring/prometheus/exporter/ipmi/defaults/main.yml
@@ -1,4 +1,6 @@
---
+# prometheus_exporter_ipmi_version:
+
prometheus_exporter_ipmi_modules:
default:
collectors: []
diff --git a/roles/monitoring/prometheus/exporter/ipmi/tasks/main.yml b/roles/monitoring/prometheus/exporter/ipmi/tasks/main.yml
index 91318f16..81039e29 100644
--- a/roles/monitoring/prometheus/exporter/ipmi/tasks/main.yml
+++ b/roles/monitoring/prometheus/exporter/ipmi/tasks/main.yml
@@ -1,9 +1,24 @@
---
- ## TODO: pin version
+- name: generate apt pin file for exporter-ipmi package
+ when: prometheus_exporter_ipmi_version is defined
+ copy:
+ dest: "/etc/apt/preferences.d/prom-exporter-ipmi.pref"
+ content: |
+ Package: prom-exporter-ipmi
+ Pin: version {{ prometheus_exporter_ipmi_version }}-1
+ Pin-Priority: 1001
+
+- name: remove apt pin file for exporter-ipmi package
+ when: prometheus_exporter_ipmi_version is not defined
+ file:
+ path: "/etc/apt/preferences.d/prom-exporter-ipmi.pref"
+ state: absent
+
- name: install apt packages
apt:
- name: prom-exporter-ipmi
+ name: "prom-exporter-ipmi{% if prometheus_exporter_ipmi_version is defined %}={{ prometheus_exporter_ipmi_version }}-1{% endif %}"
state: present
+ allow_downgrade: yes
- name: create config directory
file:
diff --git a/roles/monitoring/prometheus/exporter/mikrotik/defaults/main.yml b/roles/monitoring/prometheus/exporter/mikrotik/defaults/main.yml
index 373cba47..cab0529a 100644
--- a/roles/monitoring/prometheus/exporter/mikrotik/defaults/main.yml
+++ b/roles/monitoring/prometheus/exporter/mikrotik/defaults/main.yml
@@ -1,4 +1,6 @@
---
+# prometheus_exporter_mikrotik_version:
+
# prometheus_exporter_mikrotik_devices:
# - name: bridge01
# address: 1.2.3.4
diff --git a/roles/monitoring/prometheus/exporter/mikrotik/tasks/main.yml b/roles/monitoring/prometheus/exporter/mikrotik/tasks/main.yml
index 72c78e4a..45c6b03b 100644
--- a/roles/monitoring/prometheus/exporter/mikrotik/tasks/main.yml
+++ b/roles/monitoring/prometheus/exporter/mikrotik/tasks/main.yml
@@ -1,9 +1,24 @@
---
- ## TODO: pin version
+- name: generate apt pin file for exporter-mikrotik package
+ when: prometheus_exporter_mikrotik_version is defined
+ copy:
+ dest: "/etc/apt/preferences.d/prom-exporter-mikrotik.pref"
+ content: |
+ Package: prom-exporter-mikrotik
+ Pin: version {{ prometheus_exporter_mikrotik_version }}-1
+ Pin-Priority: 1001
+
+- name: remove apt pin file for exporter-mikrotik package
+ when: prometheus_exporter_mikrotik_version is not defined
+ file:
+ path: "/etc/apt/preferences.d/prom-exporter-mikrotik.pref"
+ state: absent
+
- name: install apt packages
apt:
- name: prom-exporter-mikrotik
+ name: "prom-exporter-mikrotik{% if prometheus_exporter_mikrotik_version is defined %}={{ prometheus_exporter_mikrotik_version }}-1{% endif %}"
state: present
+ allow_downgrade: yes
- name: create config directory
file:
diff --git a/roles/monitoring/prometheus/exporter/node/defaults/main.yml b/roles/monitoring/prometheus/exporter/node/defaults/main.yml
index 38bcc080..a3a1baa9 100644
--- a/roles/monitoring/prometheus/exporter/node/defaults/main.yml
+++ b/roles/monitoring/prometheus/exporter/node/defaults/main.yml
@@ -1,4 +1,6 @@
---
+# prometheus_exporter_node_version:
+
_prometheus_exporter_node_time_collector_map_:
"": timex
systemd-timesyncd: timex
diff --git a/roles/monitoring/prometheus/exporter/node/tasks/main.yml b/roles/monitoring/prometheus/exporter/node/tasks/main.yml
index 27bf3a4d..7860212b 100644
--- a/roles/monitoring/prometheus/exporter/node/tasks/main.yml
+++ b/roles/monitoring/prometheus/exporter/node/tasks/main.yml
@@ -1,11 +1,26 @@
---
- ## TODO: pin version
+- name: generate apt pin file for exporter-node package
+ when: prometheus_exporter_node_version is defined
+ copy:
+ dest: "/etc/apt/preferences.d/prom-exporter-node.pref"
+ content: |
+ Package: prom-exporter-node
+ Pin: version {{ prometheus_exporter_node_version }}-1
+ Pin-Priority: 1001
+
+- name: remove apt pin file for exporter-node package
+ when: prometheus_exporter_node_version is not defined
+ file:
+ path: "/etc/apt/preferences.d/prom-exporter-node.pref"
+ state: absent
+
- name: install apt packages
apt:
name:
- - prom-exporter-node
+ - "prom-exporter-node{% if prometheus_exporter_node_version is defined %}={{ prometheus_exporter_node_version }}-1{% endif %}"
- moreutils
state: present
+ allow_downgrade: yes
- name: create directory for textfile collector
file:
diff --git a/roles/monitoring/prometheus/exporter/nut/defaults/main.yml b/roles/monitoring/prometheus/exporter/nut/defaults/main.yml
index e358627c..75045f8f 100644
--- a/roles/monitoring/prometheus/exporter/nut/defaults/main.yml
+++ b/roles/monitoring/prometheus/exporter/nut/defaults/main.yml
@@ -1,4 +1,6 @@
---
+# prometheus_exporter_nut_version:
+
prometheus_exporter_nut_variables:
- "battery.charge"
- "battery.runtime"
diff --git a/roles/monitoring/prometheus/exporter/nut/tasks/main.yml b/roles/monitoring/prometheus/exporter/nut/tasks/main.yml
index f602472d..79074d03 100644
--- a/roles/monitoring/prometheus/exporter/nut/tasks/main.yml
+++ b/roles/monitoring/prometheus/exporter/nut/tasks/main.yml
@@ -1,9 +1,24 @@
---
- ## TODO: pin version
+- name: generate apt pin file for exporter-nut package
+ when: prometheus_exporter_nut_version is defined
+ copy:
+ dest: "/etc/apt/preferences.d/prom-exporter-nut.pref"
+ content: |
+ Package: prom-exporter-nut
+ Pin: version {{ prometheus_exporter_nut_version }}-1
+ Pin-Priority: 1001
+
+- name: remove apt pin file for exporter-nut package
+ when: prometheus_exporter_nut_version is not defined
+ file:
+ path: "/etc/apt/preferences.d/prom-exporter-nut.pref"
+ state: absent
+
- name: install apt packages
apt:
- name: prom-exporter-nut
+ name: "prom-exporter-nut{% if prometheus_exporter_nut_version is defined %}={{ prometheus_exporter_nut_version }}-1{% endif %}"
state: present
+ allow_downgrade: yes
- name: generate systemd service unit
template:
diff --git a/roles/monitoring/prometheus/exporter/ssl/defaults/main.yml b/roles/monitoring/prometheus/exporter/ssl/defaults/main.yml
index d7edd3f4..f5dd8138 100644
--- a/roles/monitoring/prometheus/exporter/ssl/defaults/main.yml
+++ b/roles/monitoring/prometheus/exporter/ssl/defaults/main.yml
@@ -1,4 +1,6 @@
---
+# prometheus_exporter_ssl_version:
+
prometheus_exporter_ssl_modules:
tcp:
prober: tcp
diff --git a/roles/monitoring/prometheus/exporter/ssl/tasks/main.yml b/roles/monitoring/prometheus/exporter/ssl/tasks/main.yml
index c57ea0b1..79e36389 100644
--- a/roles/monitoring/prometheus/exporter/ssl/tasks/main.yml
+++ b/roles/monitoring/prometheus/exporter/ssl/tasks/main.yml
@@ -1,9 +1,24 @@
---
- ## TODO: pin version
+- name: generate apt pin file for exporter-ssl package
+ when: prometheus_exporter_ssl_version is defined
+ copy:
+ dest: "/etc/apt/preferences.d/prom-exporter-ssl.pref"
+ content: |
+ Package: prom-exporter-ssl
+ Pin: version {{ prometheus_exporter_ssl_version }}-1
+ Pin-Priority: 1001
+
+- name: remove apt pin file for exporter-ssl package
+ when: prometheus_exporter_ssl_version is not defined
+ file:
+ path: "/etc/apt/preferences.d/prom-exporter-ssl.pref"
+ state: absent
+
- name: install apt packages
apt:
- name: prom-exporter-ssl
+ name: "prom-exporter-ssl{% if prometheus_exporter_ssl_version is defined %}={{ prometheus_exporter_ssl_version }}-1{% endif %}"
state: present
+ allow_downgrade: yes
- name: create config directory
file:
diff --git a/roles/monitoring/prometheus/server/defaults/main/main.yml b/roles/monitoring/prometheus/server/defaults/main/main.yml
index 99f93e6e..0925b79b 100644
--- a/roles/monitoring/prometheus/server/defaults/main/main.yml
+++ b/roles/monitoring/prometheus/server/defaults/main/main.yml
@@ -3,6 +3,8 @@
# type: (zfs|lvm)
# ...
+# prometheus_server_version:
+
prometheus_server_retention: "15d"
# prometheus_server_external_labels:
# environment: foo
diff --git a/roles/monitoring/prometheus/server/tasks/main.yml b/roles/monitoring/prometheus/server/tasks/main.yml
index 4b1bf2c4..c9acd345 100644
--- a/roles/monitoring/prometheus/server/tasks/main.yml
+++ b/roles/monitoring/prometheus/server/tasks/main.yml
@@ -13,11 +13,26 @@
include_role:
name: "storage/{{ prometheus_server_storage.type }}/volume"
- ## TODO: pin version
+- name: generate apt pin file for prometheus package
+ when: prometheus_server_version is defined
+ copy:
+ dest: "/etc/apt/preferences.d/prom-server.pref"
+ content: |
+ Package: prom-server
+ Pin: version {{ prometheus_server_version }}-1
+ Pin-Priority: 1001
+
+- name: remove apt pin file for prometheus package
+ when: prometheus_server_version is not defined
+ file:
+ path: "/etc/apt/preferences.d/prom-server.pref"
+ state: absent
+
- name: install apt packages
apt:
- name: prom-server
+ name: "prom-server{% if prometheus_server_version is defined %}={{ prometheus_server_version }}-1{% endif %}"
state: present
+ allow_downgrade: yes
- name: add user for server
user: