WO2016194212A1 - 記憶処理装置、記憶装置故障判定プログラム、記憶装置故障判定方法および情報処理システム - Google Patents

記憶処理装置、記憶装置故障判定プログラム、記憶装置故障判定方法および情報処理システム Download PDF

Info

Publication number
WO2016194212A1
WO2016194212A1 PCT/JP2015/066264 JP2015066264W WO2016194212A1 WO 2016194212 A1 WO2016194212 A1 WO 2016194212A1 JP 2015066264 W JP2015066264 W JP 2015066264W WO 2016194212 A1 WO2016194212 A1 WO 2016194212A1
Authority
WO
WIPO (PCT)
Prior art keywords
storage device
log information
storage
hdd
specified
Prior art date
Application number
PCT/JP2015/066264
Other languages
English (en)
French (fr)
Inventor
充晴 福田
大輔 梅田
Original Assignee
富士通株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 富士通株式会社 filed Critical 富士通株式会社
Priority to JP2017521463A priority Critical patent/JPWO2016194212A1/ja
Priority to PCT/JP2015/066264 priority patent/WO2016194212A1/ja
Publication of WO2016194212A1 publication Critical patent/WO2016194212A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers

Definitions

  • the present invention relates to a storage processing device, a storage device failure determination program, a storage device failure determination method, and an information processing system.
  • RAID Redundant Arrays of Inexpensive Disks
  • HDD Hard Disk Drive
  • RAID technology is mainly used for the purpose of improving reliability and availability.
  • there is a technique for determining whether there is an abnormality in the HDD by recording a history of the usage environment or usage status of the HDD and comparing the stored history with a predetermined condition. For example, there is a technique for determining whether a failure factor of an HDD is an external factor or an internal factor based on a time required for data access and a state of a device apparatus.
  • an object of the present invention is to provide a storage processing device, a storage device failure determination program, a storage device failure determination method, and an information processing system that prevent a normal storage device from being erroneously determined as a failure. .
  • the failure time of the first storage device is identified by referring to the first log information of the first storage device, and the failure occurs after the failure of the first storage device.
  • log information after the specified failure time is specified, and it is determined whether or not the second storage device needs to be replaced based on the specified log information.
  • FIG. 1 is an explanatory diagram of an example of the storage device failure determination method according to the embodiment.
  • FIG. 2 is an explanatory diagram illustrating a system configuration example of the information processing system 200.
  • FIG. 3 is a block diagram illustrating a hardware configuration example of the storage processing device 101.
  • FIG. M.M. A. R. T.A. 4 is an explanatory diagram illustrating an example of stored contents of a table 220.
  • FIG. 5 is an explanatory diagram showing an example of the contents stored in the RAID log 230.
  • FIG. 6 is an explanatory diagram showing an example of the contents stored in the state table 240.
  • FIG. 7 is an explanatory diagram showing an example of the contents stored in the pattern table 250.
  • FIG. 8 is a block diagram illustrating a functional configuration example of the storage processing device 101.
  • FIG. 9 is a flowchart illustrating an example of an information collection processing procedure of the storage processing device 101.
  • FIG. 10 is a flowchart illustrating an example of the HDD status determination processing procedure of the storage processing device 101.
  • FIG. 1 is an explanatory diagram of an example of the storage device failure determination method according to the embodiment.
  • the storage processing device 101 in FIG. 1 is a device that determines whether or not the storage device 102 needs to be replaced.
  • the storage processing device 101 can be incorporated in a RAID controller that controls a RAID configuration in which a plurality of storage devices 102 are combined.
  • the storage device 102 is a device that stores data.
  • the storage device 102 is an HDD.
  • a RAID configuration has been used in which a plurality of storage devices are combined to operate as a single virtual storage device to improve redundancy.
  • the data stored in the RAID configuration is not lost.
  • the data stored in the RAID configuration may be lost.
  • the RAID configuration must be reconstructed and the recovery work from the backup must be performed, and it takes a long time to recover.
  • data recorded in the RAID configuration since the last backup is lost.
  • an HDD will be described as an example of a storage device having a RAID configuration.
  • HDD1 returns an error in response to a command from the RAID controller in a state where three HDDs (HDD0, HDD1, HDD2) are mounted side by side and a RAID configuration is created.
  • the RAID controller disconnects the HDD 1 that has returned an error from the RAID configuration in response to the command from the RAID controller.
  • the RAID controller does not stop the mechanical operation of the HDD 1.
  • the RAID controller does not issue a command such as Motor off or unit stop to the HDD 1.
  • the HDD 1 will vibrate and give vibrations to the adjacent normal HDDs 0 and 2. .
  • the magnetic heads inside the adjacent HDD0 and HDD2 also vibrate. Since the magnetic head cannot accurately position the magnetic head in the sector on the magnetic medium due to the influence of vibration, the HDD 0 and HDD 2 notify the mechanical positioning error in response to a write request from the RAID controller.
  • the RAID controller instructs the alternate sector process to HDD0 and HDD2 that have notified the mechanical positioning error in order to record the data that could not be written in the alternative sector.
  • the HDDs 0 and 2 that have instructed the replacement sector process perform the replacement sector process, but positioning to the replacement sector also fails due to the influence of vibration, and notifies the RAID controller of the Assign write operation failed.
  • the RAID controller determines that HDD0 and HDD2 are out of order even though the internal magnetic medium has no error recording and damage and the internal magnetic medium is in a normal state. To do. For this reason, the adjacent HDD0 and HDD2 affected by the vibration are also replaced. In this case, the data that should be relieved stored in HDD0 and HDD2 cannot be relieved, and the data stored in the RAID configuration is lost.
  • the storage processing device 101 identifies the failure time from the log information of the failed storage device 102-1 and replaces the storage device 102-2 that is determined to have failed after the failure of the storage device 102-1. Is determined from log information after the specified failure time. Thereafter, any storage device among the storage devices 102-1 and 102-2 may be referred to as the storage device 102.
  • the log information is information related to the storage device 102 stored in the storage processing device 101.
  • the log information includes a log in which the storage processing device 101 records date, event ID, and status display.
  • the log information is S.D. which is error statistical information of the storage device 102.
  • M.M. A. R. T.A. There is information.
  • the failure is, for example, a failure that makes it impossible to read / write data from / to the storage device 102.
  • the failure since the magnetic head cannot be accurately positioned in the sector on the magnetic medium, the replacement sector processing is performed, but the positioning to the replacement sector also fails, and the storage processing device 101 cannot write data. is there.
  • “determined as a failure” means that the storage processing device 101 determines that the storage device 102 has failed due to the occurrence of a failure in which data cannot be read or written in the storage device 102. For example, the storage processing device 101 determines that the storage device 102 is in failure when receiving from the storage device 102 that positioning to the alternate sector has failed.
  • specifying the failure time means specifying the time when the storage processing device 101 recognizes the failure of the storage device 102. For example, the storage processing device 101 identifies the time when the Resign write operation failed is received from the storage device 102 as the failure time.
  • the storage processing device 101 is built in a RAID controller, a plurality of storage devices 102 configure a RAID, and the storage device 102-1 fails.
  • the storage device 102-1 and the storage device 102-2 are illustrated.
  • the storage processing device 101 refers to the log information 111 of the storage device 102-1 to identify the failure time of the storage device 102-1. For example, the storage processing device 101 specifies the time when “Resign write operation failed” is stored in the log information 111.
  • the storage processing device 101 specifies 5:52:18 as the failure time of the storage device 102-1.
  • the storage processing device 101 identifies log information after the failure time among the log information 112 of the storage device 102-2 that is determined to have failed after the failure of the storage device 102-1.
  • the storage processing device 101 identifies the log information stored after the failure time 5:52:18 in the log information 112. Specifically, the storage processing apparatus 101 identifies the log information stored at 6:15:22 among the log information 112.
  • the storage processing device 101 determines whether or not the storage device 102-2 needs to be replaced based on the specified log information. For example, the failure of the storage device 102-2 may occur as follows. Vibration due to a mechanical failure of the failed storage device 102-1 is transmitted to the adjacent storage device 102-2. As a result, the magnetic head inside the storage device 102-2 also vibrates. When the data is written, the storage device 102-2 notifies the storage processing device 101 of the mechanical positioning error because the magnetic head cannot be accurately positioned in the sector on the magnetic medium due to the influence of vibration. The storage processing device 101 instructs the storage device 102-2 to perform alternate sector processing in order to record the data that could not be written in the alternative sector. The storage device 102-2 also fails to be positioned in the alternate sector due to the influence of vibration, and notifies the storage processing device 101 of “Resign write operation failed”.
  • the S.E. M.M. A. R. T.A. Information Reallocation Event Count indicates the number of times sector replacement processing has occurred, and is stored when sector replacement processing is performed in accordance with an instruction from the storage device 102-2. When positioning to the alternate sector due to the influence of vibration fails, writing does not fail due to an error in the magnetic medium, so the Reallocation Event Count of the storage device 102-2 does not increase.
  • the storage processing device 101 determines whether or not the Resign write operation failed or the mechanical positioning error is recorded in the specified log information.
  • the storage processing device 101 determines whether or not the Reallocation Event Count in the log information 112 does not increase. If the storage processing device 101 is stored and does not increase, the storage processing device 101 determines that positioning to the alternate sector has failed due to the influence of the vibration of the storage device 102-1, and writing has failed. In this case, if the storage device 102-1 is replaced, the storage device 102-2 is not affected by the vibration and operates normally. Therefore, the storage processing device 101 determines that the replacement of the storage device 102-2 is unnecessary. To do.
  • the storage processing device 101 determines that the Rewrite write operation failed and the Mechanical positioning error are recorded in the specified log information. Further, the Reallocation Event Count is stored twice in the specified log information, and both are 1. For this reason, the storage processing apparatus 101 determines that the Reallocation Event Count of the specified log information does not increase. For this reason, the storage processing device 101 determines that the storage device 102-2 is not required to be replaced.
  • the storage processing device 101 specifies the failure time of the storage device 102-1 with reference to the log information 111 of the storage device 102-1 after the storage device 102-1 has failed. Thereafter, the storage processing device 101 specifies log information after the specified failure time among the log information 112 of the storage device 102-2 determined to have failed after the failure of the storage device 102-1. Thereafter, the storage processing device 101 determines whether or not the storage device 102-2 needs to be replaced based on the specified log information.
  • the storage processing device 101 can determine whether or not the storage device 102-2 needs to be replaced based on the log information stored due to the influence of the failure of the storage device 102-1.
  • the storage processing device 101 determines that the storage device 102-2 need not be replaced when the storage device 102-2 is determined to be defective due to the failure of the storage device 102-1. For this reason, the storage processing device 101 can prevent the normal storage device 102-2 from being determined as a failure, and can prevent the data stored in the storage device 102-2 from being lost.
  • FIG. 2 is an explanatory diagram illustrating a system configuration example of the information processing system 200.
  • the information processing system 200 includes a storage processing device 101 and a storage device 102.
  • the information processing system 200 is a RAID system that stores data from a plurality of servers 260.
  • the storage processing device 101 is connected to the storage device 102 through an interface such as Fiber Channel, iSCSI (Small Computer System Interface), SAS (Serial Attached SCSI), or the like.
  • the information processing system 200 may be connected to a plurality of servers 260 via a network 210 such as a LAN (Local Area Network), a WAN (Wide Area Network), and the Internet.
  • a network 210 such as a LAN (Local Area Network), a WAN (Wide Area Network), and the Internet.
  • the storage processing device 101 is a device that determines whether or not the storage device 102 needs to be replaced.
  • the storage processing device 101 is an S.I. M.M. A. R. T.A.
  • S. M.M. A. R. T.A The contents stored in the table 220, the RAID log 230, the status table 240, and the pattern table 250 will be described later with reference to FIGS.
  • the storage processing device 101 can be incorporated in a RAID system having a plurality of storage devices 102. Further, the storage processing device 101 can be an external device of the RAID system. The storage processing device 101 can also be a device that has executed a storage device failure determination program on the server 260.
  • FIG. 3 is a block diagram illustrating a hardware configuration example of the storage processing device 101.
  • the storage processing device 101 includes a CPU (Central Processing Unit) 301, a memory 302, and an I / F (Interface) 303. Each component is connected by a bus 300.
  • CPU Central Processing Unit
  • memory 302 for storing data
  • I / F Interface
  • the CPU 301 controls the entire storage processing apparatus 101.
  • the memory 302 includes, for example, a ROM (Read Only Memory), a RAM (Random Access Memory), a flash ROM, and the like. Specifically, for example, a flash ROM or ROM stores various programs, and the RAM is used as a work area of the CPU 301 as a storage unit. The program stored in the memory 302 is loaded into the CPU 301 to cause the CPU 301 to execute the coded process.
  • the I / F 303 is connected to a network 210 such as a LAN, a WAN, or the Internet through a communication line, and is connected to another computer (for example, the server 260 illustrated in FIG. 3) via the network 210.
  • the I / F 303 controls an internal interface with the network 210 and controls input / output of data from other computers.
  • a modem or a LAN adapter may be employed as the I / F 303.
  • the storage processing device 101 may include, for example, a disk drive, a disk, an SSD, a display, an input device, a scanner, and a printer in addition to the above-described components.
  • FIG. M.M. A. R. T. T. et al. 4 is an explanatory diagram illustrating an example of stored contents of a table 220.
  • FIG. M.M. A. R. T. T. et al. the table 220 is created and updated by the storage processing apparatus 101 and stored in the memory 302 or the disk of the storage processing apparatus 101. Further, in the following description, the storage device 102 may be simply expressed as an HDD.
  • S. M.M. A. R. T.A Table 220 shows the S.D. M.M. A. R. T.A. This is information collected, and is stored in association with the identifier of the HDD. S. M.M. A. R. T.A.
  • the table 220 includes items of ID (Identification), Seek Error Rate, and Reallocation Event Count. S. M.M. A. R. T.A.
  • the table 220 sets the information for each item, so that the S.D. M.M. A. R. T.A. Information (for example, S.M.A.R.T. information 400-1 to 400-3) is stored as a record.
  • S. M.M. A. R. T.A Information is information stored by a self-diagnosis function built in the HDD. Specifically, S.M. M.M. A. R. T.A. Information includes error rate of reading, reading / writing speed, total number of motor start and stop, total energization time since shipment, distance of HDD deviated from fixed position, etc. It is. However, S. M.M. A. R. T.A. Date information is not stored in the information.
  • Seek Error Rate is the S.D of the HDD identified by the ID. M.M. A. R. T.A. Indicates the Seek Error Rate stored in the information.
  • Seek Error Rate is the rate at which the HDD failed to move the magnetic head to the target track.
  • Seek Error Rate is stored in hexadecimal.
  • Reallocation Event Count is the S.D of the HDD identified by the ID. M.M. A. R. T.A. Indicates the Reallocation Event Count stored in the information.
  • the Reallocation Event Count is the number of times the sector replacement process has occurred in the HDD, and is added to the number of times even if the sector replacement process fails.
  • the Reallocation Event Count is stored in hexadecimal.
  • the information stores statistical information other than Seek Error Rate and Reallocation Event Count. M.M. A. R. T.A.
  • the table 220 stores these two pieces of information.
  • the HDD with ID “0” has a failure rate in hexadecimal of 719 when trying to move the magnetic head to the target track, and is the number of times sector replacement processing has occurred. Indicates zero.
  • FIG. 5 is an explanatory diagram showing an example of the contents stored in the RAID log 230.
  • the RAID log 230 of the storage processing device 101 is created and updated by, for example, the storage processing device 101 and stored in the memory 302 or the disk of the storage processing device 101.
  • the RAID log 230 is information obtained by collecting error events that occur in RAID from logs stored in the RAID controller.
  • the RAID log 230 has items of date and time, HDD mounting position, and error event.
  • the RAID log 230 stores RAID log information (for example, RAID log information 500-1 to 500-8) as a record by setting information in each item.
  • the RAID controller is a device that performs RAID level control, parity, disk management, and the like in a RAID configuration.
  • the RAID controller has a hardware method and a software method.
  • HBA host bus adapter
  • HBA host bus adapter
  • a RAID function is realized by a driver, firmware, or the like as existing bus control software.
  • buses there are P-ATA (Parallel-ATA (Advanced Technology Attachment)), S-ATA (Serial-ATA), SAS, and the like.
  • the date and time indicate the date and time when the RAID controller collected logs.
  • the date and time is indicated by month, day, hour, minute, and second.
  • the year may be included in the date and time.
  • the HDD mounting position indicates the position of the slot in which the HDD configuring the RAID is mounted, and the HDD mounting position is also an identifier for identifying the HDD configuring the RAID.
  • error event indicates an error that has occurred in the RAID controller and the HDD constituting the RAID.
  • Error events include, for example, Mechanical positioning error, Reassign write operation failed, Status Change to Failed, and the like.
  • the mechanical positioning error is recorded when the magnetic head in the HDD constituting the RAID fails to move to the target track.
  • the mechanical positioning error is generated due to a failure of the head seek mechanism or the heat of the HDD.
  • “Resign write write failed” is recorded when the allocation process to the alternate sector fails.
  • Status Change to Failed is recorded when the allocation process to the alternate sector fails, data cannot be written to the HDD, and the RAID controller determines that the HDD is faulty.
  • record 500-1 indicates that a mechanical positioning error occurred in the HDD installed in the first slot at 2:54:39 on June 5.
  • FIG. 6 is an explanatory diagram showing an example of the contents stored in the state table 240.
  • the state table 240 of the storage processing device 101 is created and updated by the storage processing device 101, for example, and stored in the memory 302 or the disk of the storage processing device 101.
  • Status table 240 is S.D. M.M. A. R. T.A. This information is created based on the table 220 and the RAID log 230, and is information in which error events of the RAID log 230 are arranged in time series.
  • the status table 240 has items of date and time, error event for each RAID log, and Seek Error Rate and Reallocation Event Count for each HDD.
  • the state table 240 stores state information (for example, state information 600-1 to 600-6) as a record by setting information for each item.
  • ID indicates an identifier for identifying a record in the state table.
  • the date / time indicates the date / time of the RAID log 230.
  • the error event indicates an error event in the RAID log 230.
  • Seek Error Rate is the S.E. M.M. A. R. T.A.
  • the Seek Error Rate of the table 220 is shown.
  • Reallocation Event Count is the S.D. M.M. A. R. T.A.
  • the Reallocation Event Count of the table 220 is shown.
  • the record 600-1 is a record created based on the record 500-1 of the RAID log 230. Seek Error Rate shows information collected from HDD0 installed in slot 0, HDD1 installed in slot 1, HDD2 installed in slot 2 at 2:54:39 on June 5 . The same applies to the Reallocation Event Count.
  • FIG. 7 is an explanatory diagram showing an example of the contents stored in the pattern table 250.
  • the pattern table 250 of the storage processing device 101 is created and updated by, for example, the storage processing device 101 and stored in the memory 302 or the disk of the storage processing device 101.
  • the pattern table 250 is information that is created based on the state table 240 and determines whether or not it is necessary to replace the HDD that has been determined to have failed. Specifically, the state table 240 is created based on the state table 240 stored after the failure time of the HDD that is determined to have failed first.
  • the pattern table 250 has items of “Resign write write operation”, “Mechanical positioning error”, and “Status Change to Failed” for each HDD. Further, the pattern table 250 has items of Reallocation Event and Seek Error for each HDD.
  • the pattern table 250 stores pattern information (for example, pattern information 700-1 to 700-6) as records by setting information for each item.
  • “Rewrite write operation failed” or “Mechanical positioning error” indicates whether or not these error events have occurred in the error event of the RAID log 230 for each HDD. For example, “occurrence” is set when it occurs, and blank is set when it does not occur.
  • Status Change to Failed indicates whether or not this error event has occurred in the error event of the RAID log 230. For example, “occurrence” is set when it occurs, and blank is set when it does not occur.
  • the Reallocation Event indicates whether the Reallocation Event Count in the status table 240 is increasing for each HDD. For example, “increase” is set when increasing, and “no increase” is set when not increasing. Here, whether or not it is increasing can be determined by whether or not the Reallocation Event Count is increasing from the first record to the last record in the status table 240.
  • “Seek Error” indicates whether or not the “Seek Error Rate” in the state table 240 is increasing. For example, “increase” is set when increasing, and “no increase” is set when not increasing. Here, whether or not it is increasing can be determined by whether or not the Seek Error Rate is increasing from the first record to the last record in the status table 240.
  • the Seek Error can be set for the HDD in which the Reallocation Event Count is increasing. In other words, it is not necessary to set the Seek Error for HDDs for which the Reallocation Event Count has not increased. This is because the seek error of the HDD in which the reallocation event count has not increased is not used to determine whether or not the HDD needs to be replaced.
  • the pattern table 250 is S.I. M.M. A. R. T.A. It can also be created based on the table 220 and the RAID log 230. In this case, S.I. M.M. A. R. T.A. Since there is no date / time information in the table 220, the storage processing device 101 cannot determine the increase in Reallocation Event and Seek Error. For this reason, “occurring” or “not occurring” is set in Reallocation Event and Seek Error. For example, the storage processing device 101 is configured as S.I. M.M. A. R. T.A. When the Reallocation Event Count of the table 220 is “0”, “no occurrence” is set, and when it is a value other than “0”, “occurrence” is set. The storage processing device 101 sets the Seek Error in the same manner.
  • the record 700-1 indicates that a Rewrite write operation failed or a mechanical positioning error occurred on the HDD 1 at 2:55:35 on June 5. Further, it is indicated that there is no increase in Reallocation Event Count in HDD0 and HDD2, and there is an increase in Reallocation Event Count in HDD1. It also indicates that there is an increase in Seek Error Rate in HDD1.
  • FIG. 8 is a block diagram illustrating a functional configuration example of the storage processing device 101.
  • the storage processing apparatus 101 includes an input unit 801, a specification unit 802, a determination unit 803, and a display unit 804.
  • the function is realized by causing the CPU 301 to execute the function.
  • the processing result of each functional unit is stored in, for example, a storage device such as the memory 302 illustrated in FIG.
  • the input unit 801 reads the RAID log from the RAID controller and reads the S.D. M.M. A. R. T.A. It has a function to read information. For example, the input unit 801 can read the RAID log from the RAID controller every time the RAID controller updates the RAID log. The input unit 801 stores the read RAID log in the RAID log 230. At this time, the input unit 801 can store the read RAID log error event in the RAID log 230.
  • the input unit 801 reads the read S.P. M.M. A. R. T.A.
  • the information M.M. A. R. T.A. Store in table 220.
  • the input unit 801 receives S.D. M.M. A. R. T.A. Information can be read.
  • the input unit 801 displays the read RAID log and the S.D. M.M. A. R. T.A.
  • the record of the state table 240 is added from the information.
  • the storage processing device 101 includes a RAID log and an S.D. M.M. A. R. T.A. Information can be read using a RAID controller, an HDD debugging interface, or a data input / output interface.
  • a data input / output interface in the case of a RAID controller, there are PCI (Peripheral Component Interconnect) Express, PCI, USB (Universal Serial Bus), and the like.
  • PCI Peripheral Component Interconnect
  • USB Universal Serial Bus
  • HDD there are SAS, S-ATA, SCSI, IDE (Integrated Drive Electronics), etc. as data input / output interfaces.
  • the specifying unit 802 has a function of specifying the time when the HDD first failed and specifying the records in the state table 240 after the specified time.
  • the specifying unit 802 can also create the pattern table 250 with the specified record.
  • the determination unit 803 has a function of determining whether or not it is necessary to replace an HDD that has been determined to be defective after the failure of the first failed HDD. For example, when all of the following conditions are satisfied in the pattern table 250, the determination unit 803 determines that replacement of an HDD whose Reallocation Event has not increased is unnecessary. If any of the conditions is not satisfied, the determination unit 803 determines that it is necessary to replace the HDD in which “occurrence” is set in the item of “Resign write operation failed” or “Mechanical positioning error”.
  • “Occurrence” is set in the item of “Rewrite write operation failed” or “Mechanical positioning error” in the pattern table 250.
  • the number of HDDs for which Reallocation Event Count has increased is one.
  • a Rewrite write operation failed or Mechanical positioning error has occurred on an HDD for which the Reallocation Event Count has not increased.
  • the determination unit 803 indicates that the pattern table 250 is S.P. M.M. A. R. T.A. When created based on the table 220 and the RAID log 230, it can be determined as follows. For example, when all of the following conditions are satisfied in the pattern table 250, the determination unit 803 determines that it is not necessary to replace an HDD in which no reallocation event has occurred. If any of the conditions is not satisfied, the determination unit 803 determines that it is necessary to replace the HDD in which “occurring” is set in the item of “Rewrite write operation failed” or “Mechanical positioning error”.
  • “There is occurrence” is set in the item of “Resign write write failed” or “Mechanical positioning error” in the pattern table 250.
  • There is an HDD in which the Seek Error Rate has occurred, and the HDD in which the Seek Error Rate has occurred, and “occurrence occurred” is set in the Reallocation Event item of the pattern table 250.
  • -One HDD has generated a Reallocation Event Count.
  • a Rewrite write operation failed or Mechanical positioning error has occurred in an HDD in which no Reallocation Event Count has occurred.
  • the display unit 804 has a function of displaying the result determined by the determination unit 803. For example, the display unit 804 displays the result on the display of the storage processing device 101 or the display of the server 260 that can communicate with the storage processing device 101. For example, the display unit 804 can display an identifier that identifies the HDD and whether or not the HDD needs to be replaced.
  • FIG. 9 is a flowchart illustrating an example of an information collection processing procedure of the storage processing device 101.
  • the storage processing apparatus 101 reads a RAID log from the RAID controller (step S901).
  • the storage processing device 101 can also store the read RAID log in the RAID log 230.
  • the storage processing device 101 determines whether or not an error event has occurred in the RAID log (step S902).
  • the storage processing apparatus 101 determines that an error event has occurred when the mechanical positioning error and the reassign write operation failed are stored in the RAID log. Further, for example, the storage processing apparatus 101 determines that an error event has occurred when Status Change to Failed is stored in the RAID log.
  • step S902 If no error event has occurred (step S902: No), the processing of the storage processing device 101 returns to step S901. If an error event has occurred (step S902: Yes), the storage processing apparatus 101 receives the S.D. M.M. A. R. T.A. Information is read (step S903). For example, the storage processing device 101 reads the Seek Error Rate and the Reallocation Event Count from all HDDs constituting the RAID. The storage processing device 101 reads the read S.P. M.M. A. R. T.A. The information M.M. A. R. T.A. It can also be stored in the information table 220.
  • the storage processing device 101 adds a record to the state table 240 (step S904).
  • the storage processing apparatus 101 sets the date and time of the RAID log read in step S901 in the date and time item of the status table 240.
  • the storage processing device 101 sets the error event and HDD mounting position of the RAID log read in step S901 in the error event item of the status table 240.
  • the storage processing device 101 reads the S.E.R.Rate item read in step S903 into the item of Seek Error Rate in the status table 240 for each HDD. M.M. A. R. T.A. Set the Seek Error Rate of the information.
  • the storage processing apparatus 101 reads the S.D. data read in step S903 into the Reallocation Event Count item of the status table 240. M.M. A. R. T.A. Set Reallocation Event Count of information.
  • the storage processing device 101 determines whether or not the information collection processing is finished (step S905). For example, the storage processing device 101 determines that the information collection processing is ended when the service provided by the storage processing device 101 ends and the power is turned off.
  • step S905: No If it is determined that the information collection process does not end (step S905: No), the process of the storage processing device 101 returns to step S901. When it is determined that the information collection process is finished (step S905: Yes), the process of the storage processing device 101 is finished.
  • the storage processing apparatus 101 can collect information for determining whether or not it is necessary to replace the HDD determined to have failed.
  • FIG. 10 is a flowchart illustrating an example of the HDD status determination processing procedure of the storage processing device 101.
  • the storage processing apparatus 101 first identifies the time when the HDD first failed (step S1001). For example, the storage processing device 101 identifies the time when “Status Change to Failed” is stored in the RAID log 230.
  • the storage processing device 101 specifies the time of 2:55:35 when the HDD 1 that failed first among the HDDs 0 to 2 failed.
  • the storage processing device 101 specifies the record of the state table 240 after the specified time, and creates the pattern table 250 (step S1002).
  • the storage processing apparatus 101 creates the pattern table 250 from the records 600-1 to 600-6 after the specified time 2:55:35.
  • the storage processing device 101 determines whether or not a Rewrite write operation failed or a mechanical positioning error has occurred (step S1003). For example, the storage processing device 101 determines whether “occurrence” is set in the item of “Resign write write failed” or “Mechanical positioning error” in the pattern table 250.
  • occurrence is set in the items of “Resign write write failed” or “Mechanical positioning error” in HDD 0 to HDD 2. For this reason, the storage processing device 101 determines that a Rewrite write operation failure or a mechanical positioning error has occurred.
  • step S1003 NO
  • the processing of the storage processing device 101 proceeds to step S1009. If it is determined that the error has occurred (step S1003: Yes), the storage processing apparatus 101 determines whether there is an HDD whose seek error has increased (step S1004). For example, the storage processing device 101 determines whether or not “with increase” is set in the item of Seek Error in the pattern table 250.
  • the storage processing apparatus 101 determines that there is an HDD in which Seek Error is increasing.
  • step S1004 determines whether there is an HDD in which the seek error has increased.
  • Step S1005 the storage processing device 101 determines whether or not “with increase” is set in the item of Reallocation Event of the pattern table 250 in the HDD in which the Seek Error has increased.
  • the storage processing device 101 determines that there is an HDD in which the Reallocation Event is increasing. To do.
  • step S1005 If it is determined that there is no HDD whose Reallocation Event has increased (step S1005: No), the processing of the storage processing device 101 proceeds to step S1009. If it is determined that there is an HDD with an increased Reallocation Event (step S1005: Yes), the storage processing apparatus 101 determines whether there is one HDD with an increased Reallocation Event (step S1006). For example, the storage processing device 101 determines whether there is one HDD for which “increase” is set in the item of Reallocation Event of the pattern table 250.
  • the storage processing apparatus 101 determines that there is one HDD for which the Reallocation Event has increased. To do.
  • step S1006 If it is determined that the number of HDDs whose Reallocation Event has increased is not one (step S1006: No), the processing of the storage processing device 101 proceeds to step S1009. When it is determined that the number of HDDs whose Reallocation Event has increased is one (step S1006: Yes), the storage processing device 101 further makes the following determination. The storage processing device 101 determines whether Rewrite write operation failed or Mechanical positioning error has occurred in the HDD in which the Reallocation Event has not increased (Step S1007).
  • Step S1007 If it is determined that the Rewrite write operation failed or Mechanical positioning error has occurred on the HDD whose Reallocation Event has not increased (Step S1007: Yes), the storage processing apparatus 101 determines that the HDD replacement is unnecessary (Step S1007). S1008). Thereafter, the processing of the storage processing device 101 ends.
  • the storage processing device 101 determines that the replacement of HDD0 and HDD2 is unnecessary. This is because the errors in HDD0 and HDD2 are caused by the vibration due to the failure of HDD1, and therefore the errors in HDD0 and HDD2 disappear when the vibration of HDD1 is stopped.
  • Step S1007 If it is determined that the Rewrite write operation failed or Mechanical positioning error has not occurred in the HDD where the Reallocation Event has not increased (Step S1007: No), the storage processing device 101 determines that the HDD needs to be replaced (Step S1007). S1009). Thereafter, the processing of the storage processing device 101 ends.
  • the error that has occurred in the HDD is not caused by the vibration due to the failure of another HDD, and even if the vibration of the other HDD is stopped, the error that has occurred in the HDD does not disappear. It is determined that the replacement is necessary.
  • the storage processing apparatus 101 can determine whether or not it is necessary to replace the HDD determined to have failed.
  • the storage processing apparatus 101 identifies the failure time of the HDD with reference to the state table 240 after the failure of the HDD. Thereafter, the storage processing device 101 specifies a record after the specified failure time in the status table 240 of another HDD determined to have failed after the failure of the HDD. Thereafter, the storage processing apparatus 101 determines whether or not another HDD needs to be replaced based on the specified record.
  • the storage processing apparatus 101 can determine whether or not another HDD needs to be replaced based on the record of the state table 240 stored due to the influence of the HDD failure.
  • the storage processing device 101 can determine that the replacement of another HDD is unnecessary when the record of the state table 240 includes the record stored due to the influence of the failure of the HDD.
  • the storage processing apparatus 101 determines that it is not necessary to replace another HDD, the failed HDD is removed, and the failure status of the HDD that has been determined to be failed due to the vibration of the failed HDD is released and brought online.
  • the RAID configuration can be restored. In this case, data lost due to a failure of a plurality of HDDs can be avoided, and data recovery work for a long time becomes unnecessary. Further, since the HDD determined to be failed is not replaced due to the vibration of the failed HDD, it is possible to reduce the cost of replacement parts.
  • the storage processing apparatus 101 determines that it is not necessary to replace another HDD when the other HDD is determined to be defective due to the influence of the failure of the HDD. For this reason, the storage processing apparatus 101 can prevent a normal HDD from being determined as a failure, and can prevent data stored in the HDD from being lost.
  • the storage processing apparatus 101 determines that the Assign write operation failed or the mechanical positioning error is stored in the RAID log 230. In addition, the storage processing device 101 has the HDD S.P. M.M. A. R. T.A. It is determined that the number of information reallocation events is zero. In this case, the storage processing apparatus 101 can determine that it is not necessary to replace the HDD.
  • the storage processing device 101 determines whether or not the HDD needs to be replaced, the storage device 101 stores the S.D. M.M. A. R. T.A.
  • the storage processing device 101 is configured as S.I. M.M. A. R. T.A. It is not necessary to store information in the memory 301 of the storage processing device 101 or the like.
  • the storage processing device 101 determines that the Rewrite write operation failed or the mechanical positioning error is stored in the state table 240. Furthermore, the storage processing device 101 determines that the number of reallocation events in the state table 240 has not increased. In this case, the storage processing apparatus 101 can determine that it is not necessary to replace the HDD.
  • the storage processing apparatus 101 can determine whether or not the HDD needs to be replaced even for the HDD in which the Reallocation Event is already stored. For example, the Reallocation Event may be stored even if the HDD is normal when used. The storage processing apparatus 101 can determine whether or not the HDD needs to be replaced even in such a system using the HDD.
  • the storage processing device 101 includes the RAID log 230 and the S.E. M.M. A. R. T.A. Since the table 220 is analyzed, it is possible to determine whether or not it is necessary to replace the HDD without making special changes to conventional hardware and software. Further, whether or not the storage processing device 101 is a failure due to the vibration of the failed HDD indicates whether or not the RAID log 230 and the S.E. M.M. A. R. T.A. Since the determination is made according to the table 220, human error is eliminated.
  • the storage device failure determination method described in the present embodiment can be realized by executing a program prepared in advance on a computer such as a personal computer or a workstation.
  • the storage device failure determination program is recorded on a computer-readable recording medium such as a hard disk, a flexible disk, a CD-ROM, an MO, or a DVD, and is executed by being read from the recording medium by the computer.
  • the storage device failure determination program may be distributed via a network such as the Internet.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

記憶処理装置(101)は、記憶装置(102-1)が故障した後に、記憶装置(102-1)のログ情報(111)を参照して記憶装置(102-1)の故障時刻を特定する。この後、記憶処理装置(101)は、記憶装置(102-1)の故障後に故障したと判断された記憶装置(102-2)のログ情報(112)のうち、特定された故障時刻より後のログ情報を特定する。この後、記憶処理装置(101)は、特定されたログ情報に基づき、記憶装置(102-2)の交換の要否を判断する。

Description

記憶処理装置、記憶装置故障判定プログラム、記憶装置故障判定方法および情報処理システム
 本発明は、記憶処理装置、記憶装置故障判定プログラム、記憶装置故障判定方法および情報処理システムに関する。
 複数台のHDD(Hard Disk Drive)を組み合わせることで仮想的な1台のHDDとして運用し、冗長性を向上させるRAID(Redundant Arrays of Inexpensive Disks)技術がある。RAID技術は、主に信頼性および可用性の向上を目的として用いられる。
 RAIDを構成するHDDに故障が発生すると、RAIDコントローラのRAIDログまたはHDDのS.M.A.R.T.(Self-Monitoring,Analysis and Reporting Technology)情報をもとに保守技術員が解析を行い、故障したHDDを交換する。
 先行技術としては、例えば、全HDD内部ログの採取を行い、各HDD内部ログ情報の比較を行って、HDDの故障を予測する技術がある。また、例えば、ディスクの状態をエラー統計情報ファイルに記録し、エラー統計情報ファイルを統計的に分析し、障害発生前に予測交換すべきか否かを判断する技術がある。また、例えば、HDDの使用環境または使用状況の履歴を記録し、記憶した履歴と所定の条件とを比較することで、HDDの異常の有無を判断する技術がある。また、例えば、データアクセスに要する時間と、デバイス装置の状態とに基づいて、HDDの故障要因が外的要因であるか内的要因であるかを判別する技術がある。
特開2008-257411号公報 特開2000-305720号公報 国際公開第2009/040995号 特開2007-241384号公報
 しかしながら、従来技術では、正常な記憶装置を故障と誤判断し、正常な記憶装置を交換されてしまう場合がある。例えば、故障した記憶装置の振動の影響で、他の記憶装置の磁気ヘッドの位置決めが失敗することがある。故障した記憶装置を取り除けば、他の記憶装置は正常に動作するにもかかわらず、磁気ヘッドの位置決めが失敗したことで、他の記憶装置を故障と誤判断して、他の記憶装置が故障していないのに交換されてしまう。
 一つの側面では、本発明は、正常な記憶装置が故障と誤判断されることを防ぐ記憶処理装置、記憶装置故障判定プログラム、記憶装置故障判定方法および情報処理システムを提供することを目的とする。
 本発明の一側面によれば、第1記憶装置が故障した後に、第1記憶装置の第1ログ情報を参照して第1記憶装置の故障時刻を特定し、第1記憶装置の故障後に故障したと判断された第2記憶装置の第2ログ情報のうち、特定された故障時刻より後のログ情報を特定し、特定されたログ情報に基づき、第2記憶装置の交換の要否を判断する記憶処理装置、記憶装置故障判定プログラム、記憶装置故障判定方法および情報処理システムが提案される。
 本発明の一態様によれば、正常な記憶装置が故障と誤判断されることを防ぐという効果を奏する。
図1は、実施の形態にかかる記憶装置故障判定方法の一実施例を示す説明図である。 図2は、情報処理システム200のシステム構成例を示す説明図である。 図3は、記憶処理装置101のハードウェア構成例を示すブロック図である。 図4は、S.M.A.R.T.テーブル220の記憶内容の一例を示す説明図である。 図5は、RAIDログ230の記憶内容の一例を示す説明図である。 図6は、状態テーブル240の記憶内容の一例を示す説明図である。 図7は、パターンテーブル250の記憶内容の一例を示す説明図である。 図8は、記憶処理装置101の機能的構成例を示すブロック図である。 図9は、記憶処理装置101の情報収集処理手順の一例を示すフローチャートである。 図10は、記憶処理装置101のHDD状態判定処理手順の一例を示すフローチャートである。
 以下に図面を参照して、本発明にかかる記憶処理装置、記憶装置故障判定プログラム、記憶装置故障判定方法および情報処理システムの実施の形態を詳細に説明する。
(実施の形態)
 図1は、実施の形態にかかる記憶装置故障判定方法の一実施例を示す説明図である。図1の記憶処理装置101は、記憶装置102の交換の要否を判断する装置である。例えば、記憶処理装置101は、複数の記憶装置102を組み合わせたRAID構成を制御するRAIDコントローラに内蔵されることも可能である。また、記憶装置102は、データを記憶する装置である。例えば、記憶装置102は、HDDである。
 従来、信頼性および可用性の向上のため、複数台の記憶装置を組み合わせることで仮想的な1台の記憶装置として運用し、冗長性を向上させるRAID構成が用いられてきた。RAID構成では、複数台の記憶装置のうちの1台が故障しても、RAID構成に記憶されたデータは失われることはない。
 しかしながら、複数台の記憶装置のうちの1台が故障して、さらに残りの記憶装置のうちの1台が故障した場合、RAID構成に記憶されたデータは失われる場合がある。この場合は、RAID構成の再構築、バックアップからのリカバリ作業を行わなければならず、復旧までに多大な時間を要する。また、最終バックアップ以降にRAID構成に記録されたデータは、失われる。
 ここで、RAID構成の記憶装置のうちの1台が故障して、さらに残りの記憶装置のうちの1台を故障と誤って判断することで、RAID構成に記憶されたデータが失われる場合がある。これ以降、RAID構成の記憶装置の例として、HDDを例に説明する。例えば、3台のHDD(HDD0、HDD1、HDD2)が並べて搭載され、RAID構成が作成された状態において、HDD1がRAIDコントローラからのコマンドに対し、エラーを返したとする。この場合、RAIDコントローラは、RAIDコントローラからのコマンドに対し、エラーを返してきたHDD1を、RAID構成から切り離す。しかし、RAIDコントローラは、HDD1の機械的な動作は停止しない。具体的には、RAIDコントローラは、HDD1に対し、Motor offまたはunit stop等のコマンドを発行しない。
 この時、HDD1の円盤の中心軸、ヘッドの駆動サーボ、それらの制御系等の機械機構に異常があれば、HDD1は、振動を発し、隣接する正常なHDD0およびHDD2に振動を与えることとなる。
 これにより、隣接するHDD0およびHDD2の内部の磁気ヘッドも振動してしまう。HDD0およびHDD2は、振動の影響により磁気ヘッドを正確に磁気媒体上のセクタに位置決めできないため、RAIDコントローラからの書き込み要求に対して、Mechanical positioning errorを通知する。RAIDコントローラは書き込みできなかったデータを代替セクタに記録させるため、Mechanical positioning errorを通知してきたHDD0およびHDD2に対し、交替セクタ処理を指示する。交替セクタ処理を指示したHDD0およびHDD2は、交替セクタ処理を行うが、振動の影響により交替セクタへの位置決めも失敗し、RAIDコントローラにReassign write operation failedを通知する。
 これらの通知を受けたRAIDコントローラは、HDD0およびHDD2が、内部の磁気媒体にエラーの記録および損傷は無く、内部の磁気媒体が正常な状態にあるにもかかわらず、HDD0およびHDD2を故障と判断する。このため、振動の影響を受けた隣接するHDD0およびHDD2も交換されることになる。この場合、HDD0およびHDD2に記憶された救済できるはずのデータは救済できなくなり、RAID構成に記憶されたデータが失われる。
 そこで、実施の形態では、記憶処理装置101は、故障した記憶装置102-1のログ情報から故障時刻を特定し、記憶装置102-1の故障後に故障と判断された記憶装置102-2の交換の要否を、特定した故障時刻より後のログ情報より判断する。これ以降、また、記憶装置102-1、記憶装置102-2のうちの任意の記憶装置を記憶装置102と表記する場合がある。
 ここで、ログ情報とは、記憶処理装置101が記憶する記憶装置102に関する情報である。例えば、ログ情報は、記憶処理装置101が日時、イベントID、状態表示を記録しているログがある。また、ログ情報は、記憶装置102のエラー統計情報であるS.M.A.R.T.情報がある。
 また、故障とは、例えば、記憶装置102にデータを読み書きできなくなる障害が発生することである。例えば、故障には、磁気ヘッドを正確に磁気媒体上のセクタに位置決めできないため、交替セクタ処理を行うが、交替セクタへの位置決めも失敗し、記憶処理装置101がデータを書き込むことができないことがある。
 また、故障と判断されたとは、記憶装置102にデータを読み書きできなくなる障害が発生したことにより、記憶処理装置101が、記憶装置102を故障と判断することである。例えば、記憶処理装置101は、記憶装置102から交替セクタへの位置決めが失敗したことを受け取ると、記憶装置102を故障と判断する。
 また、故障時刻を特定するとは、記憶処理装置101が記憶装置102の故障を認識した時刻を特定することである。例えば、記憶処理装置101は、記憶装置102からReassign write operation failedを受け付けた時刻を故障時刻と特定する。
 以下、実施の形態にかかる記憶装置故障判定方法の一実施例について説明する。図1の例では、記憶処理装置101がRAIDコントローラに内蔵され、複数の記憶装置102でRAIDを構成し、記憶装置102-1が故障した例である。図1では、複数の記憶装置102のうち、記憶装置102-1と記憶装置102-2が図示されている。
 (1)記憶処理装置101は、記憶装置102-1が故障した後に、記憶装置102-1のログ情報111を参照して記憶装置102-1の故障時刻を特定する。例えば、記憶処理装置101は、ログ情報111の中でReassign write operation failedが記憶された時刻を特定する。
 図1の例では、Reassign write operation failedは、5時52分18秒に記憶されるため、記憶処理装置101は、5時52分18秒を記憶装置102-1の故障時刻として特定する。
 (2)記憶処理装置101は、記憶装置102-1の故障後に故障したと判断された記憶装置102-2のログ情報112のうち、故障時刻より後のログ情報を特定する。
 図1の例では、記憶処理装置101は、ログ情報112のうち、故障時刻5時52分18秒より後に記憶されたログ情報を特定する。具体的には、記憶処理装置101は、ログ情報112のうち、6時15分22秒に記憶されたログ情報を特定する。
 (3)記憶処理装置101は、特定されたログ情報に基づき、記憶装置102-2の交換の要否を判断する。例えば、記憶装置102-2の故障は次のように発生する場合がある。故障した記憶装置102-1の機械的な故障による振動が、隣接する記憶装置102-2に伝達される。これにより、記憶装置102-2の内部の磁気ヘッドも振動してしまう。記憶装置102-2は、データを書き込む際、振動の影響により磁気ヘッドを正確に磁気媒体上のセクタに位置決めできないため、記憶処理装置101に対して、Mechanical positioning errorを通知する。記憶処理装置101は、書き込みできなかったデータを代替セクタに記録させるため、記憶装置102-2に、交替セクタ処理を指示する。記憶装置102-2は、振動の影響により交替セクタへの位置決めも失敗し、記憶処理装置101にReassign write operation failedを通知する。
 ここで、記憶装置102-2のS.M.A.R.T.情報のReallocation Event Countは、セクタの交替処理が発生した回数を示し、記憶装置102-2の指示により、セクタの交替処理が行われた場合に記憶される。振動の影響により交替セクタへの位置決めが失敗した場合は、磁気媒体のエラーにより書き込みが失敗しているわけではないため、記憶装置102-2のReallocation Event Countは増加しない。
 このため、記憶処理装置101は、特定されたログ情報に、Reassign write operation failedまたはMechanical positioning errorが記録されるか否かを判断する。
 記憶されている場合、記憶処理装置101は、ログ情報112に、Reallocation Event Countが増加しないか否かを判断する。記憶処理装置101は、記憶されかつ増加しない場合、記憶処理装置101は、記憶装置102-1の振動の影響により交替セクタへの位置決めが失敗し、書き込みに失敗したと判断する。この場合、記憶装置102-1を交換すれば、記憶装置102-2は、振動の影響を受けず、正常に動作するため、記憶処理装置101は、記憶装置102-2の交換を不要と判断する。
 図1の例では、記憶処理装置101は、特定されたログ情報に、Reassign write operation failedおよびMechanical positioning errorが記録されると判断する。また、特定されたログ情報にReallocation Event Countは、2回記憶され、どちらも1である。このため、記憶処理装置101は、特定されたログ情報のReallocation Event Countが増加しないと判断する。このため、記憶処理装置101は、記憶装置102-2の交換を不要と判断する。
 以上説明したように、記憶処理装置101は、記憶装置102-1が故障した後に、記憶装置102-1のログ情報111を参照して記憶装置102-1の故障時刻を特定する。この後、記憶処理装置101は、記憶装置102-1の故障後に故障したと判断された記憶装置102-2のログ情報112のうち、特定された故障時刻より後のログ情報を特定する。この後、記憶処理装置101は、特定されたログ情報に基づき、記憶装置102-2の交換の要否を判断する。
 これにより、記憶処理装置101は、記憶装置102-1の故障の影響により記憶されたログ情報に基づき、記憶装置102-2の交換の要否を判断できる。記憶処理装置101は、記憶装置102-1の故障の影響により、記憶装置102-2が故障と判断された場合、記憶装置102-2の交換をしなくてもよいと判断する。このため、記憶処理装置101は、正常な記憶装置102-2を故障と判断することを防ぎ、記憶装置102-2に記憶されるデータが消失することを防ぐことができる。
(情報処理システム200のシステム構成例)
 図2は、情報処理システム200のシステム構成例を示す説明図である。図2において、情報処理システム200は、記憶処理装置101と、記憶装置102と、を含む。情報処理システム200は、複数のサーバ260からデータを記憶するRAIDシステムである。記憶処理装置101は、例えば、FibreChannel、iSCSI(Small Computer System Interface)、SAS(Serial Attached SCSI)等のインターフェースで記憶装置102に接続される。また、情報処理システム200は、例えば、LAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどのネットワーク210を介して複数のサーバ260に接続されてもよい。
 記憶処理装置101は、記憶装置102の交換の要否を判断する装置である。記憶処理装置101は、S.M.A.R.T.テーブル220、RAIDログ230、状態テーブル240およびパターンテーブル250を有する。図1に示したログ情報111、ログ情報112は、S.M.A.R.T.テーブル220およびRAIDログ230に対応する。S.M.A.R.T.テーブル220、RAIDログ230、状態テーブル240およびパターンテーブル250の記憶内容については、図4~図7を用いて後述する。
 また、記憶処理装置101は、複数の記憶装置102を有するRAIDシステムに内蔵することも可能である。また、記憶処理装置101は、RAIDシステムの外付けの装置とすることも可能である。また、記憶処理装置101は、サーバ260上で記憶装置故障判定プログラムを実行した装置とすることも可能である。
(記憶処理装置101のハードウェア構成例)
 図3は、記憶処理装置101のハードウェア構成例を示すブロック図である。図3において、記憶処理装置101は、CPU(Central Processing Unit)301と、メモリ302と、I/F(Interface)303と、を有する。また、各構成部は、バス300によってそれぞれ接続される。
 ここで、CPU301は、記憶処理装置101の全体の制御を司る。メモリ302は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMは記憶部としてCPU301のワークエリアとして使用される。メモリ302に記憶されるプログラムは、CPU301にロードされることで、コーディングされている処理をCPU301に実行させる。
 I/F303は、通信回線を通じてLAN、WAN、インターネットなどのネットワーク210に接続され、ネットワーク210を介して他のコンピュータ(例えば、図3に記載のサーバ260)に接続される。そして、I/F303は、ネットワーク210と内部のインターフェースを司り、他のコンピュータからのデータの入出力を制御する。I/F303には、例えば、モデムやLANアダプタなどを採用することができる。
 また、記憶処理装置101は、上述した構成部のほか、例えば、ディスクドライブ、ディスク、SSD、ディスプレイ、入力装置、スキャナ、プリンタなどを有することにしてもよい。
(S.M.A.R.T.テーブル220の記憶内容の一例)
 図4は、S.M.A.R.T.テーブル220の記憶内容の一例を示す説明図である。図4において、記憶処理装置101のS.M.A.R.T.テーブル220は、例えば、記憶処理装置101によって作成、更新され、記憶処理装置101のメモリ302またはディスクに記憶される。また、これ以降の記載において、記憶装置102を、単にHDDと表現することもある。
 S.M.A.R.T.テーブル220は、HDDのS.M.A.R.T.情報を収集した情報であり、HDDの識別子と対応付けて記憶する。S.M.A.R.T.テーブル220は、ID(Identification)、Seek Error RateおよびReallocation Event Countの項目を有する。S.M.A.R.T.テーブル220は、各項目に情報を設定することで、S.M.A.R.T.情報(例えば、S.M.A.R.T.情報400-1~400-3)をレコードとして記憶する。
 ここで、S.M.A.R.T.情報とは、HDDに内蔵された自己診断機能により、記憶された情報である。具体的には、S.M.A.R.T.情報は、読み取りエラーの発生率、読み書き速度、モーターの起動および停止の通算回数、出荷以来の通算の通電時間、HDDが固定位置からずれた距離などを測定して、記憶したHDDのエラー統計情報である。ただし、S.M.A.R.T.情報には、日時情報は記憶されない。
 ここで、IDとは、HDDを識別するための識別子を示す。また、Seek Error Rateは、IDで識別されるHDDのS.M.A.R.T.情報に記憶されたSeek Error Rateを示す。ここで、Seek Error Rateとは、HDDが磁気ヘッドを目的のトラックへ移動しようとして失敗した割合である。ここで、Seek Error Rateは、16進数で記憶される。
 また、Reallocation Event Countは、IDで識別されるHDDのS.M.A.R.T.情報に記憶されたReallocation Event Countを示す。ここで、Reallocation Event Countとは、HDDにおいて、セクタの交替処理が発生した回数であり、セクタの交替処理に失敗しても回数に加算される。ここで、Reallocation Event Countは、16進数で記憶される。
 また、HDDのS.M.A.R.T.情報は、Seek Error RateおよびReallocation Event Count以外の統計情報を記憶するが、記憶処理装置101は、S.M.A.R.T.テーブル220にこの2つの情報を記憶する。
 図4の例では、レコード400-1は、ID「0」のHDDは、磁気ヘッドを目的のトラックへ移動しようとして失敗した割合が16進数で、719であり、セクタの交替処理が発生した回数が0回であることを示す。
(RAIDログ230の記憶内容の一例)
 図5は、RAIDログ230の記憶内容の一例を示す説明図である。図5において、記憶処理装置101のRAIDログ230は、例えば、記憶処理装置101によって作成、更新され、記憶処理装置101のメモリ302またはディスクに記憶される。
 RAIDログ230は、RAIDコントローラに記憶されたログからRAIDで発生したエラー事象を収集した情報である。RAIDログ230は、日時、HDD搭載位置およびエラー事象の項目を有する。RAIDログ230は、各項目に情報を設定することで、RAIDログ情報(例えば、RAIDログ情報500-1~500-8)をレコードとして記憶する。
 ここで、RAIDコントローラとは、RAID構成において、RAIDレベルの制御、パリティ、ディスクの管理等を行う装置である。RAIDコントローラには、ハードウェア方式とソフトウェア方式がある。ハードウェア方式には、HBA(ホスト・バス・アダプタ)に組み込まれている場合、ストレージのハードウェアに組み込まれている場合があり、制御チップとして搭載される。また、ソフトウェア方式では、既存のバスの制御ソフトウェアとして、ドライバ、ファームウェアなどによりRAID機能が実現される。また、バスとして、P-ATA(Parallel-ATA(Advanced Technology Attachment))、S-ATA(Serial-ATA)、SAS等がある。
 ここで、日時は、RAIDコントローラがログを収集した日付と時間を示す。例えば、日時は、月日時間分秒で示される。また、日時に、年が含まれていてもよい。HDD搭載位置は、RAIDを構成するHDDが搭載されるスロットの位置を示し、HDD搭載位置は、RAIDを構成するHDDを識別するための識別子でもある。
 また、エラー事象は、RAIDコントローラおよびRAIDを構成するHDDで発生したエラーを示す。エラー事象には、例えば、Mechanical positioning error、Reassign write operation failed、Status Change to Failed等がある。
 ここで、Mechanical positioning errorは、RAIDを構成するHDDにおいて、磁気ヘッドが目的のトラックへ移動しようとして失敗した場合に記録される。例えば、Mechanical positioning errorは、ヘッドのシーク機構の故障やHDDの熱などによって発生する。また、Reassign write operation failedは、交替セクタへの割当処理に失敗した場合に記録される。Status Change to Failedは、交替セクタへの割当処理に失敗し、HDDにデータを書き込みできなくなり、RAIDコントローラが、HDDを故障と判断した場合に記録される。
 図5の例では、レコード500-1は、6月5日2時54分39秒に、1番目のスロットに搭載されたHDDで、Mechanical positioning errorが発生したことを示す。
(状態テーブル240の記憶内容の一例)
 図6は、状態テーブル240の記憶内容の一例を示す説明図である。図6において、記憶処理装置101の状態テーブル240は、例えば、記憶処理装置101によって作成、更新され、記憶処理装置101のメモリ302またはディスクに記憶される。
 状態テーブル240は、S.M.A.R.T.テーブル220とRAIDログ230に基づいて作成され、RAIDログ230のエラー事象を時系列に並べた情報である。状態テーブル240は、RAIDログごとに日時、エラー事象、HDDごとにSeek Error RateおよびReallocation Event Countの項目を有する。状態テーブル240は、各項目に情報を設定することで、状態情報(例えば、状態情報600-1~600-6)をレコードとして記憶する。
 ここで、IDは、状態テーブルのレコードを識別する識別子を示す。日時は、RAIDログ230の日時を示す。エラー事象は、RAIDログ230のエラー事象を示す。Seek Error Rateは、当該レコードの日時におけるS.M.A.R.T.テーブル220のSeek Error Rateを示す。Reallocation Event Countは、当該レコードの日時におけるS.M.A.R.T.テーブル220のReallocation Event Countを示す。
 図6の例では、レコード600-1は、RAIDログ230のレコード500-1に基づいて作成されたレコードである。Seek Error Rateは、6月5日2時54分39秒に、RAID装置のスロット0に搭載されたHDD0、スロット1に搭載されたHDD1、スロット2に搭載されたHDD2から収集された情報を示す。Reallocation Event Countについても、同様である。
(パターンテーブル250の記憶内容の一例)
 図7は、パターンテーブル250の記憶内容の一例を示す説明図である。図7において、記憶処理装置101のパターンテーブル250は、例えば、記憶処理装置101によって作成、更新され、記憶処理装置101のメモリ302またはディスクに記憶される。
 パターンテーブル250は、状態テーブル240に基づいて作成され、故障したと判断されたHDDの交換の要否を判断するための情報である。具体的には、状態テーブル240は、最初に故障したと判断されたHDDの故障時刻より後に記憶された状態テーブル240に基づいて作成される。パターンテーブル250は、HDDごとに、Reassign write operation failedまたはMechanical positioning error、Status Change to Failedの項目を有する。また、パターンテーブル250は、HDDごとに、Reallocation Event、Seek Errorの項目を有する。パターンテーブル250は、各項目に情報を設定することで、パターン情報(例えば、パターン情報700-1~700-6)をレコードとして記憶する。
 ここで、Reassign write operation failedまたはMechanical positioning errorは、HDDごとに、RAIDログ230のエラー事象にこれらのエラー事象が、発生したか否かを示す。例えば、発生した場合、「発生」が設定され、発生しない場合、空白が設定される。また、Status Change to Failedは、RAIDログ230のエラー事象にこのエラー事象が、発生したか否かを示す。例えば、発生した場合、「発生」が設定され、発生しない場合、空白が設定される。
 また、Reallocation Eventは、HDDごとに、状態テーブル240のReallocation Event Countが増加しているか否かを示す。例えば、増加している場合、「増加あり」、増加していない場合、「増加なし」が設定される。ここで、増加しているか否かは、状態テーブル240において、最初のレコードから最後のレコードまで、Reallocation Event Countが増加しているか否かで判断することができる。
 Seek Errorは、状態テーブル240のSeek Error Rateが増加しているか否かを示す。例えば、増加している場合、「増加あり」、増加していない場合、「増加なし」が設定される。ここで、増加しているか否かは、状態テーブル240において、最初のレコードから最後のレコードまで、Seek Error Rateが増加しているか否かで判断することができる。
 ここで、Seek Errorは、Reallocation Event Countが増加しているHDDに対して、設定することができる。言い換えれば、Reallocation Event Countが増加していないHDDに対して、Seek Errorを設定しなくてもよい。これは、Reallocation Event Countが増加していないHDDのSeek Errorは、HDDの交換の要否を判断するために使用しないためである。
 また、パターンテーブル250は、S.M.A.R.T.テーブル220とRAIDログ230に基づいて作成されることもできる。この場合、S.M.A.R.T.テーブル220に日時の情報がないため、記憶処理装置101は、Reallocation EventとSeek Errorの増加を判断できない。このため、Reallocation EventとSeek Errorには、「発生あり」または「発生なし」が設定される。例えば、記憶処理装置101は、S.M.A.R.T.テーブル220のReallocation Event Countが「0」の場合、「発生なし」を設定し、「0」以外の値の場合、「発生あり」を設定する。記憶処理装置101は、Seek Errorについても同様に設定する。
 図7の例では、レコード700-1は、6月5日2時55分35秒に、HDD1でReassign write operation failedまたはMechanical positioning errorが発生したことを示す。また、HDD0およびHDD2で、Reallocation Event Countの増加がなく、HDD1でReallocation Event Countの増加があることを示す。また、HDD1でSeek Error Rateの増加があることを示す。
(記憶処理装置101の機能的構成例)
 図8は、記憶処理装置101の機能的構成例を示すブロック図である。図8において記憶処理装置101は、入力部801と、特定部802と、判断部803と、表示部804と、を含む構成である。入力部801と、特定部802と、判断部803と、表示部804と、を含む制御部は、具体的には、例えば、図3に示したメモリ302などの記憶装置に記憶されたプログラムをCPU301に実行させることにより、その機能を実現する。各機能部の処理結果は、例えば、図3に示したメモリ302などの記憶装置に記憶される。
 入力部801は、RAIDコントローラからRAIDログを読み込み、HDDからS.M.A.R.T.情報を読み込む機能を有する。例えば、入力部801は、RAIDコントローラがRAIDログを更新するごとにRAIDコントローラからRAIDログを読み込むことができる。また、入力部801は、読み込んだRAIDログをRAIDログ230に記憶する。この際、入力部801は、読み込んだRAIDログのエラー事象をRAIDログ230に記憶することもできる。
 また、例えば、入力部801は、読み込んだS.M.A.R.T.情報をS.M.A.R.T.テーブル220に記憶する。また、入力部801は、読み込んだRAIDログにエラー事象が発生した場合、HDDからS.M.A.R.T.情報を読み込むことができる。この場合、入力部801は、読み込んだRAIDログとS.M.A.R.T.情報とから状態テーブル240のレコードを追加する。
 また、記憶処理装置101は、RAIDログとS.M.A.R.T.情報をRAIDコントローラやHDDのDebug用インターフェースや、データの入出力インターフェースを利用して読み込むことができる。データの入出力インターフェースとして、RAIDコントローラの場合、PCI(Peripheral Component Interconnect) Express、PCI、USB(Universal Serial Bus)などがある。データの入出力インターフェースとして、HDDの場合、SAS、S-ATA、SCSI、IDE(Integrated Drive Electronics)などがある。
 特定部802は、HDDが最初に故障した時刻を特定して、特定した時刻以降の状態テーブル240のレコードを特定する機能を有する。また、特定部802は、特定したレコードでパターンテーブル250を作成することもできる。
 判断部803は、最初に故障したHDDの故障後に故障と判断されたHDDの交換の要否を判断する機能を有する。例えば、判断部803は、パターンテーブル250において、以下の条件をすべて満たす場合、Reallocation Eventが増加していないHDDの交換を不要と判断する。また、いずれかの条件を満たさない場合、判断部803は、Reassign write operation failedまたはMechanical positioning errorの項目に「発生」が設定されているHDDの交換を要と判断する。
・パターンテーブル250のReassign write operation failedまたはMechanical positioning errorの項目に「発生」が設定されている。
・Seek Error Rateが増加しているHDDはあり、Seek Error Rateが増加したHDDで、パターンテーブル250のReallocation Eventの項目に「増加あり」が設定されている。
・Reallocation Event Countが増加したHDDは1台である。
・Reallocation Event Countが増加していないHDDで、Reassign write operation failedまたはMechanical positioning errorが発生している。
 また、例えば、判断部803は、パターンテーブル250が、S.M.A.R.T.テーブル220とRAIDログ230に基づいて作成された場合、以下のように判断できる。例えば、判断部803は、パターンテーブル250において、以下の条件をすべて満たす場合、Reallocation Eventが発生していないHDDの交換を不要と判断する。また、いずれかの条件を満たさない場合、判断部803は、Reassign write operation failedまたはMechanical positioning errorの項目に「発生あり」が設定されているHDDの交換を要と判断する。
・パターンテーブル250のReassign write operation failedまたはMechanical positioning errorの項目に「発生あり」が設定されている。
・Seek Error Rateが発生しているHDDはあり、Seek Error Rateが発生したHDDで、パターンテーブル250のReallocation Eventの項目に「発生あり」が設定されている。
・Reallocation Event Countが発生したHDDは1台である。
・Reallocation Event Countが発生していないHDDで、Reassign write operation failedまたはMechanical positioning errorが発生している。
 表示部804は、判断部803が判断した結果を表示する機能を有する。例えば、表示部804は、記憶処理装置101のディスプレイまたは記憶処理装置101と通信可能なサーバ260のディスプレイに結果を表示する。例えば、表示部804は、HDDを特定する識別子と、当該HDDの交換の要否を表示することができる。
(記憶処理装置101の情報収集処理手順の一例)
 図9は、記憶処理装置101の情報収集処理手順の一例を示すフローチャートである。図9において、まず、記憶処理装置101は、RAIDコントローラからRAIDログを読み込む(ステップS901)。記憶処理装置101は、読み込んだRAIDログをRAIDログ230に記憶することもできる。次に、記憶処理装置101は、RAIDログにエラー事象が発生しているか否かを判断する(ステップS902)。
 例えば、記憶処理装置101は、RAIDログに、Mechanical positioning error、Reassign write operation failedが記憶されている場合、エラー事象が発生していると判断する。また、例えば、記憶処理装置101は、RAIDログに、Status Change to Failedが記憶されている場合、エラー事象が発生していると判断する。
 エラー事象が発生していない場合(ステップS902:No)、記憶処理装置101の処理は、ステップS901に戻る。エラー事象が発生している場合(ステップS902:Yes)、記憶処理装置101は、HDDからS.M.A.R.T.情報を読み込む(ステップS903)。例えば、記憶処理装置101は、RAIDを構成するすべてのHDDからSeek Error RateおよびReallocation Event Countを読み込む。記憶処理装置101は、読み込んだS.M.A.R.T.情報をS.M.A.R.T.情報テーブル220に記憶することもできる。
 この後、記憶処理装置101は、状態テーブル240にレコードを追加する(ステップS904)。例えば、記憶処理装置101は、状態テーブル240の日時の項目に、ステップS901で読み込んだRAIDログの日時を設定する。また、例えば、記憶処理装置101は、状態テーブル240のエラー事象の項目に、ステップS901で読み込んだRAIDログのエラー事象とHDD搭載位置を設定する。
 また、例えば、記憶処理装置101は、HDDごとに、状態テーブル240のSeek Error Rateの項目に、ステップS903で読み込んだS.M.A.R.T.情報のSeek Error Rateを設定する。例えば、記憶処理装置101は、HDDごとに、状態テーブル240のReallocation Event Countの項目に、ステップS903で読み込んだS.M.A.R.T.情報のReallocation Event Countを設定する。
 その後、記憶処理装置101は、情報収集処理が終了するか否かを判断する(ステップS905)。例えば、記憶処理装置101は、記憶処理装置101が提供するサービスが終了して、電源をオフされる際に情報収集処理が終了すると判断する。
 情報収集処理が終了しないと判断した場合(ステップS905:No)、記憶処理装置101の処理は、ステップS901に戻る。情報収集処理が終了すると判断した場合(ステップS905:Yes)、記憶処理装置101の処理は、終了する。
 これにより、本フローチャートにおける一連の処理は終了する。本フローチャートを実行することで、記憶処理装置101は、故障したと判断されたHDDの交換の要否を判断するための情報を収集することができる。
(HDD状態判定処理手順の一例)
 図10は、記憶処理装置101のHDD状態判定処理手順の一例を示すフローチャートである。図10において、まず、記憶処理装置101は、HDDが最初に故障した時刻を特定する(ステップS1001)。例えば、記憶処理装置101は、RAIDログ230にStatus Change to Failedが記憶された時刻を特定する。
 図6の例では、記憶処理装置101は、HDD0~2の中で最初に故障したHDD1の故障した時刻2時55分35秒を特定する。
 この後、記憶処理装置101は、特定した時刻以降の状態テーブル240のレコードを特定して、パターンテーブル250を作成する(ステップS1002)。
 図6の例では、記憶処理装置101は、特定した時刻2時55分35秒以降のレコード600-1~600-6からパターンテーブル250を作成する。
 この後、記憶処理装置101は、Reassign write operation failedまたはMechanical positioning errorが発生しているか否かを判断する(ステップS1003)。例えば、記憶処理装置101は、パターンテーブル250のReassign write operation failedまたはMechanical positioning errorの項目に「発生」が設定されているかで判断する。
 図7の例では、HDD0~HDD2にReassign write operation failedまたはMechanical positioning errorの項目に「発生」が設定されている。このため、記憶処理装置101は、Reassign write operation failedまたはMechanical positioning errorが発生していると判断する。
 発生していないと判断した場合(ステップS1003:No)、記憶処理装置101の処理は、ステップS1009に移行する。発生していると判断した場合(ステップS1003:Yes)、記憶処理装置101は、Seek Errorが増加しているHDDはあるか否かを判断する(ステップS1004)。例えば、記憶処理装置101は、パターンテーブル250のSeek Errorの項目に「増加あり」が設定されているか否かで判断する。
 図7の例では、HDD1のSeek Errorの項目に「増加あり」が設定されているため、記憶処理装置101は、Seek Errorが増加しているHDDはあると判断する。
 Seek Errorが増加しているHDDはないと判断した場合(ステップS1004:No)、記憶処理装置101の処理は、ステップS1009に移行する。Seek Errorが増加しているHDDはあると判断した場合(ステップS1004:Yes)、記憶処理装置101は、Seek Errorが増加したHDDで、Reallocation Eventが増加しているHDDはあるか否かを判断する(ステップS1005)。例えば、記憶処理装置101は、Seek Errorが増加したHDDで、パターンテーブル250のReallocation Eventの項目に「増加あり」が設定されているか否かで判断する。
 図7の例では、Seek Errorが増加しているHDD1で、Reallocation Eventの項目に「増加あり」が設定されているため、記憶処理装置101は、Reallocation Eventが増加しているHDDはあると判断する。
 Reallocation Eventが増加しているHDDはないと判断した場合(ステップS1005:No)、記憶処理装置101の処理は、ステップS1009に移行する。Reallocation Eventが増加しているHDDはあると判断した場合(ステップS1005:Yes)、記憶処理装置101は、Reallocation Eventが増加したHDDは1台であるか否かを判断する(ステップS1006)。例えば、記憶処理装置101は、パターンテーブル250のReallocation Eventの項目に「増加あり」が設定されているHDDが1台であるか否かで判断する。
 図7の例では、パターンテーブル250のReallocation Eventの項目に「増加あり」が設定されているHDDが1台あるため、記憶処理装置101は、Reallocation Eventが増加したHDDは1台であると判断する。
 Reallocation Eventが増加したHDDは1台でないと判断した場合(ステップS1006:No)、記憶処理装置101の処理は、ステップS1009に移行する。Reallocation Eventが増加したHDDは1台であると判断した場合(ステップS1006:Yes)、記憶処理装置101は、さらに以下の判断を行う。記憶処理装置101は、Reallocation Eventが増加していないHDDで、Reassign write operation failedまたはMechanical positioning errorが発生しているか否かを判断する(ステップS1007)。
 図7の例では、Reallocation Eventが増加していないHDD0およびHDD2で、Reassign write operation failedまたはMechanical positioning errorが発生している。このため、記憶処理装置101は、Reallocation Eventが増加していないHDDで、Reassign write operation failedまたはMechanical positioning errorが発生していると判断する。
 Reallocation Eventが増加していないHDDで、Reassign write operation failedまたはMechanical positioning errorが発生していると判断した場合(ステップS1007:Yes)、記憶処理装置101は、HDDの交換を不要と判断する(ステップS1008)。この後、記憶処理装置101の処理は、終了する。
 図7の例では、記憶処理装置101は、HDD0とHDD2の交換を不要と判断する。HDD0とHDD2のエラーは、HDD1の故障による振動により、発生したものであるため、HDD1の振動が停止されると、HDD0とHDD2のエラーは無くなるためである。
 Reallocation Eventが増加していないHDDで、Reassign write operation failedまたはMechanical positioning errorが発生していないと判断した場合(ステップS1007:No)、記憶処理装置101は、HDDの交換を要と判断する(ステップS1009)。この後、記憶処理装置101の処理は、終了する。
 HDDに発生したエラーは、他のHDDの故障による振動により、発生したものでなく、他のHDDの振動を停止しても、HDDに発生したエラーは消えないため、記憶処理装置101は、HDDの交換を要と判断する。
 これにより、本フローチャートにおける一連の処理は終了する。本フローチャートを実行することで、記憶処理装置101は、故障したと判断されたHDDの交換の要否を判断することができる。
 以上説明したように、記憶処理装置101は、HDDが故障した後に、状態テーブル240を参照してHDDの故障時刻を特定する。この後、記憶処理装置101は、HDDの故障後に故障したと判断された他のHDDの状態テーブル240のうち、特定された故障時刻より後のレコードを特定する。この後、記憶処理装置101は、特定されたレコードに基づき、他のHDDの交換の要否を判断する。
 これにより、記憶処理装置101は、HDDの故障の影響により記憶された状態テーブル240のレコードに基づき、他のHDDの交換の要否を判断できる。
 また、記憶処理装置101は、状態テーブル240のレコードが、HDDの故障の影響により記憶されたものを含む場合、他のHDDの交換を不要と判断することができる。記憶処理装置101が、他のHDDの交換を不要と判断した場合、故障したHDDを取除き、故障したHDDの振動で故障と判定されていたHDDの故障状態を解除してオンラインにすることにより、RAID構成の復旧が可能となる。この場合、複数のHDDの故障によるデータロストを回避でき、長時間におよぶデータ復旧作業が不要となる。また、故障したHDDの振動により、故障と判断されたHDDは交換することがないため、交換部品の部品コストを抑えることが可能となる。
 このように、記憶処理装置101は、HDDの故障の影響により、他のHDDが故障と判断された場合、他のHDDの交換をしなくてもよいと判断する。このため、記憶処理装置101は、正常なHDDを故障と判断することを防ぎ、HDDに記憶されるデータが消失することを防ぐことができる。
 また、記憶処理装置101は、RAIDログ230にReassign write operation failedまたはMechanical positioning errorが記憶されることを判断する。さらに、記憶処理装置101は、HDDのS.M.A.R.T.情報のReallocation Eventの回数が0であることを判断する。この場合、記憶処理装置101は、HDDの交換を不要と判断できる。
 これにより、記憶処理装置101は、HDDの交換の要否を判断する際に、HDDのS.M.A.R.T.情報を参照することで、HDDの交換の要否を判断できる。このため、記憶処理装置101は、S.M.A.R.T.情報を記憶処理装置101のメモリ301等に蓄積しなくてもよい。
 また、記憶処理装置101は、状態テーブル240にReassign write operation failedまたはMechanical positioning errorが記憶されることを判断する。さらに、記憶処理装置101は、状態テーブル240のReallocation Eventの回数が増加していないと判断する。この場合、記憶処理装置101は、HDDの交換を不要と判断できる。
 これにより、記憶処理装置101は、Reallocation Eventがすでに記憶されているHDDに対しても、HDDの交換の要否を判断できる。例えば、HDDは、使用すると正常の場合でもReallocation Eventが記憶されることもある。記憶処理装置101は、このようなHDDを使用したシステムにおいても、HDDの交換の要否を判断できる。
 また、記憶処理装置101は、RAIDログ230と各HDDのS.M.A.R.T.テーブル220を解析するため、従来からあるハードウェアおよびソフトウェアに対し特別な変更を行うことなく、HDDの交換の要否を判断できる。また、記憶処理装置101が、故障したHDDの振動による障害であるか否かを、RAIDログ230と各HDDのS.M.A.R.T.テーブル220に従って判断するため、人的判断ミスがなくなる。
 なお、本実施の形態で説明した記憶装置故障判定方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本記憶装置故障判定プログラムは、ハードディスク、フレキシブルディスク、CD-ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本記憶装置故障判定プログラムは、インターネット等のネットワークを介して配布してもよい。
 101 記憶処理装置
 102 記憶装置
 260 サーバ
 801 入力部
 802 特定部
 803 判断部
 804 表示部

Claims (9)

  1.  第1記憶装置が故障した後に、前記第1記憶装置の第1ログ情報を参照して前記第1記憶装置の故障時刻を特定し、
     前記第1記憶装置の故障後に故障したと判断された第2記憶装置の第2ログ情報のうち、特定された前記故障時刻より後のログ情報を特定し、
     特定された前記ログ情報に基づき、前記第2記憶装置の交換の要否を判断する
     制御部を有することを特徴とする記憶処理装置。
  2.  前記制御部は、
     特定された前記ログ情報が、前記第1記憶装置の故障の影響により記憶されたものを含む場合、前記第2記憶装置の交換を不要と判断することを特徴とする請求項1に記載の記憶処理装置。
  3.  前記第2ログ情報は、前記第2記憶装置が属するRAIDグループを制御するコントローラの前記第2記憶装置に関するログ情報を含み、
     前記制御部は、
     前記コントローラの前記第2記憶装置に関するログ情報のうち、特定された前記故障時刻より後のログ情報を特定する
     ことを特徴とする請求項2に記載の記憶処理装置。
  4.  前記第2ログ情報は、前記第2記憶装置のエラー統計情報と、前記記憶処理装置が前記エラー統計情報を取得した日時とを対応付けて記憶するログ情報をさらに含み、
     前記制御部は、
     前記対応付けて記憶するログ情報のうち、特定された前記故障時刻より後のログ情報をさらに特定することを特徴とする請求項3に記載の記憶処理装置。
  5.  前記制御部は、
     特定された前記ログ情報に、磁気ヘッドを目的のトラックに移動する処理に失敗したことまたは交代セクタへの割り当て処理に失敗したことが記憶され、かつ、前記第2記憶装置のエラー統計情報の交代セクタへの割り当て処理の回数が0の場合、前記第2記憶装置の交換を不要と判断することを特徴とする請求項3に記載の記憶処理装置。
  6.  前記制御部は、
     特定された前記ログ情報に、磁気ヘッドを目的のトラックに移動する処理に失敗したことまたは交代セクタへの割り当て処理に失敗したことが記憶され、かつ、特定された前記ログ情報の交代セクタへの割り当て処理の回数が増加していない場合、前記第2記憶装置の交換を不要と判断することを特徴とする請求項4に記載の記憶処理装置。
  7.  第1記憶装置が故障した後に、前記第1記憶装置の第1ログ情報を参照して前記第1記憶装置の故障時刻を特定し、
     前記第1記憶装置の故障後に故障したと判断された第2記憶装置の第2ログ情報のうち、特定された前記故障時刻より後のログ情報を特定し、
     特定された前記ログ情報に基づき、前記第2記憶装置の交換の要否を判断する
     処理をコンピュータに実行させることを特徴とする記憶装置故障判定プログラム。
  8.  第1記憶装置が故障した後に、前記第1記憶装置の第1ログ情報を参照して前記第1記憶装置の故障時刻を特定し、
     前記第1記憶装置の故障後に故障したと判断された第2記憶装置の第2ログ情報のうち、特定された前記故障時刻より後のログ情報を特定し、
     特定された前記ログ情報に基づき、前記第2記憶装置の交換の要否を判断する
     処理をコンピュータが実行することを特徴とする記憶装置故障判定方法。
  9.  複数の記憶装置と、
     前記複数の記憶装置のうちの第1記憶装置が故障した後に、前記第1記憶装置の第1ログ情報を参照して前記第1記憶装置の故障時刻を特定し、前記第1記憶装置の故障後に故障したと判断された、前記複数の記憶装置のうちの第2記憶装置の第2ログ情報のうち、特定された前記故障時刻より後のログ情報を特定し、特定された前記ログ情報に基づき、前記第2記憶装置の交換の要否を判断する制御部を有する記憶処理装置と、
     を有することを特徴とする情報処理システム。
PCT/JP2015/066264 2015-06-04 2015-06-04 記憶処理装置、記憶装置故障判定プログラム、記憶装置故障判定方法および情報処理システム WO2016194212A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017521463A JPWO2016194212A1 (ja) 2015-06-04 2015-06-04 記憶処理装置、記憶装置故障判定プログラム、記憶装置故障判定方法および情報処理システム
PCT/JP2015/066264 WO2016194212A1 (ja) 2015-06-04 2015-06-04 記憶処理装置、記憶装置故障判定プログラム、記憶装置故障判定方法および情報処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/066264 WO2016194212A1 (ja) 2015-06-04 2015-06-04 記憶処理装置、記憶装置故障判定プログラム、記憶装置故障判定方法および情報処理システム

Publications (1)

Publication Number Publication Date
WO2016194212A1 true WO2016194212A1 (ja) 2016-12-08

Family

ID=57441878

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/066264 WO2016194212A1 (ja) 2015-06-04 2015-06-04 記憶処理装置、記憶装置故障判定プログラム、記憶装置故障判定方法および情報処理システム

Country Status (2)

Country Link
JP (1) JPWO2016194212A1 (ja)
WO (1) WO2016194212A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001067190A (ja) * 1999-08-30 2001-03-16 Alps Electric Co Ltd ディスクアレイ制御装置
JP2009116928A (ja) * 2007-11-02 2009-05-28 Fuji Xerox Co Ltd 記憶装置の診断装置および診断プログラムおよび画像処理装置
JP2010134025A (ja) * 2008-12-02 2010-06-17 Fuji Xerox Co Ltd 記憶装置及び画像形成装置
JP2012037941A (ja) * 2010-08-03 2012-02-23 Fujitsu Ltd 磁気ディスク装置、その性能評価方法及び性能評価プログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008250594A (ja) * 2007-03-30 2008-10-16 Hitachi Ltd 装置診断方法および装置診断用モジュールならびに装置診断用モジュールを実装した装置
JP4819014B2 (ja) * 2007-09-20 2011-11-16 株式会社日立製作所 ログ解析方法、ログ格納装置及びプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001067190A (ja) * 1999-08-30 2001-03-16 Alps Electric Co Ltd ディスクアレイ制御装置
JP2009116928A (ja) * 2007-11-02 2009-05-28 Fuji Xerox Co Ltd 記憶装置の診断装置および診断プログラムおよび画像処理装置
JP2010134025A (ja) * 2008-12-02 2010-06-17 Fuji Xerox Co Ltd 記憶装置及び画像形成装置
JP2012037941A (ja) * 2010-08-03 2012-02-23 Fujitsu Ltd 磁気ディスク装置、その性能評価方法及び性能評価プログラム

Also Published As

Publication number Publication date
JPWO2016194212A1 (ja) 2017-12-07

Similar Documents

Publication Publication Date Title
US7191283B2 (en) Grouping of storage media based on parameters associated with the storage media
US7536588B2 (en) Method for servicing storage devices in a bladed storage subsystem
JP6191346B2 (ja) ストレージ制御装置、ディスクアレイ装置の制御方法及びディスクアレイ装置の制御プログラム
US20100077252A1 (en) Systems and Methods for Detection, Isolation, and Recovery of Faults in a Fail-in-Place Storage Array
US20080256397A1 (en) System and Method for Network Performance Monitoring and Predictive Failure Analysis
US7210071B2 (en) Fault tracing in systems with virtualization layers
JP2016057795A (ja) ストレージ制御装置,ストレージシステム及びストレージ制御プログラム
JP6078984B2 (ja) 処理装置,処理方法,処理プログラム及び管理装置
JP2005322399A (ja) 磁気ディスク記憶装置におけるトラック・データ完全性の維持方法
US20170147458A1 (en) Virtual Failure Domains for Storage Systems
US10606490B2 (en) Storage control device and storage control method for detecting storage device in potential fault state
JP5488709B2 (ja) ストレージ制御装置における基準時間設定方法
US11237893B2 (en) Use of error correction-based metric for identifying poorly performing data storage devices
US8843781B1 (en) Managing drive error information in data storage systems
US11055160B2 (en) Method of determining potential anomaly of memory device
EP2912555B1 (en) Hard drive backup
US8341468B2 (en) Information apparatus
WO2016194212A1 (ja) 記憶処理装置、記憶装置故障判定プログラム、記憶装置故障判定方法および情報処理システム
JP2003263703A (ja) 磁気ディスク装置及びディスク制御装置
US11593204B2 (en) Fleet health management device classification framework
JP2016057876A (ja) 情報処理装置、入出力制御プログラム、及び入出力制御方法
JP4605374B2 (ja) 記憶装置の試験方法及び装置
JP6957845B2 (ja) ストレージ制御装置及びストレージ装置
JP2008084168A (ja) 情報処理装置及びデータ修復方法
WO2019054434A1 (ja) 故障予兆検出装置、故障予兆検出方法、及び、故障予兆検出プログラムが格納された記録媒体

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15894245

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017521463

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15894245

Country of ref document: EP

Kind code of ref document: A1