A Prometheus exporter that provides detailed metrics from OpenStack Nova instances using libvirt. Monitor your virtual machines with comprehensive metrics about CPU, memory, network, disk, and PCI device information.
- Complete Nova instance metadata export
- Detailed CPU topology and usage metrics
- Memory allocation and balloon device tracking
- Network interface and IP configuration monitoring
- Storage and disk performance metrics
- PCI device mapping and passthrough monitoring
- Graphics and console configuration tracking
- System and OS information collection
docker run -d \
--name nova-libvirt-exporter \
-p 9179:9179 \
-v /var/run/libvirt/libvirt-sock:/var/run/libvirt/libvirt-sock \
--privileged \
sarabando/nova-libvirt-exporter
version: '3'
services:
exporter:
image: sarabando/nova-libvirt-exporter
ports:
- "9179:9179"
volumes:
- /var/run/libvirt/libvirt-sock:/var/run/libvirt/libvirt-sock
privileged: true
Add to your prometheus.yml
:
scrape_configs:
- job_name: 'nova-libvirt'
static_configs:
- targets: ['localhost:9179']
nova_instance_metadata
- Basic instance informationnova_flavor_metadata
- Instance flavor detailsnova_owner_metadata
- Instance ownership information
nova_instance_memory_kib
- Memory allocationnova_instance_vcpus
- vCPU allocationnova_instance_cpu_shares
- CPU share allocationnova_instance_cpu_topology
- CPU topology details
nova_instance_network
- Network interface configurationnova_instance_disk
- Disk configurationnova_instance_pci_device
- PCI device mappingnova_instance_graphics
- Graphics configurationnova_instance_memballoon
- Memory balloon device information
nova_instance_sysinfo
- System informationnova_instance_os
- Operating system detailsnova_instance_features
- Enabled featuresnova_instance_console
- Console configuration
- Python 3.8+
- libvirt-dev
- pkg-config
# Install dependencies
pip install -r requirements.txt
# Install package
pip install -e .
# Run exporter
nova-libvirt-exporter
docker build -t sarabando/nova-libvirt-exporter .
This project is licensed under the MIT License - see the LICENSE file for details.
Contributions are welcome! Please feel free to submit a Pull Request.