add grafana dashboards

This commit is contained in:
2026-05-19 21:12:54 -05:00
parent 0dae8327eb
commit f4c60d7560
3 changed files with 151 additions and 12 deletions

View File

@@ -0,0 +1,80 @@
---
# ------------------------------------------------------------------------------
# FILE: ansible/playbooks/day2_install_node_exporter.yml
# DESCRIPTION: Install and configure Prometheus Node Exporter on Linux hosts.
#
# Targets two groups with different firewall managers:
# - proxmox_nodes : Proxmox hypervisors (Debian, firewalld not present,
# uses iptables/no firewall — just open the port via UFW
# if present, otherwise skip)
# - monitored_vms : Ubuntu VMs managed by UFW
#
# After installing on new hosts, re-runs day1_deploy_monitoring.yml to refresh
# the Prometheus scrape config is NOT needed — targets are already statically
# defined in prometheus.yaml.j2 for the Proxmox nodes. For new VMs, add the
# IP to the prometheus.yaml.j2 proxmox-vms job and re-run day1_deploy_monitoring.yml.
#
# Usage:
# ansible-playbook -i inventory.yml playbooks/day2_install_node_exporter.yml
# ansible-playbook -i inventory.yml playbooks/day2_install_node_exporter.yml --limit proxmox_nodes
# ansible-playbook -i inventory.yml playbooks/day2_install_node_exporter.yml --limit monitored_vms
# ------------------------------------------------------------------------------
# ── Play 1: Proxmox hypervisors ───────────────────────────────────────────────
# Proxmox runs Debian. The prometheus.prometheus.node_exporter role installs
# a binary + systemd service without touching apt, which is what we want on
# hypervisors (keep the package footprint clean).
# Note: Proxmox does not run UFW. Port 9100 is open by default on VLAN 71.
- name: Install Node Exporter on Proxmox hypervisors
hosts: proxmox_nodes
become: true
vars:
node_exporter_version: "1.9.1"
node_exporter_web_listen_address: "0.0.0.0:9100"
node_exporter_enabled_collectors:
- systemd
- processes
- filesystem
- meminfo
- cpu
- diskstats
- netdev
- loadavg
- uname
roles:
- role: prometheus.prometheus.node_exporter
# ── Play 2: Ubuntu VMs ────────────────────────────────────────────────────────
# Standard Ubuntu hosts with UFW. Same role, adds UFW allow rule for 9100.
- name: Install Node Exporter on monitored VMs
hosts: monitored_vms
become: true
vars:
node_exporter_version: "1.9.1"
node_exporter_web_listen_address: "0.0.0.0:9100"
node_exporter_enabled_collectors:
- systemd
- processes
- filesystem
- meminfo
- cpu
- diskstats
- netdev
- loadavg
- uname
pre_tasks:
- name: Open Node Exporter port in UFW
community.general.ufw:
rule: allow
port: "9100"
proto: tcp
comment: "Prometheus Node Exporter"
roles:
- role: prometheus.prometheus.node_exporter