Skip to content

lingfish/proxmox-info

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

proxmox-info

PyPI - Version PyPI - Python Version License: GPL v3

A CLI utility to return various info from the Proxmox API.

Currently, it only reports storage vs machines info.

Table of contents

Features

  • Per-datastore VM/container listing — see which QEMU VMs and LXC containers live on each storage volume
  • Two output modes — clean table view or hierarchical tree view
  • Multiple node support — aggregates across all Proxmox nodes in your cluster
  • Status filtering — show only running machines, stopped machines, or all
  • Human-readable output — automatic formatting of sizes and uptimes via --human
  • Pager support — pipe through your system pager with --pager
  • Config file or CLI args — YAML config with Dynaconf, or override everything on the command line

Purpose and uses

Ever needed to get a list of VMs or containers per datastore?

Why? Perhaps you need to shutdown that storage for maintenance, upgrades etc., and need to move all running machines off it (a la vSphere storage vMotion).

Then this is the tool for you.

Screenshots

Default table view — VMs and containers listed per datastore with status, CPU, memory, disk, and network columns:

Default table view showing VMs grouped by storage

Tree view — hierarchical display of node > storage > machine type > machine details:

Tree view showing node hierarchy

Installation

The recommended way to install proxmox-info is to use pipx.

After getting pipx installed, simply run:

username@proxmox:~$ pipx install proxmox-info

Please don't use pip system-wide.

You can of course also install it using classic virtualenvs.

Configuration

Overview

proxmox-info is configured with a YAML-style file. An example:

host: zzz
user: zap
password: some_password

Location

The default location for the configuration is /etc/proxmox_info.yml, or proxmox_info.yml in the current working directory, but this can also be specified on the commandline.

If a non-absolute path is given, Dynaconf will iterate upwards: it will look at each parent up to the root of the system. For each visited folder, it will also try looking inside a /config folder.

Supported versions

proxmox-info supports the following VE versions:

VE version Debian version Python version VE EoL
8 12 (Bookworm) 3.11 TBA
7 11 (Bullseye) 3.9 2024-07

About

List VMs and LXC containers per Proxmox VE datastore. CLI tool for storage maintenance planning — see which machines live on each storage volume before taking it offline.

Topics

Resources

License

Stars

0 stars

Watchers

1 watching

Forks

Contributors

Languages