diff --git a/roles/prometheus/README.md b/roles/prometheus/README.md new file mode 100644 index 0000000..13309e1 --- /dev/null +++ b/roles/prometheus/README.md @@ -0,0 +1,3 @@ +Install and configure prometheus. + +Job definitions should be placed in /etc/prometheus/conf.d by roles using this one. diff --git a/roles/prometheus/files/prometheus.yml b/roles/prometheus/files/prometheus.yml new file mode 100644 index 0000000..2d54a25 --- /dev/null +++ b/roles/prometheus/files/prometheus.yml @@ -0,0 +1,2 @@ +scrape_config_files: + - "conf.d/*.yml" diff --git a/roles/prometheus/handlers/main.yml b/roles/prometheus/handlers/main.yml new file mode 100644 index 0000000..c85cc91 --- /dev/null +++ b/roles/prometheus/handlers/main.yml @@ -0,0 +1,5 @@ +- name: reload prometheus + service: + name: prometheus + state: reloaded + when: "'handler' not in ansible_skip_tags" diff --git a/roles/prometheus/tasks/main.yml b/roles/prometheus/tasks/main.yml new file mode 100644 index 0000000..9e44c4d --- /dev/null +++ b/roles/prometheus/tasks/main.yml @@ -0,0 +1,21 @@ +- name: Install packages + package: + name: + - prometheus + +- name: Create directory for prometheus configs + file: + path: /etc/prometheus/conf.d + state: directory + +- name: Configure prometheus + copy: + dest: /etc/prometheus/ + src: prometheus.yml + notify: reload prometheus + +- name: Enable prometheus service + service: + name: prometheus + enabled: true + state: started