Files
proxmox-to-sentri/README.md
2026-05-17 21:06:17 +02:00

1.9 KiB

Proxmox to Sentri

Proxmox to Sentri is a utility script that retrieves all virtual machines from a Proxmox cluster and imports them into Sentri as servers.

The script collects information such as:

  • VM name
  • Power state
  • CPU and memory allocation
  • Disk configuration
  • IPv4 and IPv6 addresses
  • Snapshot count
  • Backup availability
  • Operating system information
  • VM descriptions/notes

Requirements

System Requirements

The machine running this script must:

  • Have network access to the Proxmox web interface/API
  • Have the following packages installed:
    • curl
    • jq
    • git (required for installation)

Proxmox Requirements

A Proxmox user account with permission to view VMs and storage information is required.

Recommended role:

  • PVEAuditor

Optional: Guest IP Address Collection

To collect IPv4, IPv6, and operating system information from virtual machines, install the QEMU Guest Agent inside each VM.

Example for AlmaLinux/RHEL:

sudo dnf install -y qemu-guest-agent
sudo systemctl enable --now qemu-guest-agent

Then enable the QEMU Guest Agent in Proxmox:

qm set <VMID> --agent enabled=1

Installation

Clone the repository and configure the environment file:

cd /opt
git clone https://gitea.mooij.me/meteo/proxmox-to-sentri.git
cd proxmox-to-sentri
cp .env-sample .env
chmod 600 .env
chmod 740 proxmox-to-sentri.sh

Optional: Create a global command:

ln -sf /opt/proxmox-to-sentri/proxmox-to-sentri.sh /usr/bin/proxmox-to-sentri

Configuration

Edit the .env file and configure the Proxmox connection settings:

PM_HOST="https://proxmox.example.com:8006"
PM_USER="root@pam"
PM_PASS="your-password"

Running the Script

Run the script directly:

./proxmox-to-sentri.sh

Or, if you created the symlink:

proxmox-to-sentri

Output

Generated JSON files are written to:

/opt/proxmox-to-sentri/output/

One JSON file is generated per VM.