当前版本 |
目标版本 |
15.2.17(octopus) |
16.2.11(pacific) |
1. 准备工作
1.1 备份配置信息及文件
备份ceph目录下的文件
| mkdir ~/ceph_back && cp -r /etc/ceph ~/ceph_back/ |
备份monmap
| ceph mon getmap -o ./ceph_back/monmap |
1.2 更新ceph源
更新源文件ceph版本名称
| sudo sed -i 's/octopus/pacific/' /etc/apt/sources.list && sudo apt update |
确认可更新版本是否是目标版本
| sudo apt-get update |
| sudo apt list ceph |
1.3. 检查集群健康状态
检查集群健康状态,推荐升级时集群没有任何osd和pg异常集群: health_ok
2. 升级步骤
2.1 集群设置
1. 集群设置noout
2. 修改配置
| ceph config get osd bluestore_fsck_quick_fix_on_mount |
| ceph config set osd bluestore_fsck_quick_fix_on_mount false |
| ceph config set mon mon_mds_skip_sanity true |
Note: ceph config get mon mon_mds_skip_sanity
获取值
| ceph fs set <fs_name> allow_standby_replay false |
重要信息: 每个fs都要设置一下
ceph fs get myfs |grep replay
如果没有输出即是false,有输出则修改失败
如果已经存在replay的mds,需要执行命令ceph mds fail cargo-cluster-xx
: cargo-cluster-xx 即对应的replay的mds服务
| ceph fs set <fs_name> max_mds 1 |
重要信息: 每个fs都要设置
ceph fs status
检查每个fs是否只有一个rank0的mds是active状态
将rank0之外的MDS服务停止:systemctl stop ceph-mds@$HOSTNAME.service
等待集群的定期健康检查停用队列里非0的mds服务ceph status
2.2 升级ceph包
| sudo apt --only-upgrade install ceph |
升级ceph任何一个包当前节点的其他ceph包也会一起被作为依赖升级,所以直接写ceph
| sudo systemctl restart ceph.target |
| ceph fs set <fs_name> max_mds <original_max_mds> |
| ceph config rm mon mon_mds_skip_sanity |
- 恢复配置bluestore_fsck_quick_fix_on_mount
| ceph config set osd bluestore_fsck_quick_fix_on_mount true |
Note: 等待集群恢复健康ceph status
2.3 完成升级
升级步骤完成之后, 任意集群节点内执行命令ceph versions
查看版本确认版本都升级到16.2.11
执行命令如下,不再兼容旧版本osd服务
| ceph osd require-osd-release pacific |
2.4 新功能
- 安装包
| sudo apt-get install cephfs-top |
- mgr加载stats模块
| ceph mgr module enable stats |
- 通过命令查看stats的监控信息
| ceph fs perf stats | python3 -m json.tool |
json格式的输出,使用命令格式化打印
- 创建fstop用户
| ceph auth get-or-create client.fstop mon 'allow r' mds 'allow r' osd 'allow r' mgr 'allow r' |
- 创建钥匙环文件
| ceph auth get client.fstop -o /etc/ceph/ceph.client.fstop.keyring |
- 执行命令查看fs top
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类