Ceph入门到精通-Ceph Pacific 版本磁盘预测模块

2023-12-16 17:12

本文主要是介绍Ceph入门到精通-Ceph Pacific 版本磁盘预测模块,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

磁盘预测模块利用 Ceph 设备运行状况检查来收集磁盘运行状况指标,并使用内部预测器模块生成磁盘故障预测并返回到 Ceph。它不需要任何外部服务器进行数据分析和输出结果。其内部预测器的准确率约为70%。

1. 启用

运行以下命令以在 Ceph 环境中启用diskprediction_local模块:

ceph mgr module enable diskprediction_local

要启用本地预测变量,请执行以下操作:

ceph config set mgr device_failure_prediction_mode local

要禁用预测,请执行以下操作:

ceph config set mgr device_failure_prediction_mode none

diskprediction_local需要至少六个设备运行状况指标数据集来预测设备的使用寿命。并且,仅当启用了运行状况监视时,才会收集这些运行状况指标。

运行以下命令以检索给定设备的预期寿命。

ceph device predict-life-expectancy <device id>

2. 配置

默认情况下,该模块每天执行预测。您可以使用以下命令调整此间隔:

ceph config set mgr mgr/diskprediction_local/predict_interval <interval-in-seconds>

~# ceph config get mgr mgr/diskprediction_local/predict_interval
86400  # 默认1天

3. 调试

如果要调试磁盘预测模块映射到 Ceph 日志记录级别,请使用以下命令。

[mgr]

    debug mgr = 20

将日志记录设置为管理器的调试后,模块将打印出带有前缀 mgr[diskprediction] 的日志记录消息,以便于过滤。

4. 启用设备监控

Ceph 还可以监控与您的设备关联的运行状况指标。例如,SATA 硬盘实现一种称为 SMART 的标准,该标准提供有关设备使用情况和运行状况的各种内部指标,例如开机小时数、电源周期数或不可恢复的读取错误。其他设备类型(如 SAS 和 NVMe)实现了一组类似的指标(通过略有不同的标准)。所有这些都可以由 Ceph 通过 smartctl 工具收集。

您可以使用以下方法启用或禁用运行状况监控:

ceph device monitoring on

或者:

ceph device monitoring off

4.1 指标抓取

如果启用了监控,将定期自动抓取指标。该间隔可以配置为:

ceph config set mgr mgr/devicehealth/scrape_frequency <seconds>

默认设置是每 24 小时抓取一次。

您可以使用以下方法手动触发所有设备的抓取:

ceph device scrape-health-metrics

可以使用以下方法抓取单个设备:

ceph device scrape-health-metrics <device-id>

或者可以使用以下方法抓取单个守护程序的设备:

ceph device scrape-daemon-health-metrics <who>

可以使用以下命令检索设备存储的运行状况指标(可选择特定时间戳):

ceph device get-health-metrics <devid> [sample-timestamp]

4.2 故障预测

Ceph 可以根据收集的健康指标预测预期寿命和设备故障。有2种模式:

  none:禁用设备故障预测。
  local:使用来自 Ceph-MGR 守护程序的预训练预测模型

预测模式可以配置为:

ceph config set mgr device_failure_prediction_mode <mode>

预测通常在后台定期运行,因此可能需要一些时间才能填充预期寿命值。您可以在以下输出中查看所有设备的预期寿命:

ceph device ls

您还可以使用以下方法查询特定设备的元数据:

ceph device info <devid>

您可以使用以下方法显式强制预测设备的预期寿命:

ceph device predict-life-expectancy <devid>

如果您没有使用 Ceph 的内部设备故障预测,但有一些关于设备故障的外部信息源,则可以通过以下方式通知 Ceph 设备的预期寿命:

ceph device set-life-expectancy <devid> <from> [<to>]

预期寿命表示为时间间隔,因此不确定性可以用宽间隔的形式表示。间隔结束也可以不指定。

4.3 健康警报

mgr/devicehealth/warn_threshold 控制在生成运行状况警告之前,预期设备故障必须多久发生。

~# ceph config get mgr mgr/devicehealth/warn_threshold
7257600  # 默认84天

可以通过以下方式检查所有设备的预期寿命,并生成任何适当的运行状况警报:

ceph device check-health

4.4 自动故障隔离

如果启用了 mgr/devicehealth/self_heal 选项(默认情况下),则对于预计很快会发生故障的设备,模块将通过将设备标记为“out”来自动将数据从它们中迁移出去。

mgr/devicehealth/mark_out_threshold 控制在自动将 osd 标记为“out”之前,预期设备故障必须多久发生。

默认:

~# ceph config get mgr mgr/devicehealth/self_heal
true
~# ceph config get mgr mgr/devicehealth/mark_out_threshold
2419200  # 默认28天

禁用自动隔离:

ceph config set mgr mgr/devicehealth/self_heal false

https://www.cnblogs.com/varden/p/17347121.html?share_token=4cca94e8-fc6e-4701-9335-4da80a83f09a

这篇关于Ceph入门到精通-Ceph Pacific 版本磁盘预测模块的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/501240

相关文章

pytorch+torchvision+python版本对应及环境安装

《pytorch+torchvision+python版本对应及环境安装》本文主要介绍了pytorch+torchvision+python版本对应及环境安装,安装过程中需要注意Numpy版本的降级,... 目录一、版本对应二、安装命令(pip)1. 版本2. 安装全过程3. 命令相关解释参考文章一、版本对

Python FastAPI入门安装使用

《PythonFastAPI入门安装使用》FastAPI是一个现代、快速的PythonWeb框架,用于构建API,它基于Python3.6+的类型提示特性,使得代码更加简洁且易于绶护,这篇文章主要介... 目录第一节:FastAPI入门一、FastAPI框架介绍什么是ASGI服务(WSGI)二、FastAP

springboot3.4和mybatis plus的版本问题的解决

《springboot3.4和mybatisplus的版本问题的解决》本文主要介绍了springboot3.4和mybatisplus的版本问题的解决,主要由于SpringBoot3.4与MyBat... 报错1:spring-boot-starter/3.4.0/spring-boot-starter-

Node.js net模块的使用示例

《Node.jsnet模块的使用示例》本文主要介绍了Node.jsnet模块的使用示例,net模块支持TCP通信,处理TCP连接和数据传输,具有一定的参考价值,感兴趣的可以了解一下... 目录简介引入 net 模块核心概念TCP (传输控制协议)Socket服务器TCP 服务器创建基本服务器服务器配置选项服

mac安装nvm(node.js)多版本管理实践步骤

《mac安装nvm(node.js)多版本管理实践步骤》:本文主要介绍mac安装nvm(node.js)多版本管理的相关资料,NVM是一个用于管理多个Node.js版本的命令行工具,它允许开发者在... 目录NVM功能简介MAC安装实践一、下载nvm二、安装nvm三、安装node.js总结NVM功能简介N

Python利用自带模块实现屏幕像素高效操作

《Python利用自带模块实现屏幕像素高效操作》这篇文章主要为大家详细介绍了Python如何利用自带模块实现屏幕像素高效操作,文中的示例代码讲解详,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1、获取屏幕放缩比例2、获取屏幕指定坐标处像素颜色3、一个简单的使用案例4、总结1、获取屏幕放缩比例from

nginx-rtmp-module模块实现视频点播的示例代码

《nginx-rtmp-module模块实现视频点播的示例代码》本文主要介绍了nginx-rtmp-module模块实现视频点播,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习... 目录预置条件Nginx点播基本配置点播远程文件指定多个播放位置参考预置条件配置点播服务器 192.

java中不同版本JSONObject区别小结

《java中不同版本JSONObject区别小结》本文主要介绍了java中不同版本JSONObject区别小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录1. FastjsON2. Jackson3. Gson4. org.json6. 总结在Jav

golang1.23版本之前 Timer Reset方法无法正确使用

《golang1.23版本之前TimerReset方法无法正确使用》在Go1.23之前,使用`time.Reset`函数时需要先调用`Stop`并明确从timer的channel中抽取出东西,以避... 目录golang1.23 之前 Reset ​到底有什么问题golang1.23 之前到底应该如何正确的

Linux使用fdisk进行磁盘的相关操作

《Linux使用fdisk进行磁盘的相关操作》fdisk命令是Linux中用于管理磁盘分区的强大文本实用程序,这篇文章主要为大家详细介绍了如何使用fdisk进行磁盘的相关操作,需要的可以了解下... 目录简介基本语法示例用法列出所有分区查看指定磁盘的区分管理指定的磁盘进入交互式模式创建一个新的分区删除一个存