当前位置: 首页 > ops >正文

Ceph存储阈值调整:优化nearfull_ratio参数

Ceph存储阈值调整:优化nearfull_ratio参数

前言

在Ceph存储系统的管理中,合理设置存储阈值参数对于确保系统稳定运行至关重要。如何调整nearfull_ratio参数,以及这一参数对Ceph集群的影响。

Ceph存储阈值概述

Ceph存储系统主要有三个与容量相关的重要阈值参数:

  1. 近满阈值(nearfull_ratio):默认为0.85或85%,当集群使用空间达到此比例时,Ceph会发出警告。
  2. 回填满阈值(backfillfull_ratio):默认为0.90或90%,影响数据重平衡操作。
  3. 满阈值(full_ratio):默认为0.95或95%,当达到此阈值时,Ceph会拒绝写入操作以保护系统。

这三个参数构成了Ceph的渐进式保护机制,在存储空间耗尽前采取措施。

查看当前阈值设置

在调整任何参数之前,首先应该查看当前的阈值设置:

ceph osd dump | grep -E "nearfull|full"

输出示例:

full_ratio 0.95
backfillfull_ratio 0.9
nearfull_ratio 0.85

为什么要调整nearfull_ratio?

调整nearfull_ratio参数的主要原因包括:

  1. 减少过早警告:默认的0.85可能在某些大规模集群中过早触发警告。
  2. 与业务需求匹配:根据实际业务需求和运维响应时间调整预警点。
  3. 与其他阈值协调:确保与backfillfull_ratiofull_ratio保持合理间隔。

调整nearfull_ratio的方法

方法1:使用set-nearfull-ratio命令

这是最直接的方法:

ceph osd set-nearfull-ratio 0.9

方法2:使用tell命令

ceph tell osd.* config set mon_osd_nearfull_ratio 0.9

方法3:使用config set命令

ceph config set osd mon_osd_nearfull_ratio 0.9

方法4:修改ceph.conf配置文件

ceph.conf文件中添加或修改:

[global]
mon_osd_nearfull_ratio = 0.9

然后重启相关服务使配置生效。

验证配置更改

执行配置更改后,可以通过以下命令验证是否生效:

ceph osd dump | grep -E "nearfull|full"

预期输出:

full_ratio 0.95
backfillfull_ratio 0.9
nearfull_ratio 0.9

最佳实践与注意事项

  1. 保持合理间隔:确保三个阈值之间有合理的间隔,以提供渐进式的保护机制。
  2. 避免阈值重叠:不建议将nearfull_ratio设置为与full_ratio相同,这会导致系统没有预警机制。
  3. 永久保存配置:使用tellset命令设置的配置是运行时配置,在服务重启后可能会丢失。建议同时更新ceph.conf配置文件。
  4. 监控系统状态:调整阈值后,密切监控系统状态,确保设置合理。

实际案例

在一个生产环境中,我们将nearfull_ratio从默认的0.85调整为0.9:

# 执行调整命令
ceph osd set-nearfull-ratio 0.9# 验证更改
ceph osd dump | grep -E "nearfull|full"
full_ratio 0.95
backfillfull_ratio 0.9
nearfull_ratio 0.9

这一调整使得系统在存储使用率达到90%时才发出警告,与backfillfull_ratio阈值一致,为管理员提供了更合理的响应窗口。

结论

合理调整Ceph的nearfull_ratio参数可以帮助优化存储系统的预警机制,避免过早或过晚的警告。根据实际业务需求和运维响应能力,选择适合的阈值设置,并确保与其他相关参数保持协调,是Ceph存储系统管理的重要一环。

http://www.xdnf.cn/news/15762.html

相关文章:

  • Vue组件化开发小案例
  • 关于如何同步开发板的时间和现在一样:
  • 地图定位与导航
  • Verilog *2* SPI-立创逻辑派G1测试-1
  • 数据结构:字符串(Strings)
  • IIS部署 .net项目
  • 面试150 课程表Ⅱ
  • Redisson RLocalCachedMap 核心参数详解
  • 从“数字土著”到“数据公民”:K-12数据伦理课程的设计、实施与成效追踪研究
  • Java 大视界 -- 基于 Java 的大数据实时流处理在智能制造生产过程质量实时监控与异常诊断中的应用(352)
  • Gitee 提交信息的规范
  • lvs笔记
  • 教育科技内容平台的用户定位与产品方案:从需求到解决方案的精准匹配
  • Keepalived 监听服务切换与运维指南
  • 基于LSTM的时间序列到时间序列的回归模拟
  • AspectJ 表达式中常见符号说明
  • Baumer工业相机堡盟工业相机如何通过YoloV8深度学习模型实现动物分类(C#源码,UI界面版)
  • 张 关于大语言模型(LLM)置信度研究的经典与前沿论文 :温度缩放;语义熵;自一致性;事实与反思;检索增强;黑盒引导;
  • 微服务学习(六)之分布式事务
  • 商业秘密的法律属性与保护路径探析
  • LeetCode 322. 零钱兑换 LeetCode 279.完全平方数 LeetCode 139.单词拆分 多重背包基础 56. 携带矿石资源
  • 【Docker基础】深入解析Docker-compose核心配置:Services服务配置详解
  • 【学习记录】智能客服小桃(进度更新ing)
  • Elastic Search 8.x 分片和常见性能优化
  • UniApp 自定义导航栏:解决安全区域适配问题的完整实践
  • 当OT遇见IT:Apache IoTDB如何用“时序空间一体化“破解工业物联网数据孤岛困局
  • 【黄山派-SF32LB52】—硬件原理图学习笔记
  • NLP中情感分析与观念分析、价值判断、意图识别的区别与联系,以及四者在实际应用中的协同
  • 疯狂星期四文案网第12天运营日报
  • 最少标记点问题:贪心算法解析