1
0
Fork 0
mirror of https://gitlab.com/s3lph/ansible-collection-prometheus synced 2024-10-23 11:56:59 +02:00
ansible-collection-prometheus/roles/prometheus_node/tasks/collectors.yml

67 lines
2.4 KiB
YAML

---
- name: install collector script
ansible.builtin.template:
src: "{{ basename }}.j2"
dest: "/usr/local/bin/{{ basename }}"
owner: "{{ prometheus_node_root_user }}"
group: "{{ prometheus_node_group }}"
mode: 0750
vars:
basename: "{{ item.value.template_base_name | default('prometheus-node-exporter-' + item.key + '.sh') }}"
loop: "{{ prometheus_textfile_collectors | dict2items }}"
- name: install collector config
ansible.builtin.copy:
content: "{{ item.value.config.content }}"
dest: "{{ item.value.config.filename }}"
owner: "{{ prometheus_node_root_user }}"
group: "{{ prometheus_node_group }}"
mode: 0640
when: "'config' in item.value"
loop: "{{ prometheus_textfile_collectors | dict2items }}"
- name: install collector service
ansible.builtin.template:
src: "etc/systemd/system/prometheus-collector.service.j2"
dest: "/etc/systemd/system/prometheus-node-exporter-{{ item.key }}.service"
owner: "{{ prometheus_node_root_user }}"
group: "{{ prometheus_node_root_group }}"
mode: 0644
vars:
basename: "{{ item.value.template_base_name | default('prometheus-node-exporter-' + item.key + '.sh') }}"
loop: "{{ prometheus_textfile_collectors | dict2items }}"
notify:
- systemctl daemon-reload
when: "ansible_service_mgr == 'systemd'"
- name: install collector timer
ansible.builtin.template:
src: "etc/systemd/system/prometheus-collector.timer.j2"
dest: "/etc/systemd/system/prometheus-node-exporter-{{ item.key }}.timer"
owner: "{{ prometheus_node_root_user }}"
group: "{{ prometheus_node_root_group }}"
mode: 0644
loop: "{{ prometheus_textfile_collectors | dict2items }}"
notify:
- systemctl daemon-reload
when: "ansible_service_mgr == 'systemd'"
- name: start and enable collector timer
ansible.builtin.systemd:
name: "prometheus-node-exporter-{{ item.key }}.timer"
state: started
enabled: yes
loop: "{{ prometheus_textfile_collectors | dict2items }}"
when: "ansible_service_mgr == 'systemd'"
- name: install collector cronjob
ansible.builtin.template:
src: "etc/cron.d/prometheus-node-exporter.j2"
dest: "{{ prometheus_node_crontab }}"
owner: "{{ prometheus_node_root_user }}"
group: "{{ prometheus_node_root_group }}"
mode: 0644
vars:
collectors: "{{ prometheus_textfile_collectors }}"
when: "ansible_service_mgr != 'systemd'"