ansible/roles/prometheus_node_exporter/tasks/main.yml
2025-07-06 19:40:12 +02:00

69 lines
1.8 KiB
YAML

---
- name: Install prometheus-node-exporter
ansible.builtin.apt:
name:
- prometheus-node-exporter
- prometheus-node-exporter-collectors
install_recommends: false # Do not install smartmontools
- name: Configure prometheus-node-exporter
ansible.builtin.template:
src: default.j2
dest: /etc/default/prometheus-node-exporter
owner: root
group: root
mode: u=rw,g=r,o=r
notify:
- Restart prometheus-node-exporter
- name: Install smartmontools
ansible.builtin.apt:
name: smartmontools
when:
- "prometheus__smart_enabled"
- name: Disable SMART monitoring
block:
- name: Get unit info for smartmon timer
command: systemctl list-unit-files --output=json prometheus-node-exporter-smartmon.timer
register: unit
- name: Disable prometheus-node-exporter-smartmon.timer
ansible.builtin.systemd_service:
name: prometheus-node-exporter-smartmon.timer
enabled: false
state: stopped
when: "unit.stdout | from_json | count > 0"
- name: Remove smartmon.prom
ansible.builtin.file:
path: /var/lib/prometheus/node-exporter/smartmon.prom
state: absent
when:
- "not prometheus__smart_enabled"
- name: Create override directory
ansible.builtin.file:
path: /etc/systemd/system/prometheus-node-exporter.service.d
state: directory
owner: root
group: root
mode: u=rwx,g=rx,o=rx
- name: Override prometheus-node-exporter.service
ansible.builtin.template:
src: override.conf.j2
dest: /etc/systemd/system/prometheus-node-exporter.service.d/override.conf
owner: root
group: root
mode: u=rw,g=r,o=r
notify:
- Run daemon-reload
- Restart prometheus-node-exporter
- name: Enable prometheus-node-exporter
ansible.builtin.systemd_service:
name: prometheus-node-exporter
enabled: true
state: started
...