56 lines
1.5 KiB
YAML
56 lines
1.5 KiB
YAML
---
|
|
- name: Create node_exporter user
|
|
user:
|
|
name: node_exporter
|
|
shell: /bin/false
|
|
system: yes
|
|
|
|
#- name: Download node_exporter
|
|
# get_url:
|
|
# url: "https://github.com/prometheus/node_exporter/releases/download/v1.7.0/node_exporter-1.7.0.linux-amd64.tar.gz"
|
|
# dest: "/tmp/node_exporter.tar.gz"
|
|
|
|
- name: Download node_exporter (Robust Method)
|
|
block:
|
|
- name: Try downloading with get_url
|
|
get_url:
|
|
url: "https://github.com/prometheus/node_exporter/releases/download/v1.7.0/node_exporter-1.7.0.linux-amd64.tar.gz"
|
|
dest: "/tmp/node_exporter.tar.gz"
|
|
rescue:
|
|
- name: Install curl for fallback
|
|
apt:
|
|
name: curl
|
|
state: present
|
|
|
|
- name: Fallback downloading with curl
|
|
command: >
|
|
curl -L -o /tmp/node_exporter.tar.gz https://github.com/prometheus/node_exporter/releases/download/v1.7.0/node_exporter-1.7.0.linux-amd64.tar.gz
|
|
args:
|
|
creates: /tmp/node_exporter.tar.gz
|
|
|
|
- name: Unarchive node_exporter
|
|
unarchive:
|
|
src: "/tmp/node_exporter.tar.gz"
|
|
dest: "/tmp"
|
|
remote_src: yes
|
|
|
|
- name: Install node_exporter binary
|
|
copy:
|
|
src: "/tmp/node_exporter-1.7.0.linux-amd64/node_exporter"
|
|
dest: "/usr/local/bin/node_exporter"
|
|
mode: '0755'
|
|
remote_src: yes
|
|
notify: Restart node_exporter
|
|
|
|
- name: Create systemd service file
|
|
template:
|
|
src: node_exporter.service.j2
|
|
dest: /etc/systemd/system/node_exporter.service
|
|
notify: Restart node_exporter
|
|
|
|
- name: Enable and start node_exporter
|
|
systemd:
|
|
name: node_exporter
|
|
state: started
|
|
enabled: yes
|