Fault locating method and device for storage system
By obtaining storage system IO stack time data to calculate the failure rate percentage and using the failure prediction curve to accurately locate the fault, the problem of long fault location time and reliance on manual labor in the existing technology is solved, and efficient and accurate fault location and potential fault prediction are achieved.
Patent Information
- Application Number
- CN202111447436.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-11-30
- Publication Date
- 2025-12-16
- Estimated Expiration
- 2041-11-30
AI Technical Summary
Existing methods for locating storage system faults are time-consuming, rely on manual labor, are costly, and cannot quickly locate or predict potential hardware faults, especially in complex systems.
By acquiring storage system IO stack time data, the failure rate ratios of the host, network, and storage are calculated. Fault prediction curves are used to narrow down the fault range, and monitoring and log information are combined to accurately locate specific faults.
It achieves efficient and accurate fault location, reduces manual troubleshooting costs, can detect potential hardware failures in advance, and ensures stable operation of the storage system.
Smart Images

Figure CN114116290B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of fault positioning, in particular to a fault positioning method and device of a storage system. BACKGROUND
[0002] Fault positioning is a common problem of a storage system, but because many components are involved in the IO read-write process, it needs to go through a series of IO stacks such as host, network and storage before a successful disk landing can be achieved from an IO. Therefore, how to quickly locate the problem becomes the primary problem of the operation and maintenance personnel. Among them, the IO of the storage system is a computer term, and the read-write IO is generally a host-end instruction for reading and writing data from a certain block position of the disk. The instruction reaches the storage device through the network device, the storage device completes the relevant operation, and then feeds back the result to the host end. The whole process is an IO.
[0003] At present, the conventional fault positioning method still depends on the monitoring means of the network or storage manufacturer, and gives an alarm by setting a related threshold manually, and then analyzes according to the experience of the system, network and storage operation and maintenance personnel. With the rapid development of cloud computing, there are many types of businesses and complex system structures, and the disadvantages of traditional fault positioning methods have gradually been exposed.
[0004] The conventional fault positioning method is dependent on monitoring for manual troubleshooting, which has the following problems: the fault positioning process is time-consuming, and the cooperation of personnel from various professional groups is needed for troubleshooting, which requires high labor cost; the fault positioning is too dependent on product monitoring and the experience of operation and maintenance personnel, but as the application structure becomes more and more complex, the threshold set according to the experience in the past cannot meet the existing environment, and once a fault occurs, it cannot achieve the effect of quick positioning; it cannot cope with the system sub-health scene, so it cannot find the potential fault risk of the hardware, and once a fault occurs, it will affect the stable and efficient operation of the storage system. SUMMARY
[0005] In view of the problems in the prior art, the main purpose of the embodiments of the present application is to provide a fault positioning method and device of a storage system, which can realize more efficient and accurate fault positioning.
[0006] In order to achieve the above purpose, the embodiments of the present application provide a fault positioning method of a storage system, which comprises:
[0007] According to the preset information collection period and the preset number of periods, the IO stack time consumption data of the storage system is obtained, and the stage time consumption data is determined according to the IO stack time consumption data;
[0008] According to the stage time consumption data and the number of periods, the host fault rate proportion, the network fault rate proportion and the storage fault rate proportion are determined;
[0009] According to the host failure rate proportion, the network failure rate proportion and the storage failure rate proportion, a failure prediction curve is obtained, and the failure prediction curve is used to obtain a failure positioning result.
[0010] Optionally, in an embodiment of the present application, the IO stack time consumption data includes request generation time, queue entry time, driver allocation time, processing completion time and storage time consumption.
[0011] Optionally, in an embodiment of the present application, the stage time consumption data determined according to the IO stack time consumption data includes:
[0012] According to the request generation time, the queue entry time and the driver allocation time in the IO stack time consumption data, a host time consumption is generated;
[0013] According to the processing completion time and the storage time consumption in the IO stack time consumption data, a network time consumption is generated, and the host time consumption, the network time consumption and the storage time consumption are taken as the stage time consumption data.
[0014] Optionally, in an embodiment of the present application, the host failure rate proportion, the network failure rate proportion and the storage failure rate proportion determined according to the stage time consumption data and the cycle number include:
[0015] According to the cycle number and the host time consumption, the network time consumption and the storage time consumption in the stage time consumption data, a host failure rate, a network failure rate and a storage failure rate are respectively obtained;
[0016] According to the host failure rate, the network failure rate and the storage failure rate, the host failure rate proportion, the network failure rate proportion and the storage failure rate proportion are determined.
[0017] Optionally, in an embodiment of the present application, the host failure rate, the network failure rate and the storage failure rate respectively obtained according to the cycle number and the host time consumption, the network time consumption and the storage time consumption in the stage time consumption data include:
[0018] According to the cycle number and the host time consumption, the network time consumption and the storage time consumption in the stage time consumption data, a host average time consumption duration, a network average time consumption duration and a storage average time consumption duration are respectively obtained;
[0019] According to the host average time consumption duration, the network average time consumption duration and the storage average time consumption duration, a host failure rate, a network failure rate and a storage failure rate are respectively obtained.
[0020] Optionally, in an embodiment of the present application, the failure positioning result obtained by using the failure prediction curve includes:
[0021] The fault prediction curve is used to determine a fault probability ranking in a preset number of information collection periods, and a fault positioning result is obtained according to the fault probability ranking; wherein the fault positioning result includes any one of three fault results of host fault, network fault and storage fault.
[0022] The embodiment of the application further provides a fault positioning device of a storage system, the device comprising:
[0023] a stage time consumption module configured to obtain IO stack time consumption data of the storage system according to a preset information collection period and a preset number of periods, and determine stage time consumption data according to the IO stack time consumption data;
[0024] a fault rate proportion module configured to determine a host fault rate proportion, a network fault rate proportion and a storage fault rate proportion according to the stage time consumption data and the number of periods;
[0025] a positioning result module configured to obtain a fault prediction curve according to the host fault rate proportion, the network fault rate proportion and the storage fault rate proportion, and obtain a fault positioning result by using the fault prediction curve.
[0026] Optionally, in an embodiment of the application, the IO stack time consumption data includes request generation time, queue entry time, driver allocation time, processing completion time and storage time consumption.
[0027] Optionally, in an embodiment of the application, the stage time consumption module comprises:
[0028] a host time consumption unit configured to generate host time consumption according to the request generation time, the queue entry time and the driver allocation time in the IO stack time consumption data;
[0029] a network time consumption unit configured to generate network time consumption according to the processing completion time and the storage time consumption in the IO stack time consumption data, and use the host time consumption, the network time consumption and the storage time consumption as the stage time consumption data.
[0030] Optionally, in an embodiment of the application, the fault rate proportion module comprises:
[0031] a fault rate unit configured to obtain a host fault rate, a network fault rate and a storage fault rate according to the number of periods and the host time consumption, the network time consumption and the storage time consumption in the stage time consumption data;
[0032] a fault rate proportion unit configured to determine the host fault rate proportion, the network fault rate proportion and the storage fault rate proportion according to the host fault rate, the network fault rate and the storage fault rate.
[0033] Optionally, in an embodiment of the present application, the failure rate unit comprises:
[0034] an average time consumption subunit configured to obtain a host average time consumption duration, a network average time consumption duration and a storage average time consumption duration according to the number of periods and the host time consumption, the network time consumption and the storage time consumption in the stage time consumption data;
[0035] a failure rate subunit configured to obtain a host failure rate, a network failure rate and a storage failure rate according to the host average time consumption duration, the network average time consumption duration and the storage average time consumption duration.
[0036] Optionally, in an embodiment of the present application, the positioning result module is further configured to determine a failure probability ranking within a preset number of information collection periods by using the failure prediction curve, and obtain a failure positioning result according to the failure probability ranking; wherein the failure positioning result comprises any one of the three failure results of host failure, network failure and storage failure.
[0037] The present application further provides an electronic device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the processor implements the above method when executing the program.
[0038] The present application further provides a computer readable storage medium storing a computer program for executing the above method.
[0039] The present application forms a failure prediction curve by using the failure rate proportion of each stage of the IO stack, narrows the range of failure positioning from the entire IO stack to the host, network and storage three stages, thereby greatly reducing the manual troubleshooting cost, can perceive in advance in the system sub-health scenario, find the potential failure risk of hardware, and guarantee the stable and efficient operation of the storage system. BRIEF DESCRIPTION OF DRAWINGS
[0040] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the drawings needed in the embodiment description will be briefly introduced. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative labor.
[0041] Figure 1 a flowchart of a failure positioning method of a storage system in an embodiment of the present application;
[0042] Figure 2 a flowchart of determining stage time consumption data in an embodiment of the present application;
[0043] Figure 3A flow chart for determining the failure rate proportion in the embodiment of the present application;
[0044] Figure 4 A flow chart for determining the failure rate in the embodiment of the present application;
[0045] Figure 5 A schematic diagram of the failure prediction curve in the embodiment of the present application;
[0046] Figure 6 An interaction schematic diagram of the system applying the storage system failure positioning method in the embodiment of the present application;
[0047] Figure 7 A structural schematic diagram of the failure positioning device of the storage system in the embodiment of the present application;
[0048] Figure 8 A structural schematic diagram of the phase time consumption module in the embodiment of the present application;
[0049] Figure 9 A structural schematic diagram of the failure rate proportion module in the embodiment of the present application;
[0050] Figure 10 A structural schematic diagram of the failure rate unit in the embodiment of the present application;
[0051] Figure 11 A structural schematic diagram of the electronic device provided by the embodiment of the present application. DETAILED DESCRIPTION
[0052] The embodiment of the present application provides a storage system failure positioning method and device, which can be applied to the financial field and other fields. It should be noted that the storage system failure positioning method and device of the present application can be applied to the financial field, and can also be applied to any field other than the financial field. The application field of the storage system failure positioning method and device of the present application is not limited.
[0053] The technical solutions in the embodiments of the present application will be described clearly and completely in combination with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative labor fall within the scope of protection of the present application.
[0054] As Figure 1 shown is a flow chart of a storage system failure positioning method in the embodiment of the present application. The execution subject of the storage system failure positioning method provided by the embodiment of the present application includes but is not limited to a computer. The method shown in the figure includes:
[0055] In step S1, IO stack time consumption data of the storage system is obtained according to a preset information collection period and a preset number of periods, and stage time consumption data is determined according to the IO stack time consumption data.
[0056] The information collection period and the number of periods can be preset, for example, the information collection period can be 10 seconds, and the number of periods can be 60, so the entire data collection process is 10 minutes. The IO stack time consumption data of the storage system can be obtained from the actual production environment by using the existing tools in the host operating system.
[0057] As an embodiment of the present application, the IO stack time consumption data includes request generation time, queue entry time, driver allocation time, processing completion time and storage time consumption.
[0058] The request generation time can be represented as Q2G, which represents the time from the entry of the IO into the block layer to the generation of the request. The queue entry time can be represented as G2I, which represents the time from the generation of the IO request to the insertion of the IO request into the request queue. The driver allocation time can be represented as I2D, which represents the time from the entry of the IO request into the queue to the distribution to the device driver. The processing completion time can be represented as D2C, which represents the time from the allocation of the IO to the device driver to the completion of the device processing, including the time of the IO through the network and reaching the remote storage. The storage time consumption represents the time consumption of the storage system.
[0059] Further, the request generation time, the queue entry time and the driver allocation time represent the time consumption of the host, and the processing completion time includes the network time consumption and the storage time consumption.
[0060] Further, the stage time consumption data can be determined according to the IO stack time consumption data, and the stage time consumption data includes host time consumption, network time consumption and storage time consumption. Specifically, the sum of the request generation time, the queue entry time and the driver allocation time is the host time consumption, and the difference between the processing completion time and the storage time consumption is the network time consumption. Specifically, the host time consumption can be represented as Q2D, Q2D=Q2G+G2I+I2D.
[0061] In step S2, the host failure rate proportion, the network failure rate proportion and the storage failure rate proportion are determined according to the stage time consumption data and the number of periods.
[0062] The host failure rate, the network failure rate and the storage failure rate can be calculated according to the stage time consumption data and the number of periods. Specifically, the host failure rate calculation formula is shown in formula (1), the network failure rate calculation formula is shown in formula (2), and the storage failure rate calculation formula is shown in formula (3).
[0063]
[0064]
[0065]
[0066] wherein, h k is the average time consumption of the host in the kth cycle, s k is the average time consumption of the network in the kth cycle, d k is the average time consumption of the storage in the kth cycle, and n is the number of cycles.
[0067] Further, by periodically acquiring performance index data and calculating the variance value at the time point, the fluctuation of the performance index at the time point within the range of all collection points of the index can be clearly understood. Under normal circumstances, if the storage system is running normally, the performance index of each collection point changes little, and the time consumption variance obtained is also small; if the storage system is abnormal, such as a hardware device in a sub-healthy state, the performance index obtained will change greatly (the time consumption is longer), and the time consumption variance value obtained is larger. Therefore, the time consumption variance value calculated by the above formulas (1)-(3) can be equivalent to the failure rate of each stage of the storage system.
[0068] Further, according to the host failure rate, the network failure rate and the storage failure rate, the host failure rate proportion, the network failure rate proportion and the storage failure rate proportion can be calculated. Specifically, the host failure rate proportion, the network failure rate proportion and the storage failure rate proportion are respectively
[0069] Step S3, according to the host failure rate proportion, the network failure rate proportion and the storage failure rate proportion, a failure prediction curve is obtained, and a failure positioning result is obtained by using the failure prediction curve.
[0070] wherein, the failure rate proportion in each cycle is dynamically drawn into a failure prediction curve to intuitively represent the change of the failure rate in different stages, as shown in Figure 5 According to the failure prediction curve, the failure positioning result can be obtained according to the sorting of the failure rate proportion. For example, if in 60 cycles (i.e. 10 minutes), 50% of the points in a certain stage are greater than those in the other two stages, it means that the probability of failure in this stage is larger, and the closer the failure rate proportion is to 100%, the greater the probability of failure. Specifically, the failure positioning result includes any one of the three failure results of host failure, network failure and storage failure.
[0071] Further, after obtaining the fault positioning result, the operation and maintenance personnel can further troubleshoot according to the corresponding monitoring interface and software and hardware system log. The host can troubleshoot through the operating system log, server hardware monitoring, etc.; the switch can troubleshoot through the switch port log, card hardware monitoring, etc.; and the disk mainly troubleshoots through the interface monitoring and system log, so as to focus the fault on a single or multiple software and hardware faults.
[0072] In the embodiment, as shown in Figure 2 the stage time consumption data includes:
[0073] In step S21, the host time consumption is generated according to the request generation time, the entering queue time and the allocation driver time in the IO stack time consumption data.
[0074] In step S22, the network time consumption is generated according to the processing completion time and the storage time consumption in the IO stack time consumption data, and the host time consumption, the network time consumption and the storage time consumption are taken as the stage time consumption data.
[0075] The request generation time, the entering queue time and the allocation driver time represent the time consumption of the host, and the processing completion time includes the network time consumption and the storage time consumption. According to the IO stack time consumption data, the stage time consumption data can be determined, which includes the host time consumption, the network time consumption and the storage time consumption. Specifically, the sum of the request generation time, the entering queue time and the allocation driver time is the host time consumption, and the difference between the processing completion time and the storage time consumption is the network time consumption.
[0076] In the embodiment, as shown in Figure 3 the host fault rate proportion, the network fault rate proportion and the storage fault rate proportion are determined according to the stage time consumption data and the cycle number, which includes:
[0077] In step S31, the host fault rate, the network fault rate and the storage fault rate are respectively obtained according to the cycle number and the host time consumption, the network time consumption and the storage time consumption in the stage time consumption data.
[0078] In step S32, the host fault rate proportion, the network fault rate proportion and the storage fault rate proportion are determined according to the host fault rate, the network fault rate and the storage fault rate.
[0079] According to the stage time consumption data and the cycle number, the host fault rate, the network fault rate and the storage fault rate can be calculated, which are specifically shown in formulas (1)-(3). After obtaining the host fault rate, the network fault rate and the storage fault rate, the host fault rate proportion, the network fault rate proportion and the storage fault rate proportion can be calculated according to the proportion of each fault rate in the sum of the three fault rates.
[0080] In the embodiment, asFigure 4 As shown, the host failure rate, network failure rate and storage failure rate are obtained according to the cycle number and the host time consumption, network time consumption and storage time consumption in the stage time consumption data, respectively.
[0081] In step S41, the host average time consumption length, network average time consumption length and storage average time consumption length are obtained according to the cycle number and the host time consumption, network time consumption and storage time consumption in the stage time consumption data.
[0082] In step S42, the host failure rate, network failure rate and storage failure rate are obtained according to the host average time consumption length, network average time consumption length and storage average time consumption length.
[0083] According to the cycle number and the host time consumption, network time consumption and storage time consumption in the stage time consumption data, the average time consumption in a specific cycle can be obtained first, and then the average time consumption in each stage in the information collection cycle of the cycle number can be obtained, i.e. the host average time consumption length, network average time consumption length and storage average time consumption length. The host failure rate, network failure rate and storage failure rate are obtained by using the host average time consumption length, network average time consumption length and storage average time consumption length.
[0084] As an embodiment of the present application, the fault positioning result is obtained by using the fault prediction curve, which includes determining the fault probability ranking in the information collection cycle of the preset cycle number and obtaining the fault positioning result according to the fault probability ranking. The fault positioning result includes any one of the three fault results of host failure, network failure and storage failure.
[0085] The fault rate proportion in each cycle is dynamically drawn into a fault prediction curve to intuitively represent the change of the fault rate in different stages, as shown in Figure 5 According to the fault prediction curve, the fault positioning result can be obtained according to the ranking of the fault rate proportion. For example, if 50% of the points in a stage are greater than the other two stages in 60 cycles (i.e. 10 minutes), it means that the probability of failure in this stage is larger, and the closer the fault rate proportion is to 100%, the greater the probability of failure. Specifically, the fault positioning result includes any one of the three fault results of host failure, network failure and storage failure.
[0086] The present application effectively solves the problems in the conventional storage system fault positioning, realizes more efficient and accurate fault positioning, and the result of fault positioning can be used to guide production, combined with the production environment application scene, to replace the potential fault hardware devices in time.
[0087] In a specific embodiment of the present application, as shown in Figure 6 The interactive diagram of the system applying the storage system fault locating method in the embodiment of the present application is shown in the figure, and the fault locating process of the system is described as follows.
[0088] 1) Collect the time consumption of each stage of the production environment IO stack.
[0089] Periodically use the tools such as blktrace, blkprase, btt provided by the host operating system to collect the time consumption of each stage of the IO stack, including Q2G, G2I, I2D, D2C time period respectively; use the monitoring provided by the storage system to collect the time consumption of IO through the storage system (the existing commercial storage products all provide this monitoring index). The information collection period can be adjusted according to the actual situation, considering the timeliness and performance influence, and the preliminary suggestion is 10 seconds.
[0090] 2) Input the time consumption information of each stage of the IO stack into the fault locating system to refine the time consumption of each stage.
[0091] Integrate the time consumption of the host and the storage system to calculate the time consumption information of the host, network and storage in each stage. The host time consumption is the Q2D time length, and the network time consumption is the D2C time consumption minus the storage time consumption.
[0092] 3) Input the time consumption data of each stage into the data analysis module to calculate the fault rate of the host, network and storage.
[0093] Input the time consumption data of each stage of the IO stack into the data analysis module of the fault locating system to calculate the fault rate of the host, network and storage, which is calculated as shown in formulas (1)-(3).
[0094] 4) Quickly narrow down the fault range based on the fault rate of each stage of the IO stack
[0095] After periodically obtaining the time consumption of each stage, the fault rate proportion in each period is dynamically drawn into a fault prediction curve to intuitively represent the change of the fault rate of different stages. The fault rate proportions of the host, network and storage are
[0096] According to the fault prediction curve, if in 60 cycles (i.e. 10 minutes), the points of a certain stage continuously appear 50% more than the other two stages, it means that the probability of failure of this stage is larger, and the closer the fault rate proportion is to 100%, the greater the probability of failure.
[0097] 5) Combine the monitoring and software and hardware log information to further locate the specific fault
[0098] Through the fault positioning system, the fault range (or potential fault of the sub-health scenario) is narrowed down to three stages of host, network and storage. At this time, the operation and maintenance personnel can further investigate according to the corresponding monitoring interface and software and hardware system log. The host can be investigated through the operating system log, server hardware monitoring and the like; the switch can be investigated through the switch port log, card hardware monitoring and the like; and the disk mainly investigates through the interface monitoring and system log. Thus, the fault is focused on a single or multiple software and hardware faults.
[0099] The present application uses the fault rate proportion of each stage of the IO stack to form a fault prediction curve, narrows down the fault positioning range from the entire IO stack to three stages of host, network and storage, can be further positioned to a specific fault in combination with monitoring and log information, thereby greatly reducing the manual investigation cost, can perceive and react to production in advance for the system sub-health scenario, discovers the potential fault risk of hardware, and guarantees the stable and efficient operation of the storage system.
[0100] As shown in Figure 7 The structure of the fault positioning device of the storage system according to the embodiment of the present application is shown in the figure, and the device shown in the figure comprises:
[0101] The stage time consumption module 10 is configured to obtain the IO stack time consumption data of the storage system according to the preset information collection period and the preset number of periods, and determine the stage time consumption data according to the IO stack time consumption data.
[0102] The fault rate proportion module 20 is configured to determine the host fault rate proportion, the network fault rate proportion and the storage fault rate proportion according to the stage time consumption data and the number of periods.
[0103] The positioning result module 30 is configured to obtain the fault prediction curve according to the host fault rate proportion, the network fault rate proportion and the storage fault rate proportion, and obtain the fault positioning result by using the fault prediction curve.
[0104] As an embodiment of the present application, the IO stack time consumption data comprises request generation time, queue entry time, allocation driver time, processing completion time and storage time consumption.
[0105] In the embodiment, as shown in Figure 8 The stage time consumption module 10 comprises:
[0106] The host time consumption unit 11 is configured to generate the host time consumption according to the request generation time, the queue entry time and the allocation driver time in the IO stack time consumption data.
[0107] The network time consumption unit 12 is configured to generate the network time consumption according to the processing completion time and the storage time consumption in the IO stack time consumption data, and take the host time consumption, the network time consumption and the storage time consumption as the stage time consumption data.
[0108] In the embodiment, as shown in the figure, Figure 9 The failure rate proportion module 20 comprises:
[0109] A failure rate unit 21, configured to obtain host failure rate, network failure rate and storage failure rate according to the number of periods and host time consumption, network time consumption and storage time consumption in the stage time consumption data.
[0110] A failure rate proportion unit 22, configured to determine host failure rate proportion, network failure rate proportion and storage failure rate proportion according to the host failure rate, network failure rate and storage failure rate.
[0111] In the embodiment, as shown in the figure, Figure 10 The failure rate unit 21 comprises:
[0112] An average time consumption sub-unit 211, configured to obtain host average time consumption duration, network average time consumption duration and storage average time consumption duration according to the number of periods and host time consumption, network time consumption and storage time consumption in the stage time consumption data.
[0113] A failure rate sub-unit 212, configured to obtain host failure rate, network failure rate and storage failure rate according to the host average time consumption duration, network average time consumption duration and storage average time consumption duration.
[0114] As an embodiment of the present application, the positioning result module is further configured to determine a failure probability ranking within a preset number of information collection periods by using the failure prediction curve, and obtain a failure positioning result according to the failure probability ranking; wherein the failure positioning result comprises any one of the three failure results of host failure, network failure and storage failure.
[0115] Based on the same application concept as the above-mentioned failure positioning method of a storage system, the present application further provides a failure positioning device of the above-mentioned storage system. Since the principle of solving problems of the failure positioning device of the storage system is similar to that of the failure positioning method of the storage system, the implementation of the failure positioning device of the storage system can be referred to the implementation of the failure positioning method of the storage system, and the repeated parts will not be described here.
[0116] The present application uses the failure rate proportion of each stage of the IO stack to form a failure prediction curve, reduces the range of failure positioning from the entire IO stack to the host, network and storage three stages, and can further position to specific failure in combination with monitoring and log information, thereby greatly reducing the manual troubleshooting cost, can perceive and react to production in advance for the system sub-health scene, find the potential failure risk of hardware, and guarantee the stable and efficient operation of the storage system.
[0117] The present invention also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the above-described method.
[0118] The present invention also provides a computer-readable storage medium storing a computer program for performing the above-described method.
[0119] like Figure 11 As shown, the electronic device 600 may also include: a communication module 110, an input unit 120, an audio processing unit 130, a display 160, and a power supply 170. It is worth noting that the electronic device 600 does not necessarily need to include these components. Figure 11 All components shown; in addition, the electronic device 600 may also include Figure 11 For components not shown, please refer to existing technologies.
[0120] like Figure 11 As shown, the central processing unit 100, sometimes also referred to as a controller or operating control, may include a microprocessor or other processor device and / or logic device. The central processing unit 100 receives inputs and controls the operation of various components of the electronic device 600.
[0121] The memory 140 may be, for example, one or more of a cache, flash memory, hard drive, removable media, volatile memory, non-volatile memory, or other suitable devices. It may store the aforementioned failure-related information, and also store a program for executing that information. The central processing unit 100 may execute the program stored in the memory 140 to perform information storage or processing, etc.
[0122] Input unit 120 provides input to central processing unit 100. Input unit 120 may be, for example, a keypad or touch input device. Power supply 170 provides power to electronic device 600. Display 160 displays images and text. Display may be, for example, an LCD display, but is not limited thereto.
[0123] The memory 140 can be a solid-state memory, such as a read-only memory (ROM), random access memory (RAM), a SIM card, etc. It can also be a memory that retains information even when power is off, can be selectively erased, and contains more data; examples of this type of memory are sometimes referred to as EPROMs. The memory 140 can also be some other type of device. The memory 140 includes a buffer memory 141 (sometimes referred to as a buffer). The memory 140 may include an application / function storage unit 142 for storing application programs and function programs or processes for executing the operation of the electronic device 600 via the central processing unit 100.
[0124] The memory 140 can further include a data storage 143 for storing data such as contacts, digital data, pictures, sounds, and / or any other data used by the electronic device. A driver storage 144 of the memory 140 can include various drivers of the electronic device for a communication function and / or for performing other functions of the electronic device (e.g., a messaging application, a phonebook application, etc.).
[0125] The communication module 110 is a transmitter / receiver 110 that transmits and receives signals via the antenna 111. The communication module (transmitter / receiver) 110 is coupled to the central processor 100 to provide input signals and receive output signals, as in the case of a conventional mobile communication terminal.
[0126] Based on different communication technologies, a plurality of communication modules 110 can be provided in the same electronic device, such as a cellular network module, a Bluetooth module, and / or a wireless LAN module, etc. The communication module (transmitter / receiver) 110 is further coupled to the speaker 131 and the microphone 132 via the audio processor 130 to provide audio output via the speaker 131 and receive audio input from the microphone 132, thereby implementing a general telecommunication function. The audio processor 130 can include any suitable buffer, decoder, amplifier, etc. In addition, the audio processor 130 is coupled to the central processor 100, thereby enabling recording on the local device through the microphone 132 and enabling playing of a sound stored on the local device through the speaker 131.
[0127] Those skilled in the art will appreciate that embodiments of the present application can be readily used as a method, a system, or a computer program product. Accordingly, the present application can take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application can take the form of a computer program product on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROMs, optical storage devices, etc.) embodying computer readable program code thereon.
[0128] The present application is described in reference to the flowchart illustrations and / or block diagrams of the methods, apparatus (systems) and computer program products according to embodiments of the application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, embedded processing machine, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart illustrations and / or block diagrams block or blocks. Figure 1one or more processes and / or blocks Figure 1 an apparatus for performing the functions specified in the block or blocks.
[0129] These computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture including instructions which implement the flow Figure 1 one or more processes and / or blocks Figure 1 an apparatus for performing the functions specified in the block or blocks.
[0130] These computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the flow Figure 1 one or more processes and / or blocks Figure 1 an apparatus for performing the functions specified in the block or blocks.
[0131] The principles and implementations of the present application are described in the specific embodiments, the above description of the embodiments is only for the purpose of helping to understand the method of the present application and its core idea; at the same time, for those skilled in the art, according to the idea of the present application, there will be changes in the specific implementation and application range, and the above description of the present application should not be understood as a limitation.
Claims
1. A method of fault localization of a storage system, the method comprising: The method comprises: According to the preset information collection period and the preset number of periods, the IO stack time consumption data of the storage system is obtained, and the stage time consumption data is determined according to the IO stack time consumption data; According to the stage time consumption data and the number of periods, the host failure rate proportion, the network failure rate proportion and the storage failure rate proportion are determined; According to the host failure rate proportion, the network failure rate proportion and the storage failure rate proportion, the failure prediction curve is obtained, and the failure positioning result is obtained by using the failure prediction curve; The IO stack time consumption data includes request generation time, queue entry time, driver allocation time, processing completion time and storage time consumption; The stage time consumption data is determined according to the IO stack time consumption data, which comprises: According to the request generation time, the queue entry time and the driver allocation time in the IO stack time consumption data, the host time consumption is generated; According to the processing completion time and the storage time consumption in the IO stack time consumption data, the network time consumption is generated, and the host time consumption, the network time consumption and the storage time consumption are taken as the stage time consumption data; The host failure rate proportion, the network failure rate proportion and the storage failure rate proportion are determined according to the number of periods and the host time consumption, the network time consumption and the storage time consumption in the stage time consumption data, which comprises: According to the number of periods and the host time consumption, the network time consumption and the storage time consumption in the stage time consumption data, the host failure rate, the network failure rate and the storage failure rate are obtained respectively; According to the host failure rate, the network failure rate and the storage failure rate, the host failure rate proportion, the network failure rate proportion and the storage failure rate proportion are determined.
2. The method of claim 1, wherein, According to the number of periods and the host time consumption, the network time consumption and the storage time consumption in the stage time consumption data, the host failure rate, the network failure rate and the storage failure rate are obtained respectively, which comprises: According to the number of periods and the host time consumption, the network time consumption and the storage time consumption in the stage time consumption data, the host average time consumption length, the network average time consumption length and the storage average time consumption length are obtained respectively; According to the host average time consumption length, the network average time consumption length and the storage average time consumption length, the host failure rate, the network failure rate and the storage failure rate are obtained respectively.
3. The method of claim 1, wherein, The failure positioning result is obtained by using the failure prediction curve, which comprises: The failure probability ranking is determined in the preset number of information collection periods by using the failure prediction curve, and the failure positioning result is obtained according to the failure probability ranking; wherein, the failure positioning result includes any one of the three kinds of failure results of host failure, network failure and storage failure.
4. A fault locating apparatus for a storage system, characterized by, The device comprises: A stage time consumption module is configured to obtain the IO stack time consumption data of the storage system according to the preset information collection period and the preset number of periods, and determine the stage time consumption data according to the IO stack time consumption data; A failure rate proportion module is configured to determine the host failure rate proportion, the network failure rate proportion and the storage failure rate proportion according to the stage time consumption data and the number of periods; A positioning result module is configured to obtain the failure prediction curve according to the host failure rate proportion, the network failure rate proportion and the storage failure rate proportion, and obtain the failure positioning result by using the failure prediction curve. The IO stack time consumption data includes request generation time, queue entry time, driver allocation time, processing completion time and storage time consumption; The stage time consumption module includes: a host time consumption unit configured to generate host time consumption according to the request generation time, the queue entry time and the driver allocation time in the IO stack time consumption data; a network time consumption unit configured to generate network time consumption according to the processing completion time and the storage time consumption in the IO stack time consumption data, and to generate the stage time consumption data by taking the host time consumption, the network time consumption and the storage time consumption as the stage time consumption data; The failure rate proportion module includes: a failure rate unit configured to obtain host failure rate, network failure rate and storage failure rate respectively according to the cycle number and the host time consumption, the network time consumption and the storage time consumption in the stage time consumption data; a failure rate proportion unit configured to determine host failure rate proportion, network failure rate proportion and storage failure rate proportion according to the host failure rate, the network failure rate and the storage failure rate.
5. The apparatus of claim 4, wherein, The failure rate unit includes: an average time consumption sub-unit configured to obtain host average time consumption duration, network average time consumption duration and storage average time consumption duration respectively according to the cycle number and the host time consumption, the network time consumption and the storage time consumption in the stage time consumption data; a failure rate sub-unit configured to obtain host failure rate, network failure rate and storage failure rate respectively according to the host average time consumption duration, the network average time consumption duration and the storage average time consumption duration.
6. The apparatus of claim 4, wherein, The positioning result module is further configured to determine a failure probability ranking within a preset cycle number of information collection cycles by using the failure prediction curve, and to obtain a failure positioning result according to the failure probability ranking; wherein the failure positioning result includes any one of the three failure results of host failure, network failure and storage failure.
7. An electronic device comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, characterized in that, The processor implements the method of any one of claims 1 to 3 when executing the computer program.
8. A computer-readable storage medium, characterized in that, The computer readable storage medium stores a computer program for executing the method of any one of claims 1 to 3.
Citation Information
Patent Citations
Disk drive failure prediction with neural networks
CN112753020A
Method and device for locating video service fault, and storage medium
EP3691261A1