55 lines
1.7 KiB
YAML
55 lines
1.7 KiB
YAML
- name: Install Prometheus Node Exporter
|
|
hosts: nuculabs
|
|
become: true
|
|
become_method: sudo
|
|
vars_files:
|
|
- variables.yaml
|
|
tasks:
|
|
- name: Setup Container
|
|
block:
|
|
- name: Ensure Podman is installed
|
|
ansible.builtin.package:
|
|
name: podman
|
|
state: present
|
|
- name: Pull image
|
|
containers.podman.podman_image:
|
|
name: "{{ node_exporter.container_image }}"
|
|
state: present
|
|
- name: "Copy container"
|
|
ansible.builtin.template:
|
|
src: ./templates/container/node_exporter.container.j2
|
|
dest: /etc/containers/systemd/node_exporter.container
|
|
mode: "0644"
|
|
- name: Reload systemd
|
|
ansible.builtin.command:
|
|
cmd: systemctl daemon-reload
|
|
- name: Stop service
|
|
ansible.builtin.systemd_service:
|
|
name: node_exporter.service
|
|
state: stopped
|
|
enabled: true
|
|
- name: Enable service
|
|
ansible.builtin.systemd_service:
|
|
name: node_exporter.service
|
|
state: started
|
|
enabled: true
|
|
- name: Setup firewall
|
|
block:
|
|
- name: Create firewalld service
|
|
ansible.builtin.template:
|
|
src: ./templates/firewall/node_exporter.xml.j2
|
|
dest: /etc/firewalld/services/node_exporter.xml
|
|
mode: "0644"
|
|
- name: Reload firewalld
|
|
ansible.builtin.command:
|
|
argv:
|
|
- firewall-cmd
|
|
- --reload
|
|
- name: Enable firewalld service
|
|
ansible.posix.firewalld:
|
|
service: node_exporter
|
|
state: enabled
|
|
permanent: true
|
|
immediate: true
|
|
offline: true
|
|
when: setup_firewall
|