Step 1 : Migrate all VMs to another active node
Migrate all VMs to another active node. You can use the live migration feature if you have a shared storage or offline migration if you only have local storage.
Step 2 : Display all active nodes
Display all active nodes in order identify the name of the node you want to remove
root@proxmox-node2:~# pvecm nodes
Membership information
----------------------
Nodeid Votes Name
1 1 proxmox-node1 (local)
2 1 proxmox-node2
3 1 proxmox-node3
4 1 proxmox-node4
Step 3: Shutdown (permanently) the node that you want to remove
Please be carefull, it a permanently remove !!!
- Never restart the removed node
- Don't assign the local ip address of the removed node to a new node
- Never assign the name of the removed node to a new node
Step 4 : Remove the node from the proxmox cluster
Connect to an active node, for example proxmox-node2.
root@proxmox:~# pvecm delnode NodeName
For Example :
root@proxmox-node2:~# pvecm delnode proxmox-node3
Step 5 : Remove the removed node from the proxmox GUI
Log in to an active node, for example proxmox-node2.
root@proxmox-node2:~# ls -l /etc/pve/nodes/
proxmox-node1 proxmox-node2 proxmox-node3 proxmox-node4
All nodes have is own directory (VM’s inventory, for example), the directory /etc/pve/nodes/ is synced between all cluster nodes.
The removed node is still visible in GUI until the node directory exists in the directory /etc/pve/nodes/.
If you want to remove from Proxmox GUI the node previously deleted , you just need to delete the directory /etc/pve/nodes/NodeName.
root@proxmox-node2:~# mv /etc/pve/nodes/NodeName /root/NodeName
Don't do this unless you understand each step of the process and don't mind putting the node in state where you won't easily be able to re-add it back to a cluster. Also note that after I did this, the containers on the node do not start up automatically, even though their config file says they are supposed to.
https://sysadmin-community.com/remove-node-from-cluster-proxmox/#Step_1_Migrate_all_VMs_to_another_active_node