Linux怎么部署Ceph分布式存储集群管理超大规模数据底座

小宇吖_1404

小宇吖_1404

2026-11-05

881人浏览

原创

Ceph集群部署必须严格遵循角色分离、网络隔离、高精度时间同步和OSD稳定路径规划;跳过则引发扩容失败、PG不均、心跳超时等问题。需启用EPEL/PowerTools、正确配置Ceph官方源,禁用冲突模块流,使用by-id路径或udev规则固化磁盘设备名,并以chronyd+makestep保障mon节点时间误差

linux怎么部署ceph分布式存储集群管理超大规模数据底座

Ceph集群部署不能只靠“装完就跑”,超大规模数据底座对节点角色分离、网络平面隔离、时间同步精度和OSD磁盘规划有硬性要求,跳过这些环节,后续扩容、故障自愈、PG分布不均等问题会集中爆发。

ceph-deploy 在 Rocky Linux 8 上安装失败常见原因

在 Rocky Linux 8 上执行 ceph-deploy install 报错“no package ceph available”或依赖冲突,本质是默认仓库未启用 EPEL + PowerTools,且 Ceph 官方 repo 配置缺失。

  • 必须先启用基础源:dnf install -y epel-release && dnf config-manager --set-enabled powertools
  • 再添加 Ceph Pacific(推荐)或 Quincy 的官方 repo:dnf install -y centos-release-ceph-pacific(Rocky 8 兼容 CentOS Stream repo)
  • 禁用 dnf module enable ceph:quincy 后再运行 ceph-deploy install,否则会因模块流冲突导致包版本混乱
  • 若仍报 Python 3.9+ 兼容问题,需临时降级:pip3 install 'ceph-deploy==2.0.1'(新版 2.1.x 已弃用)

public network 和 cluster network 必须物理隔离

很多用户复用同一网段(如都用 192.168.10.0/24),结果 OSD 心跳超时、PG stuck inactive、recovery 流量挤占客户端 IO——这不是配置错误,是网络设计缺陷。

  • public network 承载客户端读写、MON 通信、RGW 请求,建议走万兆双口 bond0
  • cluster network 专用于 OSD-to-OSD 复制、回填、清理流量,必须独立网卡(如 bond1)并配置 172.16.0.0/16 等私有大子网
  • 检查方式:ceph report | grep -A5 network 确认两个 network 字段不重叠;tcpdump -i bond1 port 6800-7300 应持续捕获到 OSD 流量
  • 若用虚拟机测试,至少为每个节点分配两块网卡,VMware 中禁用“混杂模式”外的其他高级选项

OSD 初始化时 /dev/sdb 类设备名不稳定怎么办

重启后 /dev/sdb 可能变成 /dev/sdc,导致 ceph-deploy osd create 失败或挂载错盘。别依赖 sdX 编号,要用稳定路径。

Linux Security Scanner
Linux Security Scanner

Linux 安全审计工具,检查 SSH 配置、开放/监听端口、防火墙规则(ufw/iptables/nftables)、失败登录尝试、sudoers 权限...

下载
  • 优先使用 /dev/disk/by-id/ata-Samsung_SSD_870_EVO_1TB_S5YBNF0R812345-part1 这类 by-id 路径(注意加 -part1 若已分区)
  • 若用裸盘,生成 udev rule 固定符号链接:echo 'KERNEL=="sdb", SYMLINK+="ceph-data0"' >> /etc/udev/rules.d/99-ceph-disk.rules,然后 reload:udevadm control --reload-rules && udevadm trigger
  • ceph-deploy osd create --data /dev/ceph-data0 node1 才真正可靠;验证:ls -l /dev/ceph-data0 指向当前实际盘符
  • 切勿在已有文件系统的盘上直接 ceph-deploy osd prepare,会静默清空数据——加 --zap-disk 参数才明确意图

mon 节点时间误差超 100ms 导致 clock skew detected

clock skew detected on mon.X 不只是警告,它会让 MON 无法达成 Paxos 共识,集群状态卡在 HEALTH_WARN,新 OSD 加入失败。

  • 必须用 chronyd(非 ntpd),且配置 makestep 1.0 -1 允许首次启动大幅校正
  • 所有节点指向同一组高精度 NTP 源(如 cn.pool.ntp.org),禁用 pool 指令,改用明确 server 行
  • 校验命令:chronyc tracking(offset 应 chronyc sources -v(确保 reach > 377)
  • 若集群已出现 skew,先停所有 ceph-mon 进程,手动 chronyc makestep 强制同步,再逐个启 mon

真实超大规模部署中,最易被忽略的是 CRUSH map 的初始权重设置和 PG 数预估。一块 16TB HDD 默认权重是 1.0,但若混用 NVMe WAL 盘和 SATA 数据盘,不调权会导致数据倾斜;而 osd pool default pg num = 128 这种默认值,在 PB 级集群里会让单 OSD 承载上千 PG,严重拖慢 recovery——这些必须在 ceph-deploy mon create-initial 后立刻调整,不能等集群跑起来再补。

相关专题

更多
什么是分布式
什么是分布式

分布式是一种计算和数据处理的方式,将计算任务或数据分散到多个计算机或节点中进行处理。本专题为大家提供分布式相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.11

2133

5

分布式和微服务的区别
分布式和微服务的区别

分布式和微服务的区别在定义和概念、设计思想、粒度和复杂性、服务边界和自治性、技术栈和部署方式等。本专题为大家提供分布式和微服务相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.07

3494

5

磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

2023.06.21

4410

4

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

2023.06.29

3693

10

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

2023.06.30

2973

5

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

2023.07.05

7350

7

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

2023.07.06

7002

7

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.20

3993

8

linux查看ip命令
linux查看ip命令

本专题为大家提供linux查看ip命令相关文章内容,感兴趣的朋友可以免费下载体验试试。

2023.07.20

3485

4

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Python uv官方安装与入门文档
Python uv官方安装与入门文档

共0课时 | 0人学习

Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习