# 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: ```bash sudo dnf install -y qemu-guest-agent sudo systemctl enable --now qemu-guest-agent ``` Then enable the QEMU Guest Agent in Proxmox: ``` qm set --agent enabled=1 ``` --- # Installation Clone the repository and configure the environment file: ``` cd /optgit clone https://gitea.mooij.me/meteo/proxmox-to-sentri.gitcd proxmox-to-sentricp .env-sample .envchmod 600 .envchmod 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.