Proxmox
The Proxmox connection is configured in the proxmox.yaml
file. See Create token section below for details on how to generate the required API token.
Services
Once the Proxmox connection is configured, individual services can be configured to pull statistics of VMs or LXCs. Only CPU and Memory are currently supported.
Configuration Options
proxmoxNode
: The name of the Proxmox node where your VM/LXC is runningproxmoxVMID
: The ID of the Proxmox VM or LXC containerproxmoxType
: (Optional) The type of Proxmox virtual machine. Defaults toqemu
for VMs, but can be set tolxc
for LXC containers
Examples
For a QEMU VM (default):
- HomeAssistant:
icon: home-assistant.png
href: http://homeassistant.local/
description: Home automation
proxmoxNode: pve
proxmoxVMID: 101
# proxmoxType: qemu # This is the default, so it can be omitted
For an LXC container:
- Nginx:
icon: nginx.png
href: http://nginx.local/
description: Web server
proxmoxNode: pve
proxmoxVMID: 200
proxmoxType: lxc
Create token
You will need to generate an API Token for new or an existing user. Here is an example of how to do this for a new user.
- Navigate to the Proxmox portal, click on Datacenter
- Expand Permissions, click on Groups
- Click the Create button
- Name the group something informative, like api-ro-users
- Click on the Permissions "folder"
- Click Add -> Group Permission
- Path: /
- Group: group from bullet 4 above
- Role: PVEAuditor
- Propagate: Checked
- Expand Permissions, click on Users
- Click the Add button
- User name: something informative like
api
- Realm: Linux PAM standard authentication
- Group: group from bullet 4 above
- User name: something informative like
- Expand Permissions, click on API Tokens
- Click the Add button
- User: user from bullet 8 above
- Token ID: something informative like the application or purpose like
homepage
- Privilege Separation: Checked
- Go back to the "Permissions" menu
- Click Add -> API Token Permission
- Path: /
- API Token: select the Token ID created in Step 10
- Role: PVE Auditor
- Propagate: Checked