The Proxmox integration wraps Proxmox’s native vzdump tool to back up virtual machines and containers into a Kloset store. Plakar handles encryption, deduplication, and snapshot management on top of the archives that vzdump produces.
The integration provides two connectors:
| Connector type | Description |
|---|---|
| ✅ Source connector | Back up VMs and containers from a Proxmox node into a Kloset store. |
| ✅ Destination connector | Restore snapshots from a Kloset store back to a Proxmox node. |
Requirements
- Proxmox VE with
vzdumpavailable on the node. - SSH access to the Proxmox node with appropriate permissions (remote mode).
- Plakar v1.1.0-beta or later.
Typical use cases
- Encrypted, deduplicated backups of Proxmox VMs and containers.
- Cross-cluster VM migration and restore.
- Long-term archiving to object storage (S3, Scaleway, OVH, Exoscale).
- Centralized backup of multiple hypervisors from a single Plakar instance.
Installation
The Proxmox integration is distributed as a Plakar package. It can be installed either by downloading a pre-built package or by building it from source.
Plakar provides pre-compiled packages for common platforms. This is the simplest installation method and is suitable for most users.
Note: Installing pre-built packages requires authentication with Plakar. See Login to Plakar to unlock features.
Install the Proxmox package:
$ plakar pkg add proxmox
Verify the installation:
$ plakar pkg list
Building from source is useful if you cannot use pre-built packages.
Prerequisites
- A working Go toolchain compatible with your version of Plakar.
Build the Proxmox package:
$ plakar pkg build proxmox
On success, a package archive is generated in the current directory, for example proxmox_v1.1.0-rc.1_darwin_arm64.ptar.
Install the generated package:
$ plakar pkg add ./proxmox_v1.1.0-rc.1_darwin_arm64.ptar
Verify the installation:
$ plakar pkg list
To check whether the Proxmox package is already installed:
$ plakar pkg list
To upgrade to the latest available version, remove the existing package and reinstall it:
$ plakar pkg rm proxmox
$ plakar pkg add proxmox
This preserves existing source and destination configurations.
Operating modes
The Proxmox integration supports two operating modes.
Local mode — Plakar runs directly on the Proxmox node alongside vzdump:
Proxmox node
├ vzdump
└ plakar
Remote mode — Plakar runs on a separate machine and connects to the Proxmox node over SSH:
Backup server
│
│ SSH
▼
Proxmox node
└ vzdump
Remote mode allows a single Plakar instance to back up multiple hypervisors. The operating mode is set via the mode option when configuring a source or destination.
Source connector
The source connector invokes vzdump on the Proxmox node, collects the resulting archive, and ingests it into a Kloset store with encryption and deduplication.
SSH" } Transform@{ shape: rect, label: "Encrypt & deduplicate" } Connector --> Transform end Source --> Connector Store@{ shape: cyl, label: "Kloset Store" } Transform --> Store classDef sourceBox fill:#ffe4e6,stroke:#cad5e2,stroke-width:1px classDef brandBox fill:#524cff,color:#ffffff classDef storeBox fill:#dbeafe,stroke:#cad5e2,stroke-width:1px class Source sourceBox class Plakar brandBox class Store storeBox linkStyle default stroke-dasharray: 9,5,stroke-dashoffset: 900,animation: dash 25s linear infinite;
Configure
Register a Proxmox source:
$ plakar source add myProxmox proxmox+backup://10.0.0.10 \
mode=remote \
conn_username=root \
conn_identity_file=/path/to/key \
conn_method=identity
Back up workloads
Back up a single virtual machine by ID:
$ plakar backup -o vmid=101 @myProxmox
Back up all machines in a pool:
$ plakar backup -o pool=prod @myProxmox
Back up the entire hypervisor:
$ plakar backup -o all @myProxmox
Options
| Option | Required | Description |
|---|---|---|
location |
Yes | Proxmox node address. Format: proxmox+backup://<host> |
mode |
Yes | Operating mode. local or remote. |
conn_username |
Yes (remote) | SSH username on the Proxmox node. |
conn_identity_file |
No | Path to the SSH private key. Required when conn_method=identity. |
conn_method |
No | Authentication method. identity for key-based auth. |
Destination connector
The destination connector uploads a vzdump archive from a Plakar snapshot to a Proxmox node and restores it using native Proxmox tools: qmrestore for virtual machines and pct restore for containers.
SSH" } Transform --> Connector end Store --> Transform subgraph Destination[Proxmox Node] restore@{ shape: rect, label: "qmrestore / pct restore" } end Connector --> Destination classDef destinationBox fill:#d0fae5,stroke:#cad5e2,stroke-width:1px classDef brandBox fill:#524cff,color:#ffffff classDef storeBox fill:#dbeafe,stroke:#cad5e2,stroke-width:1px class Destination destinationBox class Plakar brandBox class Store storeBox linkStyle default stroke-dasharray: 9,5,stroke-dashoffset: 900,animation: dash 25s linear infinite;
Configure
Register a Proxmox destination:
$ plakar destination add myProxmox \
proxmox+backup://10.0.0.10 \
mode=remote \
conn_username=root \
conn_identity_file=/path/to/key \
conn_method=identity
Restore workloads
Restore all machines in a snapshot:
$ plakar restore -to @myProxmox <snapshot_id>
Restore a single VM from a snapshot containing multiple machines:
$ plakar restore -to @myProxmox <snapshot_id>:/backup/qemu/101_myvm
Options
| Option | Required | Description |
|---|---|---|
location |
Yes | Proxmox node address. Format: proxmox+backup://<host> |
mode |
Yes | Operating mode. local or remote. |
conn_username |
Yes (remote) | SSH username on the Proxmox node. |
conn_identity_file |
No | Path to the SSH private key. Required when conn_method=identity. |
conn_method |
No | Authentication method. identity for key-based auth. |
Limitations and scope
What is captured during backup
- Virtual machine and container disk images, as produced by
vzdump. - Proxmox configuration associated with each backed-up workload.
Snapshot consistency
Plakar relies on vzdump for snapshot consistency. For live machines, vzdump uses QEMU guest agent or suspend-resume to produce a consistent backup. Refer to the Proxmox vzdump documentation for details on consistency modes.
See also
Found a bug or mistake in the documentation? Create an issue on GitHub