实战部署:基于PVE与Ceph构建高可用超融合集群的完整测试记录
1. 环境准备与硬件规划这次我用三台二手服务器搭建PVECeph超融合集群硬件配置特意模拟了中小企业常见场景。每台机器都是16核CPU64G内存存储方面做了分层设计256G固态做系统盘1T机械硬盘和500G固态用于Ceph OSD。网络方面虽然测试环境只用了一张万兆网卡但我强烈建议生产环境至少配置双网卡——别像我这样偷懒后面会解释原因。三台节点的IP和域名配置如下PVE1: 172.16.201.71/pve1.test.comPVE2: 172.16.201.72/pve2.test.comPVE3: 172.16.201.73/pve3.test.com这里有个血泪教训域名解析必须三台机器同步配置。有次我在PVE2上漏配了pve3.test.com的解析结果集群服务时不时抽风排查了两天才发现是这个低级错误。建议直接用/etc/hosts文件做静态解析比折腾DNS服务更可靠。1.1 网络拓扑设计虽然测试环境用单网卡跑所有流量管理、业务、Ceph同步但实际部署时强烈建议采用以下方案方案A最低配置双网卡网卡1管理流量业务流量VLAN隔离网卡2Ceph专用网络方案B推荐配置三网卡网卡1管理网络网卡2虚拟机业务网络网卡3Ceph同步网络实测发现当Ceph同步流量和虚拟机迁移共用网络时一旦触发存储密集型操作管理界面都会卡得无法响应。后来我给Ceph单独划了VLAN情况立刻改善。2. PVE集群搭建实战集群创建过程看似简单但有几个隐藏坑点需要特别注意。首先在PVE1上创建集群时系统生成的加入令牌有效期只有2小时。有次我复制了令牌去吃午饭回来发现失效了不得不重新创建。2.1 集群加入的正确姿势加入节点时最容易犯的三个错误密码混淆在PVE2上加入集群时要输入的是PVE1的root密码不是本机密码我就因为输错三次导致SSH被临时封锁。网络选择集群网络必须选择节点间通信的IP地址默认可能选错成127.0.0.1。防火墙阻拦如果节点间无法通信记得检查以下端口是否开放TCP 5404,5405集群通信UDP 5404,5405corosync加入成功后在shell执行pvecm status应该能看到类似输出Cluster information ------------------- Name: my-cluster Config Version: 3 Nodes: 3 Quorum: Yes2.2 时钟同步的重要性集群对时间同步极其敏感建议所有节点配置chrony服务。有次虚拟机迁移失败日志显示clock skew too large就是因为节点间时间差超过50ms。配置示例apt install chrony sed -i s/^pool/#pool/g /etc/chrony/chrony.conf echo server ntp.aliyun.com iburst /etc/chrony/chrony.conf systemctl restart chrony chronyc sources -v # 验证同步状态3. Ceph集群部署详解Ceph安装必须换源官方源不仅慢还经常连不上。我整理了个国内镜像源配置脚本echo deb https://mirrors.aliyun.com/ceph/debian-quincy/ bullseye main /etc/apt/sources.list.d/ceph.list apt update apt install -y ceph3.1 OSD创建的艺术根据Ceph官方文档OSD配置应该遵循10% DB/1% WAL原则。但实际测试发现这个比例过于保守我的配置方案1T机械硬盘Slow900G数据空间500G固态DBWAL50G DB 5G WAL创建OSD时有个隐藏选项--block-db-size和--block-wal-size可以手动指定大小。示例命令ceph-volume lvm create --data /dev/sdb --block-db /dev/nvme0n1p1 --block-wal /dev/nvme0n1p23.2 资源池配置技巧创建存储池时副本数设置很关键。测试环境用size2足够生产环境建议size3。我常用的优化参数ceph osd pool create mypool 128 128 # PG数根据OSD数量调整 ceph osd pool set mypool size 3 ceph osd pool set mypool min_size 2 # 允许临时降级4. iSCSI多路径全攻略用群晖配置iSCSI存储时必须勾选允许多重联机否则集群无法同时挂载。PVE端挂载后出现LVM识别异常是正常现象——这恰恰说明需要配置多路径。4.1 多路径配置四部曲优化iSCSI超时echo node.session.timeo.replacement_timeout 15 /etc/iscsi/iscsid.conf systemctl restart open-iscsi安装多路径工具apt install multipath-tools -y获取WWID/lib/udev/scsi_id -g -u -d /dev/sdb # 替换为实际设备配置多路径multipath -a 360014053eb96495dc455d4c93db78cdc # 替换为你的WWID multipath -r4.2 LVM创建陷阱在分区阶段必须设置类型为8e00Linux LVM否则后续无法创建物理卷。操作流程fdisk /dev/mapper/mpatha # 进入交互界面 t - 8e00 - w # 修改分区类型并保存5. HA与热迁移实战测试HA组的restricted选项要谨慎开启——我有次所有节点意外断电恢复后发现虚拟机因为此选项限制无法自动启动。建议配置优先级PVE13, PVE22, PVE31不勾选restricted勾选nofailback5.1 热迁移性能对比测试环境下的迁移耗时存储类型迁移10G虚拟机丢包情况Ceph RBD45秒0本地ZFS2分30秒1-2个iSCSI多路径1分15秒05.2 断电模拟测试直接拔电源的极端测试中PVE表现令人惊喜三节点同时断电后重启集群自动恢复HA虚拟机在5分钟内陆续上线Ceph自动开始数据恢复和平衡对比之前用过的VMware方案这种稳定性确实超出预期。不过要注意机械硬盘多的环境恢复时间会显著延长我的1T OSD花了近1小时才完成peering。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2436584.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!