72 lines
1.6 KiB
YAML
72 lines
1.6 KiB
YAML
- name: install prometheus
|
|
apt:
|
|
pkg: prometheus
|
|
|
|
- name: update prometheus user
|
|
user:
|
|
name: prometheus
|
|
groups: ssl-cert
|
|
append: yes
|
|
|
|
- name: create ssl certificate folder
|
|
file:
|
|
dest: /etc/prometheus/targetcerts/
|
|
owner: root
|
|
group: root
|
|
mode: 0755
|
|
state: directory
|
|
|
|
- name: create config folders
|
|
file:
|
|
dest: "{{ item }}"
|
|
owner: root
|
|
group: root
|
|
mode: 0755
|
|
state: directory
|
|
loop:
|
|
- /etc/prometheus/conf.d
|
|
- /etc/prometheus/conf.d/scrape_configs
|
|
- /etc/prometheus/conf.d/rule_files
|
|
- /etc/prometheus/conf.d/alerting
|
|
|
|
- name: write prometheus config
|
|
notify: restart prometheus
|
|
template:
|
|
src: prometheus.j2
|
|
dest: /etc/default/prometheus
|
|
owner: root
|
|
group: root
|
|
mode: 0644
|
|
|
|
- name: write prometheus (base) config
|
|
notify: regenerate prometheus config
|
|
copy:
|
|
owner: root
|
|
group: root
|
|
mode: 0644
|
|
dest: /etc/prometheus/conf.d/prometheus.conf
|
|
content: "{{ prometheus.config|to_nice_yaml(indent=2) }}"
|
|
|
|
- name: add self scrape job
|
|
notify: regenerate prometheus config
|
|
template:
|
|
src: scrape_self.conf.j2
|
|
dest: /etc/prometheus/conf.d/scrape_configs/selfscrape.conf
|
|
owner: root
|
|
group: root
|
|
mode: 0644
|
|
|
|
- name: add config generating script
|
|
notify: regenerate prometheus config
|
|
copy:
|
|
dest: /usr/local/sbin/prometheus-generate-config.sh
|
|
src: generate-config.sh
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
|
|
- name: add cronjob to regenerate config
|
|
cron:
|
|
name: regenerate prometheus config
|
|
minute: 3,18,33,48
|
|
job: /usr/local/sbin/prometheus-generate-config.sh
|