Cloning issue

ojacz

New Member
Mar 3, 2024
2
0
1
Hello, I’m having an issue with cloning a template from one node to another. I have a cluster set up and a shared disk added (I’ve tried SMB, NFS, iSCSI), and the templates are stored on it. However, when I try to clone them to the other node, I cannot select a disk from that node—only the shared disk. If you can help me, I would be happy.Snímek obrazovky 2026-01-11 172030.png
 
My storage.cfg:
dir: local
path /var/lib/vz
content vztmpl,iso,import,backup
shared 0

zfspool: local-zfs
pool rpool/data
content images,rootdir
sparse 1

nfs: image
export /mnt/backup/VPS/images
path /mnt/pve/image
server 10.1.1.2
content iso,rootdir,import,images
prune-backups keep-all=1

And yes, it is allowed. (I changed the name and type of the horizontally shared storage from what was in the first message.)
 
This is a PVE clone restriction. Here is an example of cloning a Template VM located on shared storage and hosted on pve-2.

Clone to PVE-2 local storage:
root@pve-2:~# qm clone 9001 10001 --full --name bbtest1 --storage optane-lvm
create full clone of drive scsi0 (bb-nvme:base-9001-disk-0)

Clone to PVE-1 local storage:
root@pve-2:~# qm clone 9001 10002 --full --name bbtest2 --storage optane-lvm --target pve-1
can't clone to non-shared storage 'optane-lvm'

If the Template is located on shared storage, you can move the template quickly to the target node and then clone to local storage there.


Blockbridge : Ultra low latency all-NVME shared storage for Proxmox - https://www.blockbridge.com/proxmox
 
The limitation is somewhat similar to the one described in this thread https://forum.proxmox.com/threads/p...hout-shared-storage.179176/page-2#post-832785. That one was just recently addressed.
Here, the code checks whether "target node" is specified and then checks whether the storage is present. It does not have a fall back to a full copy if the specified storage is not shared:
/usr/share/perl5/PVE/API2/Qemu.pm
Code:
if ($target) {
                    # check if storage is available on target node
                    PVE::Storage::storage_check_enabled($storecfg, $storage, $target);
                    # clone only works if target storage is shared
                    die "can't clone to non-shared storage '$storage'\n"
                        if !$scfg->{shared};
                }



Blockbridge : Ultra low latency all-NVME shared storage for Proxmox - https://www.blockbridge.com/proxmox