Skip to content

Restoring Linux VMs in Proxmox with JovianDSS Backups

andrei perepiolkin edited this page May 31, 2026 · 4 revisions

JovianDSS provides a volume-backup feature.

This guide describes how to use it with the JovianDSS Proxmox plugin. In our example, we'll assume a cluster of two JovianDSS nodes plus a single backup node.

Important: Proxmox VE's built-in backup functionality does not back up snapshots created with the JovianDSS plugin. Only the base volume data is included in Proxmox backups. For complete data protection including snapshots, use JovianDSS's native backup features as described in this guide.

This configuration builds on the setup introduced in the Networking article.

Environment

  1. Net1 172.28.0.0/16 Management/Internet connection
  2. Net2 172.29.0.0/16 Data network
  3. Net2 172.30.0.0/16 Data network

backup-3-nodes-1

JovianDSS

Two JovianDSS storage nodes with Failover enabled, and Pool-2 has three virtual IP addresses assigned:

  • VIP0 192.168.28.102 associated with physical interfaces connected to Net1 172.28.0.0/16
  • VIP1 192.168.29.102 associated with physical interfaces connected to Net2 172.29.0.0/16
  • VIP2 192.168.30.102 associated with physical interfaces connected to Net3 172.30.0.0/16

vips-3-pool2-2

Single JovianDSS backup node with Pool-1-backup has three virtual IP addresses assigned:

  • VIP0 192.168.28.101 associated with physical interfaces connected to Net1 172.28.0.0/16
  • VIP1 192.168.29.101 associated with physical interfaces connected to Net2 172.29.0.0/16
  • VIP2 192.168.30.101 associated with physical interfaces connected to Net3 172.30.0.0/16

vips-3-pool-1-backup

Proxmox

A three-node Proxmox VE cluster in which each node has three network interfaces connected to physical networks:

  • vmbr0 connected to Net1 associated with virtual bridge vmbr0 with ip 172.28.143.11/16
  • ens224 connected to Net2 associated with interface ens224 with ip 172.29.143.11/16
  • ens256 connected to Net3 associated with interface ens256 with ip 172.30.143.11/16

Proxmox storage config file storage.cfg:

joviandss: jdss-Pool-2
        pool_name Pool-2
        target_prefix iqn.2025-06.proxmox.pool-2
        content rootdir,images
        control_addresses 192.168.28.102
        control_port 82
        data_addresses 192.168.29.102,192.168.30.102
        luns_per_target 8
        multipath 1
        path /mnt/pve/jdss-Pool-2
        shared 1
        ssl_cert_verify 0
        thin_provisioning 1
        user_name admin
        user_password admin
        log_file /var/log/joviandss/jdss-Pool-2.log
        disable 0

joviandss: jdss-Pool-1-backup
        pool_name Pool-1-backup
        target_prefix iqn.2025-06.proxmox.pool-1-backup
        user_name admin
        user_password admin
        path /mnt/pve/jdss-Pool-1-backup
        content images,rootdir
        ssl_cert_verify 0
        control_addresses 192.168.28.101
        data_addresses 192.168.29.101,192.168.30.101
        log_file /var/log/joviandss/jdss-Pool-1-backup.log
        shared 1

On one of the node1 hosts, run VM 100, which uses the disk vm-100-disk-0 residing on the JovianDSS pool Pool-2.

debian-100

Backup setup

To start a backup task to Pool-1-backup, create a dedicated volume to store the backups. In this example, that volume is named backup-vm-100-disk-0.

Create backup destination

Designate the volume backup-vm-100-disk-0 as the backup destination.

set-backup-destination

A volume configured as the backup destination appears as follows:

set-backup-destination-done

Enable backup task

Add a backup task for the volume v_vm-100-disk-0 on Pool-2.

add-back-up-task

add-back-up-task-1 add-back-up-task-2 add-back-up-task-3

The volume with the configured backup task should look like: add-back-up-task-done-front

The destination volume appears as follows: add-back-up-task-done-back

For a more detailed guide on JovianDSS backup setup and configuration, please refer to the: Round the clock backup of everything with On- & Off-site Data Protection

Recovery

In case of major hardware failure that resulted in loss or temporal inability for JovianDSS nodes hosting Pool-2 to operate user can recover latest state of vm-100-disk-0 from backup stored in backup-vm-100-disk-0 located on the Pool-1-backup.

In the event of a major hardware failure that causes the JovianDSS nodes hosting Pool-2 to become unavailable or lose data, you can recover the latest state of vm-100-disk-0 from the backup volume backup-vm-100-disk-0 on Pool-1-backup.

Disable affected storage pool

backup-snapshots

In the event that both nodes hosting Pool-2 become inoperable due to a major malfunction, disable the jdss-Pool-2 storage pool to prevent further error messages. To do this set the disable flag for Pool-2 to 1. Shut down the VMs with volumes related to it.

pool-2-failure

Detach the disk associated with Pool-2 from the VM debian-linux.

datach-disk-from-vm

Cloning

Create a clone from the desired snapshot, assigning it a name that includes the next available index:

backup-clone-redone

Config any additional parameters you deem necessary.

backup-clone-2

Name the clone using naming conventions compliant with both the plugin and Proxmox standards:

v_vm-100-disk-1

Here, the v_ prefix indicates that the volume is managed by the JovianDSS Proxmox plugin, and vm-100-disk-1 is the name displayed in the Proxmox VE cluster.

backup-clone-3

Restoring VM on new storage

Attach the clone created in the previous step to the VM:

root@node1:# qm set 100 --sata0 jdss-Pool-1-backup:vm-100-disk-1
update VM 100: -sata0 jdss-Pool-1-backup:vm-100-disk-1

backup-attached-re

Once the clone is attached, you can replicate the VM to a more suitable storage target. For instance, you could clone it to local Proxmox VE storage or to a newly created JovianDSS pool - such as Pool-0.

vm-restore-101

Alternatively, if you successfully restore the Pool-2 storage pool, ...

vm-restore-102-pool-2

If necessary, mark the attached disk as bootable under VM Options → Boot Order.

boot-order

Clean up

Once you’ve finished cloning the original VM from its backup-volume clone, delete the clone.

clean-broken-vm

This operation deletes the clone volume created from a snapshot of backup-vm-100-disk-0 without affecting the original snapshot. The backup destination volume remains intact for future use.

Clone this wiki locally