-
[Plugin] Nvidia-SMI Exporter
SummaryA Prometheus exporter for NVIDIA GPU metrics via nvidia-smi. Compatible with all GPU architectures (Turing, Ampere, Ada Lovelace, Blackwell) and all driver versions, including driver 595+ which deprecated several fields across all architectures. This is also available as a docker container if that's more your speed. Why does it exist?The original exporter (and its forks) fail on driver 595+. Starting with driver 595, NVIDIA changed several nvidia-smi -q -x fields from N/A to the string "Requested functionality has been deprecated" — on all GPU architectures, not just Blackwell. The original filterNumber() function strips non-numeric characters from this string, producing an empty string, which is then emitted as a Prometheus metric value — invalid text exposition format that causes the entire scrape to fail silently, dropping all metrics for that interval. This rewrite fixes that at the structural level: every value passes through a safe filter that always returns a valid numeric string or "0", and writeMetric refuses to emit any line with an empty value. PrerequisitesInstall the Nvidia-Driver plugin from Community Applications first. This plugin installs nvidia-smi at /usr/bin/nvidia-smi on the Unraid host. The plugin will abort installation with a clear error message if /usr/bin/nvidia-smi is not found. Install via Community ApplicationsSearch for "Nvidia-SMI Exporter" in the Community Applications store, or add the plugin URL directly in the Unraid Plugins tab: https://github.com/ccmpbll/nvidia-smi-exporter/raw/main/unraid/nvidia-smi-exporter.plg ConfigurationAfter installation, navigate to Settings → Nvidia-SMI Exporter to: Start / stop / restart the exporter Configure the listen port (default: 9202) View current GPU information Grafana DashboardA pre-built Grafana dashboard is available here: https://github.com/ccmpbll/nvidia-smi-exporter/blob/main/grafana/dashboard.json GitHub RepoMore information about this project and the metrics collected can be found here: https://github.com/ccmpbll/nvidia-smi-exporter CreditsThis project is derived from three MIT-licensed upstream projects: kristophjunge/docker-prometheus-nvidiasmi — original exporter e7d/docker-prometheus-nvidiasmi — fork adding gpu_power_readings support ich777/unraid-prometheus_nvidia_smi_exporter — Unraid plugin packaging FeedbackPlease feel free to give constructive feedback. I'm very open to suggestions or recommendations.
-
ccmpbll started following Docker Container VPN Network Support
-
Dynamix WireGuard VPN
Oh man, I completely missed that! Now to see if I can get my docker traffic forced across the wireguard interface.
-
Dynamix WireGuard VPN
Yes, I am aware of this, but none of the available peer access types seemed to fit what I was looking for. However, I just compared the config I built myself with the one that was built with the plugin using the "vpn tunneled access" type. Nothing major seems to be different, so I'm going with that. Thanks for your help and for the plugin!
-
Dynamix WireGuard VPN
Is there any chance of getting a client mode for this plugin? I've been using wireguard for a while now, but my "server" is hosted elsewhere and I'd just like to have my unraid server connect to that. Thanks!
-
ccmpbll changed their profile photo
-
(SOLVED) iGPU transcoding: i915 driver present but /dev/dri not available
Just upgraded to a Coffee Lake i5-8400 and had this same problem. This post solved it for me. Thanks ack389!
-
[SOLVED] Added unRAID Share to VM/ Ubuntu can't start Network
Hey guys, I had this same issue tonight when building an Ubuntu 16.04.01 Server VM. OS is installed fine and all seems well until I added my Unraid shares and rebooted. Suddenly, no network. Was seeing "Device not found" messages when trying to start the networking service. I did some digging and noticed that my nic used to be labeled enp2s2. After the shares were added and rebooted, I ran ip link only to find my nic is now labled enp2s6. After looking at the XML, I think it makes sense why. Below is a bit of the XML for this VM, AFTER I added the shares. Seems like the shares take precedence in the config file somehow and push the nic down to another slot. slot='0x06' in the config file apparently corresponds to enp2s6 nic label. To solve the problem, I was able to change the nic label in the /etc/network/interfaces config file and reboot. All is well again. Hopefully, that makes sense and it helps someone else. <filesystem type='mount' accessmode='passthrough'> <source dir='/mnt/user/media/Movies/'/> <target dir='Movies'/> <alias name='fs0'/> <address type='pci' domain='0x0000' bus='0x02' slot='0x01' function='0x0'/> </filesystem> <filesystem type='mount' accessmode='passthrough'> <source dir='/mnt/user/media/TV/'/> <target dir='TV'/> <alias name='fs1'/> <address type='pci' domain='0x0000' bus='0x02' slot='0x02' function='0x0'/> </filesystem> <filesystem type='mount' accessmode='passthrough'> <source dir='/mnt/user/media/Kid Movies/'/> <target dir='KidMovies'/> <alias name='fs2'/> <address type='pci' domain='0x0000' bus='0x02' slot='0x03' function='0x0'/> </filesystem> <filesystem type='mount' accessmode='passthrough'> <source dir='/mnt/user/media/Kid TV/'/> <target dir='KidTV'/> <alias name='fs3'/> <address type='pci' domain='0x0000' bus='0x02' slot='0x04' function='0x0'/> </filesystem> <filesystem type='mount' accessmode='passthrough'> <source dir='/mnt/user/media/Music/'/> <target dir='Music'/> <alias name='fs4'/> <address type='pci' domain='0x0000' bus='0x02' slot='0x05' function='0x0'/> </filesystem> <interface type='bridge'> <mac address='52:54:00:c7:28:ff'/> <source bridge='br0'/> <target dev='vnet0'/> <model type='virtio'/> <alias name='net0'/> <address type='pci' domain='0x0000' bus='0x02' slot='0x06' function='0x0'/> </interface>