02 创建集群
可以独立使用Proxmox VE,而不需要成为集群的一部分。但是为了真正充分利用Proxmox,集群支持许多更高级的特性,例如集中管理、高可用性(漂移)和实时迁移。当多个Proxmox节点位于同一个集群中时,可以通过任何成员节点登录到Proxmox GUI来管理和监视它们。在Proxmox中没有主从方案。所有节点通过共享相同的配置一起工作。 集群就是一组共享资源的Proxmox服务器或节点。一个Proxmox集群可以包含多达32个物理节点。如果网络延迟允许,节点数量可以更高。但是任何数量的节点超过32都可能导致集群内的不稳定情况。
在命名集群时,请记住,它最多可以是15个字符,并且一旦设置完成后,无法进行更改。
时间同步
apt install -y chrony不同的网络基础设施:
pve集群中有:
- 管理网络
- 集群网络(corosync通信,特点是通信量小,但是对时延要求较高)
- 业务网络(创建虚拟机时指定,条件不允许时,可以与管理网络公用)
如果启用ceph集群,ceph集群中有:
- 业务网络(条件不允许,可以与pve的业务网络共用)
- 集群网络(用于数据恢复、数据平衡,强烈建议使用独立的网络,最好是万兆)
创建集群有两种方式:
- ssh 终端
- Web 界面
默认为通过节点主机名解析的IP创建集群管理网络。

在新的版本当中,已经支持通过添加第二个网络作为备份网络。

[info]确保为集群通信选择的网络没有被用于任何高流量负载,比如(网络)存储或实时迁移。虽然集群网络本身生成的数据量很小,但它对延迟非常敏感。

创建集群最核心的就是集群同步服务corosync,corosync成功后会生成配置文件corosync.conf,,如果启动失败后需要手动修改配置文件。
# 创建集群
$ pvecm create pmc-cluster
##pvecm create pmc-cluster --link0 192.168.20.71
$ pvecm status
即将添加到集群的节点不能容纳任何来宾(guests)。在加入集群时,会覆盖/etc/pve中的所有现有配置,因为guest id可能会发生冲突。作为一种解决方案,创建 guest(vzdump)的备份,并在将节点添加到集群后将其恢复为不同的ID。
web 界面的方式
获取加入集群信息

在要加入集群的节点上

虽然,有的时候,不指定 Link 0 的地址,也能加入集群,但在多网络当中,建议还是指定一下较好。

命令行的方式
集群中添加节点
$ pvecm add 192.168.20.71 // 在 73 上,添加到 71 集群当中
$ pvecm status
当添加一个节点到一个单独的集群网络时,你需要使用link0参数设置该网络上的节点地址:
pvecm add IP-ADDRESS-CLUSTER -link0 LOCAL-IP-ADDRESS-LINK0
1、vm迁移
2、虚拟机HA
# 首先在待隔离节点上停止 pve-cluster 服务:
systemctl stop pve-cluster.service
systemctl stop corosync.service
#然后将待隔离节点的集群文件系统设置为本地模式:
pmxcfs -l
#接下来删除 corosync 配置文件:
rm /etc/pve/corosync.conf
rm -rf /etc/corosync/*
#最后重新启动集群文件系统服务:
killall pmxcfs
systemctl start pve-cluster.service