src.nth.io/

summaryrefslogtreecommitdiff
path: root/prometheus/server
diff options
context:
space:
mode:
authorLuke Hoersten <[email protected]>2020-02-09 20:34:46 -0600
committerLuke Hoersten <[email protected]>2020-02-09 20:34:46 -0600
commit9ad705198a34f645bc9cc61512965fb9547d8aad (patch)
treee0d70bbd2da3ff104332b2a7325ee9f962c69b91 /prometheus/server
parent6066f412e13015034f57e98c6458f05dddd96b40 (diff)
Completed prometheus basic roles.
Diffstat (limited to 'prometheus/server')
-rw-r--r--prometheus/server/defaults/main.yaml6
-rw-r--r--prometheus/server/handlers/main.yaml5
-rw-r--r--prometheus/server/tasks/main.yaml13
-rw-r--r--prometheus/server/templates/prometheus.yml.j242
4 files changed, 61 insertions, 5 deletions
diff --git a/prometheus/server/defaults/main.yaml b/prometheus/server/defaults/main.yaml
new file mode 100644
index 0000000..3893353
--- /dev/null
+++ b/prometheus/server/defaults/main.yaml
@@ -0,0 +1,6 @@
+---
+
+prometheus_server_conf: "prometheus.yml.j2"
+prometheus_server_apt_packages:
+ - "prometheus"
+ - "grafana"
diff --git a/prometheus/server/handlers/main.yaml b/prometheus/server/handlers/main.yaml
new file mode 100644
index 0000000..223e1b0
--- /dev/null
+++ b/prometheus/server/handlers/main.yaml
@@ -0,0 +1,5 @@
+---
+
+- name: restart prometheus service
+ systemd: name="prometheus.service" state="restarted" daemon_reload="yes"
+ become: yes
diff --git a/prometheus/server/tasks/main.yaml b/prometheus/server/tasks/main.yaml
index 470c1cc..8235c9b 100644
--- a/prometheus/server/tasks/main.yaml
+++ b/prometheus/server/tasks/main.yaml
@@ -10,10 +10,13 @@
- name: install prometheus and grafana
become: yes
- apt: name="{{item}}" state="latest"
- with_items:
- - "prometheus"
- - "grafana"
+ apt: name="{{prometheus_server_apt_packages}}" state="latest"
+
+- name: configure prometheus
+ become: yes
+ template:
+ src: "{{prometheus_server_conf}}"
+ dest: "/etc/prometheus/prometheus.yml"
+ notify: restart prometheus service
-# /etc/prometheus/prometheus.yml
# /etc/grafana/grafana.ini
diff --git a/prometheus/server/templates/prometheus.yml.j2 b/prometheus/server/templates/prometheus.yml.j2
new file mode 100644
index 0000000..cf88480
--- /dev/null
+++ b/prometheus/server/templates/prometheus.yml.j2
@@ -0,0 +1,42 @@
+global:
+ scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
+ evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
+ # scrape_timeout is set to the global default (10s).
+
+ # Attach these labels to any time series or alerts when communicating with
+ # external systems (federation, remote storage, Alertmanager).
+ external_labels:
+ monitor: 'example'
+
+# Alertmanager configuration
+# alerting:
+# alertmanagers:
+# - static_configs:
+# - targets: ['localhost:9093']
+
+# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
+# rule_files:
+ # - "first_rules.yml"
+ # - "second_rules.yml"
+
+# A scrape configuration containing exactly one endpoint to scrape:
+# Here it's Prometheus itself.
+scrape_configs:
+ # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
+ - job_name: 'prometheus'
+ # server stats
+ static_configs:
+ - targets:
+ - 'localhost:9090'
+
+ - job_name: node
+ # If prometheus-node-exporter is installed, grab stats about the local machine by default.
+ static_configs:
+ - targets:
+ - 'localhost:9100'
+
+ - job_name: rpi
+ # rpi_exporter
+ static_configs:
+ - targets:
+ - 'localhost:9243'