Updated on 2024-03-01 GMT+08:00

ALM-12033 Slow Disk Fault

Alarm Description

For MRS 3.3.0 and its later versions as well as MRS 3.1.0.0.10/3.1.5.0.3 and later patch versions:

  • For HDDs, the alarm is triggered when any of the following conditions is met:
    • By default, the system collects data every 3 seconds. The svctm latency reaches 1000 ms within 30 seconds in at least seven collection periods.
    • By default, the system collects data every 3 seconds. At least 50% of detected svctm take no less than 150 ms within 300 seconds.
  • For SSDs, the alarm is triggered when any of the following conditions is met:
    • By default, the system collects data every 3 seconds. The svctm latency reaches 1000 ms within 30 seconds in at least seven collection periods.
    • By default, the system collects data every 3 seconds. At least 50% of detected svctm take no less than 20 ms within 300 seconds.

The collection period is 3 seconds, and the detection period is 30 or 300 seconds. This alarm is automatically cleared when neither of the preceding conditions is met for three consecutive detection periods (30 or 300 seconds).

For versions earlier than MRS 3.3.0:

  • For HDDs, the alarm is triggered when any of the following conditions is met:
    • The system runs the iostat command every 3 seconds by default, and detects that the svctm value exceeds 1000 ms in at least seven consecutive periods within 30 seconds.
    • The system runs the iostat command every 3 seconds, and detects that more than 50% of I/Os take more than 150 ms within 300s.
  • For SSDs, the alarm is triggered when any of the following conditions is met:
    • The system runs the iostat command every 3 seconds by default, and detects that the svctm value exceeds 1000 ms for at least 10 periods within 30 seconds.
    • The system runs the iostat command every 3 seconds by default, and detects that more than 60% of I/Os take more than 20 ms within 300s.

This alarm is automatically cleared when the preceding conditions have not been met for 15 minutes.

For details about how to obtain the svctm value, see Related Information.

Alarm Attributes

Alarm ID

Alarm Severity

Auto Cleared

12033

  • Minor: MRS 3.3.0 and its later versions as well as MRS 3.1.0.0.10/3.1.5.0.3 and later patch versions
  • Major: versions earlier than MRS 3.3.0

Yes

Alarm Parameters

Parameter

Description

Source

Specifies the cluster or system for which the alarm was generated.

ServiceName

Specifies the service for which the alarm was generated.

RoleName

Specifies the role for which the alarm was generated.

HostName

Specifies the host for which the alarm was generated.

DiskName

Specifies the disk for which the alarm was generated.

Impact on the System

Service performance deteriorates, service processing capabilities become poor, and services may be unavailable.

Possible Causes

The disk is aged or has bad sectors.

Handling Procedure

Check the disk status.

  1. On FusionInsight Manager, choose O&M. In the navigation pane on the left, choose Alarm > Alarms.
  2. View the detailed information about the alarm. Check the values of HostName and DiskName in the location information to obtain the information about the faulty disk for which the alarm is generated.
  3. Check whether the node for which the alarm is generated is in a virtualization environment.

    • If yes, go to 4.
    • If no, go to 7.

  4. Check whether the storage performance provided by the virtualization environment meets the hardware requirements. Then, go to 5.
  5. Log in to the alarm node as user root, run the df -h command, and check whether the command output contains the value of the DiskName field.

    • If yes, go to 7.
    • If no, go to 6.

  6. Run the lsblk command to check whether the mapping between the value of DiskName and the disk has been created.

    • If yes, go to 7.
    • If no, go to 22.

  7. Log in to the alarm node as user root, run the lsscsi | grep "/dev/sd[x]" command to view the disk information, and check whether RAID has been set up.

    In the command, /dev/sd[x] indicates the disk name obtained in 2.

    Example:

    lsscsi | grep "/dev/sda"

    In the command output, if ATA, SATA, or SAS is displayed in the third line, the disk has not been organized into a RAID group. If other information is displayed, RAID has been set up.

    • If yes, go to 12.
    • If no, go to 8.

  8. Run the smartctl -i /dev/sd[x] command to check whether the hardware supports the SMART tool.

    Example:

    smartctl -i /dev/sda

    In the command output, if "SMART support is: Enabled" is displayed, the hardware supports SMART. If "Device does not support SMART" or other information is displayed, the hardware does not support SMART.

    • If yes, go to 9.
    • If no, go to 16.

  9. Run the smartctl -H --all /dev/sd[x] command to check basic SMART information and determine whether the disk is working properly.

    Example:

    smartctl -H --all /dev/sda

    Check the value of SMART overall-health self-assessment test result in the command output. If the value is FAILED, the disk is faulty and needs to be replaced. If the value is PASSED, check the value of Reallocated_Sector_Ct or Elements in grown defect list. If the value is greater than 100, the disk is faulty and needs to be replaced.

    • If yes, go to 10.
    • If no, go to 18.

  10. Run the smartctl -l error -H /dev/sd[x] command to check the Glist of the disk and determine whether the disk is normal.

    Example:

    smartctl -l error -H /dev/sda

    Check the Command/Feature_name column in the command output. If READ SECTOR(S) or WRITE SECTOR(S) is displayed, the disk has bad sectors. If other errors occur, the disk circuit board is faulty. Both errors indicate that the disk is abnormal and needs to be replaced.

    If "No Errors Logged" is displayed, no error log exists. You can trigger the disk SMART self-check.

    • If yes, go to 11.
    • If no, go to 18.

  11. Run the smartctl -t long /dev/sd[x] command to trigger the disk SMART self-check. After the command is executed, the time when the self-check is to be completed is displayed. After the self-check is completed, repeat 9 and 10 to check whether the disk is working properly.

    Example:

    smartctl -t long /dev/sda

    • If yes, go to 17.
    • If no, go to 18.

  12. Run the smartctl -d [sat|scsi]+megaraid,[DID] -H --all /dev/sd[x] command to check whether the hardware supports SMART.

    • In the command, [sat|scsi] indicates the disk type. Both types need to be used.
    • [DID] indicates the slot information. Slots 0 to 15 need to be used.

    For example, run the following commands in sequence:

    smartctl -d sat+megaraid,0 -H --all /dev/sda

    smartctl -d sat+megaraid,1 -H --all /dev/sda

    smartctl -d sat+megaraid,2 -H --all /dev/sda

    ...

    Try the command combinations of different disk types and slot information. If "SMART support is: Enabled" is displayed in the command output, the disk supports SMART. Record the parameters of the disk type and slot information when a command is successfully executed. If "SMART support is: Enabled" is not displayed in the command output, the disk does not support SMART.

    • If yes, go to 13.
    • If no, go to 16.

  13. Run the smartctl -d [sat|scsi]+megaraid,[DID] -H --all /dev/sd[x] command recorded in 12 to check basic SMART information and determine whether the disk is normal.

    Example:

    smartctl -d sat+megaraid,2 -H --all /dev/sda

    Check the value of SMART overall-health self-assessment test result in the command output. If the value is FAILED, the disk is faulty and needs to be replaced. If the value is PASSED, check the value of Reallocated_Sector_Ct or Elements in grown defect list. If the value is greater than 100, the disk is faulty and needs to be replaced.

    • If yes, go to 14.
    • If no, go to 18.

  14. Run the smartctl -d [sat|scsi]+megaraid,[DID] -l error -H /dev/sd[x] command to check the Glist of the disk and determine whether the hard disk is working properly.

    Example:

    smartctl -d sat+megaraid,2 -l error -H /dev/sda

    Check the Command/Feature_name column in the command output. If READ SECTOR(S) or WRITE SECTOR(S) is displayed, the disk has bad sectors. If other errors occur, the disk circuit board is faulty. Both errors indicate that the disk is abnormal and needs to be replaced.

    If "No Errors Logged" is displayed, no error log exists. You can trigger the disk SMART self-check.

    • If yes, go to 15.
    • If no, go to 18.

  15. Run the smartctl -d [sat|scsi]+megaraid,[DID] -t long /dev/sd[x] command to trigger the disk SMART self-check. After the command is executed, the time when the self-check is to be completed is displayed. After the self-check is completed, repeat 13 and 14 to check whether the disk is working properly.

    Example:

    smartctl -d sat+megaraid,2 -t long /dev/sda

    • If yes, go to 17.
    • If no, go to 18.

  16. If the configured RAID controller card does not support SMART, the disk does not support SMART. In this case, use the check tool provided by the corresponding RAID controller card vendor to rectify the fault. Then go to 17.

    For example, LSI is a MegaCLI tool.

  17. On FusionInsight Manager, choose O&M > Alarm > Alarms, click Clear in the Operation column of the alarm, and check whether the alarm is reported on the same disk again.

    If the alarm is reported for three times, replace the disk.

    • If yes, go to 18.
    • If no, no further action is required.

Replace the disk.

  1. On FusionInsight Manager, choose O&M. In the navigation pane on the left, choose Alarm > Alarms.
  2. View the detailed information about the alarm. Check the values of HostName and DiskName in the location information to obtain the information about the faulty disk for which the alarm is reported.
  3. Replace the disk.
  4. Check whether the alarm is cleared.

    • If yes, no further action is required.
    • If no, go to 22.

Collect the fault information.

  1. On FusionInsight Manager, choose O&M. In the navigation pane on the left, choose Log > Download.
  2. Select OMS for Service and click OK.
  3. Click in the upper right corner, and set Start Date and End Date for log collection to 10 minutes ahead of and after the alarm generation time, respectively. Then, click Download.
  4. Contact O&M personnel and provide the collected logs.

Alarm Clearance

This alarm is automatically cleared after the fault is rectified.

Related Information

The svctm value can be obtained as follows:

  • MRS 3.1.0:

    Run the iostat -x -t command in the OS.

  • Versions later than MRS 3.1.0:

    svctm = (tot_ticks_new - tot_ticks_old) / (rd_ios_new + wr_ios_new - rd_ios_old - wr_ios_old)

  • Versions earlier than MRS 3.3.0: If rd_ios_new + wr_ios_new - rd_ios_old - wr_ios_old = 0, then svctm = 0.
  • MRS 3.3.0 and its later versions as well as MRS 3.1.0.0.10/3.1.5.0.3 and later patch versions:

    When the detection period is 30 seconds, if rd_ios_new + wr_ios_new - rd_ios_old - wr_ios_old = 0, then svctm = 0.

    When the detection period is 300 seconds and rd_ios_new + wr_ios_new - rd_ios_old - wr_ios_old = 0, if tot_ticks_new - tot_ticks_old = 0, then svctm = 0; otherwise, the value of svctm is infinite.

The parameters can be obtained as follows:

The system runs the cat /proc/diskstats command every 3 seconds to collect data. For example:

In the two commands:

In the data collected for the first time, the number in the fourth column is the rd_ios_old value, the number in the eighth column is the wr_ios_old value, and the number in the thirteenth column is the tot_ticks_old value.

In the data collected for the second time, the number in the fourth column is the rd_ios_new value, the number in the eighth column is the wr_ios_new value, and the number in the thirteenth column is the tot_ticks_new value.

In this case, the value of svctm is as follows:

(19571460 - 19569526) / (1101553 + 28747977 - 1101553 - 28744856) = 0.6197