news 2026/4/27 4:17:28

Proxmox VE Ceph 超融合集群落地实战

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Proxmox VE Ceph 超融合集群落地实战

Proxmox VE Ceph 超融合集群落地实战

系列文章 #3 | 后 VMware 时代企业虚拟化实战

目录

  1. 为什么选 Ceph
  2. 硬件选型与规划
  3. 集群部署步骤
  4. 存储池与 CephFS 配置
  5. 性能调优
  6. 故障处理与扩容
  7. 监控与告警
  8. 常见坑

一、为什么选 Ceph

Proxmox 内置 Ceph,提供软件定义存储(SDS),对标 VMware vSAN。核心优势:

  • 无单点:数据三副本分布在不同节点/机柜
  • 横向扩展:加节点即扩容量和性能
  • 统一接口:RBD(块)、CephFS(文件)、RGW(对象)一套集群三种用法
  • 开源免费:无存储阵列许可

适用场景:

  • 3 节点以上的 PVE 集群
  • 对 IOPS 和延迟要求不是极致(毫秒级可接受)
  • 有独立存储网络预算(10GbE 起步)

不适用场景:

  • 单节点或 2 节点
  • 数据库等对尾延迟极敏感的工作负载(建议本地 NVMe)
  • 网络只有 1GbE

二、硬件选型与规划

2.1 最小规模与推荐规模

维度最小可用推荐生产
节点数35+
每节点 OSD 盘24-8
OSD 盘类型企业级 SATA SSD企业级 NVMe
存储网络10GbE25GbE / 100GbE
每节点内存64GB128GB+
CPU16 core32 core+

2.2 OSD 盘选型红线

  • 必须是企业级:消费级 SSD 没断电保护,Ceph 会数据不一致
  • DWPD ≥ 1:高写入场景建议 DWPD ≥ 3
  • 禁用 RAID 卡:直通 HBA 模式,Ceph 自己管冗余
  • 容量:单盘 1.92TB - 7.68TB 较优,太小 OSD 数多管理复杂,太大重建慢

2.3 网络规划

┌─────────────┐ │ Public 网 │ 10GbE ← 客户端访问 (PVE ↔ Ceph) └─────────────┘ ┌─────────────┐ │ Cluster 网 │ 25GbE ← OSD 内部复制/心跳 └─────────────┘

关键:Public 和 Cluster 网物理隔离,否则重建流量会打爆业务网。


三、集群部署步骤

3.1 前置检查

# 每个 PVE 节点执行pveversion# 确认 8.x+pvecm status# 确认集群 Quoratelsblk# 确认 OSD 盘可见且未使用

3.2 安装 Ceph(Web UI 方式)

Step 1:在任一节点 Web UI

Datacenter → pve01 → Ceph → Install Ceph

选择版本(推荐 Reef 或 Squid),确认安装。

等效 CLI:

pvecephinstall--repositoryno-subscription--versionreef

Step 2:初始化集群

UI:Ceph → 初始化向导

  • Public Network:10.0.0.0/24
  • Cluster Network:10.0.1.0/24
  • 副本数:3/2(默认,size=3, min_size=2)

CLI:

pveceph init--network10.0.0.0/24 --cluster-network10.0.1.0/24

3.3 部署 Monitor 和 Manager

至少 3 个 Monitor(奇数,防脑裂):

# 分别在 pve01/pve02/pve03 执行pveceph mon create# 同样部署 Managerpveceph mgr create

验证:

ceph-s# cluster:# health: HEALTH_OK# services:# mon: 3 daemons, quorum pve01,pve02,pve03# mgr: pve01(active), standbys: pve02, pve03

3.4 创建 OSD

对每块数据盘:

pveceph osd create /dev/nvme0n1 pveceph osd create /dev/nvme1n1# ...

或 Web UI:pve01 → Ceph → OSD → Create: OSD

验证:

ceph osd tree# ID CLASS WEIGHT TYPE NAME STATUS# -1 15.0 root default# -3 5.0 host pve01# 0 ssd 2.5 osd.0 up# 1 ssd 2.5 osd.1 up# ...

四、存储池与 CephFS 配置

4.1 创建 RBD 池(给 VM 用)

UI:Datacenter → Ceph → Pools → Create

Name: vm-pool Size: 3 ← 副本数 Min Size: 2 ← 最少可用副本 PG Num: auto CRUSH Rule: replicated_rule Add Storage: [✓] ← 自动添加到 Datacenter Storage

CLI:

pveceph pool create vm-pool--size3--min_size2--add_storages

4.2 创建 CephFS(给 ISO/备份用)

pveceph fs create--namecephfs --add-storage

挂载后在 Datacenter 看到存储cephfs可存 ISO、模板、快照。

4.3 副本数策略

场景size / min_size说明
生产 VM3 / 2默认,允许 1 节点故障
测试环境2 / 1省空间,风险高
关键数据4 / 2跨机房副本
容量优先纠删码 4+2节省空间但性能差,不建议 VM 用

五、性能调优

5.1 OSD 层面

# 编辑 /etc/pve/ceph.conf 的 [global] 或 [osd]osd_memory_target=8G# 默认 4G,NVMe 下可调高osd_op_num_threads_per_shard=4# 高并发调大bluestore_cache_size_ssd=8G# SSD 专用缓存

5.2 网络层面

  • MTU 9000(Jumbo Frame):Public + Cluster 网都启用
  • 多路径:用 bond mode 4 (LACP) 聚合
# 验证 MTUping-Mdo-s897210.0.1.21

5.3 VM 侧优化

  • 磁盘缓存模式:writeback(性能最佳,需 UPS)或none(最安全)
  • 磁盘控制器:VirtIO SCSI single(可发挥多队列)
  • 启用 IO thread:Web UI → VM Hardware → Disk → iothread [✓]

5.4 性能基准测试

# rados 基准rados bench-pvm-pool60write--no-cleanup rados bench-pvm-pool60seqrados bench-pvm-pool60rand# 清理测试数据rados-pvm-pool cleanup

参考基准(5 节点 × 8 NVMe × 25GbE):

  • 顺序写:6-8 GB/s
  • 4K 随机写 IOPS:200K-400K
  • 延迟:<2ms 平均

六、故障处理与扩容

6.1 OSD 故障替换

当某块盘红灯:

# 1. 标记 out(数据迁出)ceph osd out osd.5# 2. 等待迁移完成(看 ceph -s 的 recovering)ceph-s# 3. 停止 OSDsystemctl stop ceph-osd@5# 4. 从 CRUSH 删除ceph osd purge osd.5 --yes-i-really-mean-it# 5. 更换物理盘后重新创建pveceph osd create /dev/nvme5n1

6.2 节点扩容

新加节点到 PVE 集群后:

# 新节点上pvecephinstall--versionreef pveceph mon create# 可选,保持 mon 数奇数pveceph osd create /dev/nvme0n1# ... 逐盘加入# 数据自动重平衡,监控进度ceph-s

6.3 集群状态急救

# 集群 HEALTH_ERR 怎么办?ceph health detail# 查看具体告警ceph osd tree# 检查 OSD 状态ceph pg dump_stuck# 卡住的 PGceph pg repair<pg_id># 修复不一致的 PG

七、监控与告警

7.1 Ceph 自带 Dashboard

ceph mgr moduleenabledashboard ceph dashboard create-self-signed-cert ceph dashboard ac-user-create admin<password>administrator

访问https://<mgr-ip>:8443

7.2 Prometheus 集成

ceph mgr moduleenableprometheus# 默认暴露 9283 端口curlhttp://<mgr>:9283/metrics|head

Prometheus 配置:

-job_name:'ceph'static_configs:-targets:['10.0.0.21:9283']

Grafana Dashboard 推荐 ID:2842(Ceph Cluster)、7056(Ceph Pools)。

7.3 关键告警

指标阈值含义
ceph_health_status!= 0集群不健康
ceph_cluster_total_used_ratio> 0.85容量超过 85%
ceph_osd_up< count有 OSD 掉线
ceph_pg_activeratio< 1PG 未全部 active

八、常见坑

  1. 只用 1GbE 网络→ 性能惨不忍睹,且重建会打爆业务。必须 10GbE+
  2. 消费级 SSD→ 数据损坏风险,硬件不省
  3. 不分 Public/Cluster 网→ 重建时业务卡顿
  4. 副本数设 2→ 生产绝不能这么做,一盘坏=风险敞口
  5. PG 数设置过小→ 数据不均衡;过大 → 内存爆。用pg_autoscaler自动调
  6. Mon 数设为偶数→ 脑裂风险,永远奇数
  7. 容量用到 90%+→ Ceph 会进入只读保护,务必留 20% 余量
  8. 忘了设置 noout 再维护→ 例行维护会触发不必要的数据迁移

维护模式正确姿势:

# 节点下线维护前ceph osdsetnoout ceph osdsetnorebalance# 维护完恢复ceph osdunsetnoout ceph osdunsetnorebalance

结语

Ceph 是 Proxmox 生态的压舱石,但也是最需要硬件投入和运维理解的组件。不建议在 1GbE + 消费级 SSD 上玩"生产 Ceph",那是自找麻烦。硬件配齐 + 监控到位 + 演练过故障,Ceph 才真正是 vSAN 的平替。

下一篇 →Proxmox PBS 企业级备份体系设计

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/27 4:16:02

4.20-4.26

L1-8 智慧文本编辑器 - GPLT 团体程序设计天梯赛 2026 年 L2-1 姥姥改作业 - GPLT 团体程序设计天梯赛 2026 年 L2-2 超参数搜索 - GPLT 团体程序设计天梯赛 2026 年 L2-3 森林藏宝图 - GPLT 团体程序设计天梯赛 2026 年 7-11 胖达的山头 - SMU 2026 Spring 天梯赛8&#xf…

作者头像 李华
网站建设 2026/4/27 4:15:19

AI社交媒体运营解决方案:MCP服务层与自动化

目录 服务层功能完善 图文发布功能实现视频发布功能实现 MCP工具接口开发 FastMCP集成工具接口设计与优化 浏览器自动化核心功能 浏览器管理器优化页面控制器实现 本周开发总结 服务层功能完善 图文发布功能实现 1. 开发过程 图文发布功能是小红书MCP核心能力之一&#xf…

作者头像 李华
网站建设 2026/4/27 4:12:28

利用Obsidian Local REST API构建可检索的AI对话知识库

1. 项目概述&#xff1a;在 Obsidian 中构建你的 AI 对话知识库如果你和我一样&#xff0c;日常重度依赖 Cursor 的 AI 编程助手来探讨技术方案、解决代码问题&#xff0c;那么一个痛点很快就会浮现&#xff1a;那些充满洞见的对话&#xff0c;在 Cursor 的聊天历史里翻找起来异…

作者头像 李华
网站建设 2026/4/27 4:07:39

使用Keras构建Seq2Seq神经机器翻译模型

1. 神经机器翻译与Seq2Seq模型基础神经机器翻译(NMT)是当前主流的机器翻译方法&#xff0c;相比传统的统计机器翻译(SMT)具有端到端训练、上下文理解更优的特点。Seq2Seq(Sequence to Sequence)模型是NMT的核心架构&#xff0c;由Google在2014年首次提出。这个架构的核心思想是…

作者头像 李华
网站建设 2026/4/27 4:06:06

告别串口!Zynq远程更新内核实战:用flashcp和TFTP搞定QSPI Flash

Zynq远程内核更新实战&#xff1a;基于TFTP与flashcp的自动化部署方案 在工业物联网和边缘计算场景中&#xff0c;嵌入式设备的远程维护能力正成为刚需。想象这样一个场景&#xff1a;数百台部署在变电站、风力发电机或生产线上的Zynq设备需要紧急更新内核以修复安全漏洞&#…

作者头像 李华
网站建设 2026/4/27 4:05:45

深度学习中的学习率配置与优化策略详解

1. 学习率在深度学习中的核心作用第一次接触神经网络训练时&#xff0c;我最困惑的就是为什么模型有时候完全不收敛&#xff0c;有时候又震荡得厉害。后来才发现&#xff0c;90%的问题都出在学习率这个看似简单的参数上。学习率决定了每次参数更新的步长大小&#xff0c;就像下…

作者头像 李华