As an engineer, I LOVE looking at DATA! So today, I’m setting up my Proxmox system to push data to InfluxDB, where I can view it using Grafana. With this setup, I can keep track of how many resources all of my homelab services are using, which really helps when trying to size VMs, hosts, containers, etc.

Contents

Video

Thumbnail

Install InfluxDB 2.0

See here for the basic instructions and updated download links. We don’t have sudo, so here’s a rewriting of it without sudo:

# We need a few things for this
apt install gpg apt-transport-https -y

# Load GPG fingerprint and debian repo from Influx
# influxdata-archive_compat.key GPG fingerprint:
#     9D53 9D90 D332 8DC7 D6C8 D3B9 D8FF 8E1F 7DF8 B07E
wget -q https://repos.influxdata.com/influxdata-archive_compat.key
#Verify integrity of key download
echo '393e8779c89ac8d958f81f942f9ad7fb82a25e133faddaf92e15b16e6ac9ce4c influxdata-archive_compat.key' | sha256sum -c
#Dearmor key into trusted.gpg.d
cat influxdata-archive_compat.key | gpg --dearmor > /etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg
#Add repo to influxdata.list
echo 'deb [signed-by=/etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg] https://repos.influxdata.com/debian stable main' > /etc/apt/sources.list.d/influxdata.list

#Actually apt update and install (or update)
apt update && apt install influxdb2 -y

#Start the servyce
systemctl enable --now influxdb

If you want to check it, run systemctl status influxdb.

Now login to the host at port 8086 and initialize, setting the admin password here

Install Grafana

See Here for the basic instructions from Grafana

#Install the signing key
wget -q -O /usr/share/keyrings/grafana.key https://apt.grafana.com/gpg.key

#Add repository to grafana.list
echo "deb [signed-by=/usr/share/keyrings/grafana.key] https://apt.grafana.com stable main" > /etc/apt/sources.list.d/grafana.list

#apt update and install (or update)
apt update && apt install grafana -y

#Start the server
systemctl enable --now grafana-server

Now login at port 3000 with admin/admin and change the password

Example Dashboard

I used this dashboard for my example, but I’d love to see any customizations or dashboards you make!

Using TLS

Since it’s a good idea to use TLS certificates but both InfluxDB and Grafana don’t automatically configure it and don’t generate self-signed certificates, it’s a bit of .. fun to get that setup. Here’s the guides from both Influx and Grafana on setting up their software with TLS certificates: