Joining a cluster with already created guests VM

I have a work-around that *might* work for you, but has not been thoroughly tested.
There is a firm requirement however that there must not be any conflicts with the guest ID, or the node name.

On node1 (with guests)
Create a new cluster or get join information.

On node2 (with guests)
scp -r /etc/pve/nodes/* to node1:/etc/pve/nodes
rm -r /etc/pve/nodes/*
Join cluster.

Please realize there is potential for things to go sideways!
I've done this to re-assemble a cluster I've recently had to pick apart, and can't provide any details on long-term issues or risk.
I cannot suggest this work-around at the moment for nodes that have never been in a cluster with each other.
I've done this with online VMs! and they remain operational through the process. The join cluster process will overwrite the contents of /etc/pve/nodes with copies from the cluster... so copying your new node directory to the cluster with scp will indirectly restore it on cluster join.

Good luck.
Thanks, it worked just fine!
I also backed up storage.cfg on joining node and appended the contents to the cluster storage.cfg.
 
  • Like
Reactions: ThreadCrux
Golden solution

If there are conflicting ID's you can temporarily rename files in /etc/pve/nodes/<node-name>/qemu-server/[ID].conf

Coming from ESXI this limitation is a bit strange. There are many many use cases where a user would need to join a node with existing guests. Also like another user said, in a sane world pve would be tracking these with GUIDs in the background and the VM ID number would be user facing only
 
Last edited:
Hi folks,

I tried the SCP way like above up comments said it but didn't work me. so I tried this on my own and it worked for me!

on the new node take a backup of /etc/pve/nodes/YOURNEWNODENAME/qemu-server and delete all the files in it and try to join the server once done restore the file to original location, it worked for me!

1. NewNode: cp -rpf /etc/pve/nodes/YOURNEWNODENAME/qemu-server /root/
2. NewNode: rm -rf /etc/pve/nodes/YOURNEWNODENAME/qemu-server/*
3. OldNode: get the "Join Information" from your main
4. NewNode: click on "Join Cluster" and add the info copied earlier and join the cluster
5. NewNode: cp -rpf /root/qemu-server /etc/pve/nodes/YOURNEWNODENAME/

and you are done! just Make sure you have no conflicting VM / LXC IDs.

Good Luck!
 
Last edited:

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!