Files

60 lines
1.5 KiB
YAML

---
- name: Install node_exporter (Debian)
ansible.builtin.apt:
name: prometheus-node-exporter
state: present
when: ansible_facts["os_family"] == "Debian"
become: true
- name: Install node_exporter (Arch)
community.general.pacman:
name: prometheus-node-exporter
state: present
when: ansible_facts["os_family"] == "Archlinux"
become: true
- name: Configure node_exporter flags (Debian)
ansible.builtin.copy:
dest: /etc/default/prometheus-node-exporter
content: |
ARGS="{{ node_exporter_flags }}"
owner: root
group: root
mode: '0644'
when: ansible_facts["os_family"] == "Debian"
become: true
notify: Restart node_exporter
- name: Configure node_exporter flags (Arch)
ansible.builtin.copy:
dest: /etc/conf.d/prometheus-node-exporter
content: |
NODE_EXPORTER_ARGS="{{ node_exporter_flags }}"
owner: root
group: root
mode: '0644'
when: ansible_facts["os_family"] == "Archlinux"
become: true
notify: Restart node_exporter
- name: Enable and start node_exporter service
ansible.builtin.systemd:
name: prometheus-node-exporter
state: started
enabled: true
become: true
- name: Populate service facts
ansible.builtin.service_facts:
- name: Open port 9100 for prometheus scraping
ansible.posix.firewalld:
port: 9100/tcp
permanent: true
state: enabled
immediate: true
become: true
when: >
ansible_facts.services['firewalld.service'] is defined and
ansible_facts.services['firewalld.service'].state == 'running'