ljzsdut
GitHubToggle Dark/Light/Auto modeToggle Dark/Light/Auto modeToggle Dark/Light/Auto modeBack to homepage

07 集群管理

一、删除集群节点

操作前提

从带删除节点移除(迁移)所有虚拟机,并确保您没有要保留的本地数据或备份(或对其做相应地保存)。

从集群中删除节点hp4

1、登录除hp4之外的其他节点,进行查看节点信息

hp1# pvecm nodes

Membership information
~~~~~~~~~~~~~~~~~~~~~~
    Nodeid      Votes Name
         1          1 hp1 (local)
         2          1 hp2
         3          1 hp3
         4          1 hp4

2、必须关闭hp4的电源,并确保它不会在此现有的集群网络中再次原样打开。如果按原样打开节点电源,则群集将被破坏,可能很难恢复干净的群集状态。

3、关闭节点hp4的电源后,我们可以安全地将其从集群中删除。

 hp1# pvecm delnode hp4
 Killing node 4

4、使用pvecm nodespvecm status再次检查节点列表。它看起来应该像这样:

hp1# pvecm status

Quorum information
~~~~~~~~~~~~~~~~~~
Date:             Mon Apr 20 12:44:28 2015
Quorum provider:  corosync_votequorum
Nodes:            3
Node ID:          0x00000001
Ring ID:          1/8
Quorate:          Yes

Votequorum information
~~~~~~~~~~~~~~~~~~~~~~
Expected votes:   3
Highest expected: 3
Total votes:      3
Quorum:           2
Flags:            Quorate

Membership information
~~~~~~~~~~~~~~~~~~~~~~
    Nodeid      Votes Name
0x00000001          1 192.168.15.90 (local)
0x00000002          1 192.168.15.91
0x00000003          1 192.168.15.92

重新添加该服务器到集群中

如果出于某种原因希望该服务器再次加入同一群集,则必须:从头开始在上面重新安装Proxmox VE,然后再加入它(加入方法同集群创建时一样)。

删除节点后,其SSH指纹仍将驻留在其他节点的known_hosts中。如果在重新加入具有相同IP(或主机名)的节点后收到SSH错误,请在重新添加的节点上运行一次pvecm updatecerts以更新其整个指纹群集。

二、分离集群节点为独立节点

1、删除被分离节点(hp4)上的共享存储

您还可以从群集中分离节点,而无需从头开始重新安装PVE。但是,从群集中删除节点后,它仍然可以访问共享存储!在开始从群集中删除节点之前,必须先解决此问题。 Proxmox VE群集无法与另一个群集共享完全相同的存储,因为存储锁定无法在群集边界上进行。此外,它还可能导致VMID冲突。

如果被分离的节点上需要使用存储来存放虚拟机文件,建议为该节点创建一个其自己使用的新存储,设置此存储后,将所有数据从节点及其虚拟机移至该节点。然后,您就可以将节点与集群分离了。

2、停止节点上的corosync和pve-cluster服务

#hp4
systemctl stop pve-cluster
systemctl stop corosync

3、在本地模式下再次启动集群文件系统:

#hp4
pmxcfs -l

4、删除corosync配置文件:

#hp4
rm /etc/pve/corosync.conf
rm -r /etc/corosync/*

5、现在,您可以再次以正常服务方式启动文件系统:

#hp4
killall pmxcfs    # 终止上面执行的 pmxcfs -l
systemctl start pve-cluster

6、现在,该节点已从群集中分离出来。您可以使用以下方法将其从群集的其余节点中删除:

#hp1 注意不是hp4节点
pvecm delnode oldnode

如果该命令失败,则由于退出当前分离的节点时群集中的其余节点失去了仲裁,您可以将期望的票数设置为1作为解决方法:pvecm expected 1,然后重复pvecm delnode oldnode命令。

7、现在切换回被分离的节点,删除旧集群中剩余的所有剩余文件。这样可以确保将节点再次添加到另一个群集中而不会出现问题

#hp4
rm /var/lib/corosync/*

8、由于其他节点的配置文件仍位于群集文件系统中,因此您可能也需要清理这些文件。从/etc/pve/nodes/hp4中仅删除整个目录的递归,但是在删除之前,请检查三遍是否使用了正确的目录。

#hp1 注意不是hp4节点
rm -rf /etc/pve/nodes/hp4