add proxmox exporter
This commit is contained in:
parent
7d6d9e2076
commit
98fe9294b3
@ -88,3 +88,10 @@
|
|||||||
state: restarted
|
state: restarted
|
||||||
enabled: yes
|
enabled: yes
|
||||||
tags: ['prometheus']
|
tags: ['prometheus']
|
||||||
|
|
||||||
|
- name: 'prometheus | proxmox exporter | restart service'
|
||||||
|
systemd:
|
||||||
|
name: prometheus-proxmox-exporter.service
|
||||||
|
state: restarted
|
||||||
|
enabled: yes
|
||||||
|
tags: ['prometheus']
|
||||||
|
48
tasks/exporter/proxmox.yml
Normal file
48
tasks/exporter/proxmox.yml
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
---
|
||||||
|
- name: 'proxmox exporter | check vars are defined'
|
||||||
|
assert:
|
||||||
|
that:
|
||||||
|
- prometheus_proxmox_exporter_user is defined
|
||||||
|
- prometheus_proxmox_exporter_password is defined
|
||||||
|
- prometheus_proxmox_exporter_node is defined
|
||||||
|
tags: ['prometheus_proxmox']
|
||||||
|
|
||||||
|
- name: 'proxmox exporter | install package through pip3'
|
||||||
|
pip:
|
||||||
|
name:
|
||||||
|
- prometheus-pve-exporter
|
||||||
|
executable: pip3
|
||||||
|
tags: ['prometheus_proxmox']
|
||||||
|
|
||||||
|
- name: 'proxmox exporter | configuration'
|
||||||
|
template:
|
||||||
|
src: conf/prometheus-proxmox-exporter.j2
|
||||||
|
dest: /etc/default/prometheus-proxmox-exporter
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
mode: 0600
|
||||||
|
register: prometheus_postgres_exporter_configuration
|
||||||
|
notify:
|
||||||
|
- 'prometheus | proxmox exporter | restart service'
|
||||||
|
tags: ['prometheus_proxmox']
|
||||||
|
|
||||||
|
- name: 'promox exporter | systemd | copy unit file'
|
||||||
|
template:
|
||||||
|
src: systemd/prometheus-promox-exporter.service.j2
|
||||||
|
dest: /etc/systemd/system/prometheus-promox-exporter.service
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
mode: 0600
|
||||||
|
notify:
|
||||||
|
- 'prometheus | promox exporter | restart service'
|
||||||
|
when: not stat_result.stat.exists or exporter_upgrade == "yes"
|
||||||
|
tags: ['prometheus_proxmox']
|
||||||
|
|
||||||
|
- name: 'promox exporter | systemd | enable service'
|
||||||
|
systemd:
|
||||||
|
daemon_reload: yes
|
||||||
|
enabled: yes
|
||||||
|
name: prometheus-{{ exporter }}-exporter.service
|
||||||
|
ignore_errors: '{{ ansible_check_mode }}'
|
||||||
|
when: not stat_result.stat.exists or exporter_upgrade == "yes"
|
||||||
|
tags: ['prometheus_proxmox']
|
5
templates/conf/prometheus-proxmox-exporter.j2
Normal file
5
templates/conf/prometheus-proxmox-exporter.j2
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
# {{ ansible_managed }}
|
||||||
|
default:
|
||||||
|
user: {{ prometheus_proxmox_exporter_user }}
|
||||||
|
password: {{ prometheus_proxmox_exporter_password }}
|
||||||
|
verify_ssl: {{ prometheus_proxmox_exporter_verify_ssl | default('false') }}
|
@ -387,3 +387,20 @@ scrape_configs:
|
|||||||
regex: '(.*):8082'
|
regex: '(.*):8082'
|
||||||
replacement: '${1}'
|
replacement: '${1}'
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
|
{% if prometheus_pve_exporter_targets is defined %}
|
||||||
|
# proxmox #
|
||||||
|
- job_name: pve
|
||||||
|
scrape_interval: 30s
|
||||||
|
static_configs:
|
||||||
|
- targets:
|
||||||
|
{% for target in prometheus_pve_exporter_targets %}
|
||||||
|
- {{ target }}:9221
|
||||||
|
{% endfor %}
|
||||||
|
metrics_path: /pve
|
||||||
|
relabel_configs:
|
||||||
|
- source_labels: [ __address__ ]
|
||||||
|
target_label: instance
|
||||||
|
regex: '(.*):9221'
|
||||||
|
replacement: '${1}'
|
||||||
|
{% endif %}
|
||||||
|
11
templates/systemd/prometheus-proxmox-exporter.service.j2
Normal file
11
templates/systemd/prometheus-proxmox-exporter.service.j2
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Proxmox VE Prometheus Exporter
|
||||||
|
After=network.target
|
||||||
|
Wants=network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Restart=on-failure
|
||||||
|
ExecStart=/usr/local/bin/pve_exporter /etc/default/prometheus-pve-exporter {{ prometheus_proxmox_exporter_port | default('9221') }} {{ prometheus_proxmox_exporter_node }}
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
Loading…
x
Reference in New Issue
Block a user