
# ALM-12180 磁盘卡IO
#### 告警解释
**MRS 3.3.0及之后版本、MRS 3.1.0.0.10/3.1.5.0.3及之后补丁版本：**
- 对于HDD盘，满足以下任意条件时触发告警：
  - 系统默认每3秒采集一次数据，在30秒内至少7个采集周期的svctm时延达到6秒。
  
  - 系统默认每3秒采集一次数据，在30秒内至少10个采集周期，磁盘队列深度（avgqu-sz）\> 0，iops = 0或带宽 = 0，且ioutil \> 99%。
  
  - 系统默认每3秒采集一次数据，在300秒内至少50%次检测到的svctm时延达到1000ms。
   
- 对于SSD盘，满足以下任意条件时触发告警：
  - 系统默认每3秒采集一次数据，在30秒内至少7个采集周期的svctm时延达到3秒。
  
  - 系统默认每3秒采集一次数据，在30秒内至少10个周期，磁盘队列深度（avgqu-sz）\> 0，iops = 0或带宽 = 0，且ioutil \> 99%。
  
  - 系统默认每3秒采集一次数据，在300秒内至少50%次检测到的svctm时延达到500ms。
   
系统采集周期为3秒，检测周期为30秒或300秒，当系统连续3个30秒、300秒的周期均不满足对应条件时，告警自动清除。
**MRS 3.3.0之前版本：**
- 对于HDD盘，满足以下任意条件时触发告警：
  - 系统默认每3秒采集一次数据，在30秒内至少10周期，svctm时延超过6秒。
  
  - 系统默认每3秒采集一次数据，在30秒内至少10周期，磁盘队列深度（avgqu-sz）\> 0，iops = 0或带宽 = 0，且ioutil \> 99%。
   
- 对于SSD盘，满足以下任意条件时触发告警：
  - 系统默认每3秒采集一次数据，在30秒内至少10周期，svctm时延超过2秒。
  
  - 系统默认每3秒采集一次数据，在30秒内至少10周期，磁盘队列深度（avgqu-sz）\> 0，iops = 0或带宽 = 0，且ioutil \> 99%。
   
当系统连续90s内不满足以上所有条件时，告警自动清除。
![](https://support.huaweicloud.com/usermanual-mrs/public_sys-resources/note_3.0-zh-cn.png)
相关参数获取及计算方法请参见[参考信息]。
#### 告警属性
| 告警ID  | 告警级别 | 是否自动清除 |
|:---|:---|:---|
| 12180 | 重要   | 是      |
   
#### 告警参数
| 参数名称 | 参数含义          |
|:---|:---|
| 来源   | 产生告警的集群或系统名称。 |
| 服务名  | 产生告警的服务名称。    |
| 角色名  | 产生告警的角色名称。    |
| 主机名  | 产生告警的主机名。     |
| 磁盘名  | 产生告警的磁盘名。     |
   
#### 对系统的影响
如果IO持续飙高，会对业务操作产生影响导致业务受损，具体可能会产生如下影响：
- 系统性能下降：卡IO会导致系统I/O性能下降，从而影响系统的响应速度和吞吐量。这可能会导致客户的业务运行变慢（例如：作业提交运行变慢、页面响应迟钝、接口响应超时等），甚至出现崩溃或错误。
- 系统故障：卡IO可能会导致系统故障，从而导致客户的业务受到影响。如果慢盘上存储的数据包含关键信息，可能会导致系统崩溃或数据丢失。
 
#### 可能原因
磁盘老化。
#### 处理步骤
**更换磁盘。**
1. 在FusionInsight Manager界面，选择"运维 \> 告警 \> 告警"。
2. 查看该告警的详细信息，查看定位信息中对应的"主机名"字段和"磁盘名"字段的值，获取该告警上报的故障磁盘信息。
3. 更换硬盘。
4. 检查告警是否清除。 
   - 是，操作结束。
   
   - 否，执行[步骤 5]。
   
   
   
   
**收集故障信息。**
5. 在FusionInsight Manager界面，选择"运维 \> 日志 \> 下载"。
6. 在"服务"中勾选"OMS"，单击"确定"。
7. 单击右上角的![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000001405224197.png)设置日志收集的"开始时间"和"结束时间"分别为告警产生时间的前后10分钟，单击"下载"。
8. 请联系运维人员，并发送已收集的故障日志信息。
 
#### 告警清除
此告警修复后，系统会自动清除此告警，无需手工清除。
 #### 参考信息
**相关参数获取及计算方法如下：**
- 在操作系统中执行以下命令采集数据： **iostat -x -t 1 1**
  ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000001723068453.png "点击放大")
  其中：
  "avgqu-sz"为磁盘队列深度。
  "r/s"和"w/s"之和为"iops"。
  "rkB/s"和"wkB/s"之和为带宽。
  "%util"为"ioutil"。
  
- MRS 3.1.0版本： 在操作系统中执行**iostat -x -t**获取：
  ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000001675308926.png "点击放大")
  
- MRS 3.1.0之后版本svctm的计算方法为： svctm = (tot_ticks_new - tot_ticks_old) / (rd_ios_new + wr_ios_new - rd_ios_old - wr_ios_old)
  
- 针对MRS 3.3.0之前版本：如果rd_ios_new + wr_ios_new - rd_ios_old - wr_ios_old = 0，则svctm = 0
- 针对MRS 3.3.0及之后版本、MRS 3.1.0.0.10/3.1.5.0.3及之后补丁版本： 当检测周期粒度为30s时，如果rd_ios_new + wr_ios_new - rd_ios_old - wr_ios_old = 0，则svctm = 0 。
  当检测周期粒度为300s时，在rd_ios_new + wr_ios_new - rd_ios_old - wr_ios_old = 0的情况下，如果tot_ticks_new - tot_ticks_old = 0则svctm = 0，否则svctm值为无穷大。
  
参数获取如下：
系统每3秒执行一次**cat /proc/diskstats**命令采集数据。例如：
![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000001723188349.png "点击放大")
连续两次采集的数据中：
第一次采集的数据中，第4列的数字是"rd_ios_old"，第8列的数字是"wr_ios_old"，第13列的数字是"tot_ticks_old"。
第二次采集的数据中，第4列的数字是"rd_ios_new"，第8列的数字是"wr_ios_new"，第13列的数字是"tot_ticks_new"。
则上图中svctm值为：
(19571460 - 19569526) / (1101553 + 28747977 - 1101553 - 28744856) = 0.6197
