多台主机构建PVE高可用超融合HA集群

以下内容给出 “3 节点起步、可扩展至 10+ 节点” 的 PVE 高可用(HA)集群完整路线图。核心思路:先做好“网络+存储+仲裁”三大件,再谈 HA 迁移;任何一步出错,脑裂、数据损坏、VM 起不来都在后面排队。

20260113210822_165_2.png

一、硬件与拓扑先定死

角色

最低数量

关键要求

计算节点

3

同代 CPU、双电源、双 10 GbE(RJ45 也行)、IPMI/iDRAC

共享存储

1 套

推荐 Ceph(3 副本),NFS/iSCSI 也行但必须做双控/双活

仲裁网络

1 套

至少 1 GbE 独立交换机,最好 10 GbE,延迟 <1 ms

Fencing 设备

1 套

IPMI、UPS、智能 PDU 三选一,必须“真·断电”能力

少于 3 节点也能建集群,但无法形成 quorum,HA 形同虚设。


二、Day-0:系统级预配置(所有节点)

  1. 装同版本 PVE(8.4/9.x 均可),关闭企业订阅弹窗,换国内源。

  2. 写死 /etc/hosts,3 节点互相能解析短主机名 。

  3. NTP/Chrony 统一,误差 >1 s 会导致 Ceph 性能雪崩。

  4. 网卡规划(示例)

    • eno1 → vmbr0(管理+集群通信 10.1.10.0/24)

    • eno2 → vmbr1(Ceph 公网 10.1.20.0/24)

    • eno3+eno4 → bond1 → vmbr2(VM 流量 10.1.30.0/24,VLAN 终结)
      交换机侧配 802.3ad LACP,务必验证带宽聚合生效iperf3 -P 4


三、Day-1:创建集群(3 分钟搞定)

1. 在 node01 执行

pvecm create pve-ha --ring0_addr 10.1.10.1 --bindnet0_addr 10.1.10.0

2. node02/03 依次

pvecm add 10.1.10.1 --ring0_addr 10.1.10.X

3. 验证

pvecm status      # 看到 Quorate: Yes
pvecm nodes       # 三台 online

如果 Quorate 为 No,优先检查防火墙是否放行了 UDP 5404/5405。


四、Day-2:共享存储——Ceph 全分布式(推荐)

  1. 每节点留 50 % 磁盘做 OSD(HDD+SSD WAL)。

  2. 在任意节点

pveceph install
pveceph init --public_network 10.1.20.0/24 --cluster_network 10.1.20.0/24
  1. 创建 Monitor & Manager(≥3 个)

pveceph mon create-initial
pveceph mgr create
  1. 批量创建 OSD

for d in /dev/sd{b..d}; do pveceph osd create $d --wal_dev /dev/nvme0n1p$((i++)); done
  1. 新建存储池

ceph osd pool create vm-storage 128 128 replicated
ceph osd pool application enable vm-storage rbd
  1. Web 界面 → 数据中心 → 存储 → 添加 RBD,Pool 选 vm-storage,节点全勾。

至此,所有节点同时可见同一份存储,满足 HA 前提。


五、Day-3:启用 HA & Fencing(关键)

  1. 创建 HA 资源组
    Web → 数据中心 → HA → 群组 → 创建

    • 名称:ha-group1

    • 节点:node01,node02,node03

    • 勾选 “Restricted”(VM 只能在指定节点间飘)

  2. 给 VM 打标签
    选中 VM → 更多 → 高可用 → 添加 → 选 ha-group1,优先级 1~10(越大越优先)。

  3. 配置 Fencing(防止脑裂)
    以 IPMI 为例,在 /etc/pve/ha/fence.cfg 追加

fence ipmi1 {
    ip 10.1.10.1
    user ADMIN
    password xxxxxx
    interface lanplus
    method cycle
}

没有 Fencing 的集群,官方文档直接写明“HA 不会生效”

  1. 调优 corosync(可选)
    /etc/corosync/corosync.conf

token_timeout: 5000
join: 60
consensus: 4800

保存后 systemctl restart corosync


六、Day-4:模拟故障,验收 HA

实验

操作

期望结果

节点断电

直接拔 node01 电源

VM 在 30~90 s 内于 node02/03 重启,Quorate 保持 Yes

网口故障

ifdown vmbr0

节点被 fence 关机,VM 飘走

Ceph OSD 失效

拔一块盘

VM 仍读写正常,ceph health 为 HEALTH_WARN 而非 ERR

验收全部通过,即可宣告 PVE 高可用集群正式投产


七、运维期:监控+备份+扩容

  1. 监控

    • PVE 自带 Dashboard + 邮件报警

    • Zabbix 模板监控 IPMI、CPU 温度、Ceph OSD 延迟

  2. 备份

    • 使用 PBS(Proxmox Backup Server)异地备份,不要把备份放同一套 Ceph。

  3. 扩容

    • 加节点:装系统 → pvecm add → 装 Ceph → 加 OSD → 加进 HA 群组,滚动完成,业务不停

  4. 日志预测

    • 用 DeepSeek 或 ELK 收集 /var/log/ceph/var/log/pveha,提前发现慢盘、网络抖动。


八、常见翻车点速查

现象

根因

1 分钟排查

Quorate 丢失

交换机环路/防火墙

`corosync-cmapctl

grep members` 看节点掉线

VM 飘不动

存储未共享

rbd ls vm-storage 在目标节点能否看到磁盘

脑裂双主

Fencing 失败

检查 IPMI 密码、节点是否真断电

Ceph 慢如狗

OSD 共用机械盘

ceph osd perf 看 apply/commit 延迟 >100 ms 即不合格


九、小结

  1. 3 节点是“能 HA”的最小法定人数,少于 3 请直接放弃 HA

  2. 网络隔离(管理/存储/业务)+ Fencing 真断电 是防止脑裂的两根保险丝,缺一不可。

  3. 共享存储优先 Ceph,NFS 单点 做 HA 等于自欺欺人。

  4. 上线前一定做 断电/断网/拔盘 三重演练,演练不过直接回滚,别侥幸。

照此方案,你可以从 3 节点起步,随业务平滑扩展到 10+ 节点、PB 级存储,而 HA、扩容、备份全程在线完成——这才是真正意义上的 Proxmox VE 生产级高可用集群


多台主机构建PVE高可用超融合HA集群
http://localhost:8090//archives/1768309374014
作者
昊昱天合
发布于
2026年01月13日
更新于
2026年01月13日
许可协议