69 lines
1.8 KiB
YAML
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
|
|
...
|