Storage system

By switching states between controllers under the instructions of the management device in the storage system, reducing power consumption while ensuring availability is achieved, solving the problem of high power consumption in enterprise-level storage systems.

CN119105695AInactive Publication Date: 2024-12-10HITACHI VANTARA LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410233610.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-05-31
Filing Date
2024-03-01
Publication Date
2024-12-10
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

In a storage system equipped with multiple storage controllers, how to reduce power consumption while ensuring availability?

Method used

Through the instructions of the management device, the storage controller changes from the normal operation mode to the reduced operation mode, including the normal operation state, the reduced operation state and the stop state, the designated storage controller changes from the normal operation state to the stop state, and other controllers go from the normal operation state to the stop state, and the The action state becomes a reduced action state, and the fault is used as an opportunity to start the stop state controller to reduce power consumption.

Benefits of technology

While ensuring the availability of storage systems, it effectively reduces power consumption and is suitable for the power consumption demand in enterprise-level storage systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119105695A_ABST
    Figure CN119105695A_ABST
Patent Text Reader

Abstract

In a storage system capable of reducing power consumption, a plurality of storage controllers change from a normal operation mode, in which each storage controller operates in a normal operation state, to a reduced operation mode, in which each storage controller operates in a reduced operation state, in accordance with an instruction from a management device. In a change from a normal operation mode to a reduced operation mode in accordance with an instruction from the management device, a storage controller designated by the management device among the plurality of storage controllers transitions from a normal operation state to a standby state, and storage controllers other than the designated storage controller transitions from the normal operation state to a reduced operation state. When the storage controller in the reduction operation state in the reduction operation mode fails to stop, the storage controller in the standby state is started and transitions to the reduction operation state.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a storage system. Background Art

[0002] Reducing power consumption in storage systems is one of the technical issues. In particular, there is a strong demand for reducing power consumption in enterprise-level storage systems including controllers equipped with CPUs and drive boxes equipped with storage drives. In such storage systems, since availability is important, multiple controllers that can exert higher performance than the actual application load are installed, thereby having high redundancy.

[0003] As background technology of the present disclosure, there is US Patent Application Publication No. 2012 / 0137172, which discloses a technology that, in a dual-controller storage system, when reliability requirements are low, some components in the storage system are stopped in order to suppress power consumption instead of reducing reliability.

[0004] Prior art literature

[0005] Patent Literature

[0006] Patent Document 1: U.S. Patent Application Publication No. 2012 / 0137172 Summary of the invention

[0007] Problems to be solved by the invention

[0008] In a storage system equipped with multiple storage controllers, a technology that can reduce power consumption while ensuring availability is desired.

[0009] Means used to solve problems

[0010] A technical solution of the present invention is a storage system, comprising a plurality of storage controllers; the plurality of storage controllers change from a normal operation mode to a reduced operation mode according to instructions from a management device; each of the plurality of storage controllers changes between a plurality of states; the plurality of states include: a normal operation state, in which data input and output are performed between one or more host devices and one or more storage drives; a reduced operation state, in which data input and output are performed between one or more host devices and one or more storage drives; and a stop state; in the normal operation mode, each of the plurality of storage controllers operates in the normal operation state; in the change from the normal operation mode to the reduced operation mode corresponding to the instructions from the management device, the storage controller designated by the management device among the plurality of storage controllers changes from the normal operation state to the stop state, and the storage controllers other than the designated storage controller changes from the normal operation state to the reduced operation state; taking the failure stop of the storage controller in the reduced operation state in the reduced operation mode as an opportunity, the storage controller in the stop state is started and changes to the reduced action state.

[0011] Effects of the Invention

[0012] According to an aspect of the present invention, in a storage system equipped with a plurality of storage controllers, power consumption can be reduced while ensuring availability. BRIEF DESCRIPTION OF THE DRAWINGS

[0013] Figure 1 This is a diagram showing the configuration of an information system according to one embodiment of the present specification.

[0014] Figure 2 This section shows an example of a storage system configuration including multiple modules.

[0015] Figure 3 express Figure 2 Other components of the storage system shown.

[0016] Figure 4 Schematic representation of the reduced operating mode of a module.

[0017] Figure 5 Indicates the paths between the host device and the drive box through the modules in different reduced operation modes.

[0018] Figure 6 This shows an example in which a module changes a controller from a normal operating state to a stopped state according to an instruction from a management device.

[0019] Figure 7Indicates the programs stored in the management device.

[0020] Figure 8 Indicates the programs stored in each controller.

[0021] Fig. 9 Indicates the status transition of the modules managed by the management device.

[0022] Fig.10 A flowchart showing an example of processing performed by the reduction operation transfer control program of the management device.

[0023] Fig.11 A flowchart showing an example of processing performed by the reduction operation release control program of the management device.

[0024] Fig.12 A flowchart showing an example of processing performed by the duplex recovery control program of the management device.

[0025] Fig.13 Indicates reference Fig. 9 This section describes the state transition of the controller in the module state transition.

[0026] Fig.14A This shows an example of the controller status combination when the module is in the reduction preparation state.

[0027] Fig. 14B This shows an example of the controller status combination when the module is in the reduction preparation state.

[0028] Fig.15 1 is a flowchart showing a processing example of the reduction preparation control program A of the controller.

[0029] Fig.16 1 is a flowchart showing a processing example of the reduction preparation control program B of the controller.

[0030] Fig.17 This is a flowchart showing a processing example of the reduction transition control program of the controller.

[0031] Fig.18 This is a flowchart showing a processing example of the reduction completion confirmation program of the controller.

[0032] Fig.19 This is a flowchart showing a processing example of the emergency start control program of the controller.

[0033] Fig. 20 This is a flowchart showing a processing example of a normal startup control program of the controller.

[0034] Fig.21 This is a flowchart showing a processing example of the reduction cancellation control program of the controller.

[0035] Description of Figure Numbers

[0036] 10 host device; 20 module; 21 node; 32 management terminal; 41 drive; 210 controller; 211 CPU; 212 memory; 213 host interface; 216 drive interface; 220 PSU; 230 fan. DETAILED DESCRIPTION

[0037] The following describes the embodiments using the drawings. The embodiments are merely examples for implementing the present invention and do not limit the technical scope of the present invention. Moreover, all combinations of features described in the embodiments are not necessarily essential to the solution means of the invention.

[0038] In the following description, various information is sometimes described by the expression "xxx table", but various information can also be expressed in data structures other than tables. In order to indicate that it does not depend on the data structure, "xxx table" can also be called "xxx information". In addition, in the following description, numbers are used as identification information of elements, but other types of identification information (such as names, identifiers) can also be used.

[0039] In the following description, when describing the same kind of elements without distinguishing them from each other, common reference numerals (or reference numerals) may be used, and when describing the same kind of elements without distinguishing them from each other, reference numerals (or element IDs) may be used.

[0040] The program is executed by a processor (e.g., CPU (Central Processing Unit)) contained in the storage controller, thereby performing the set processing while appropriately using storage resources (e.g., main storage) and / or communication interface devices, so the subject of the processing can also be the storage controller or the processor. In addition, the storage controller can also include a part or all of the hardware circuits that perform the processing. The computer program can also be installed from a program source. The program source can be, for example, a program distribution server or a computer-readable storage medium.

[0041] Figure 1 1 is a diagram showing the configuration of an information system according to an embodiment of the present specification. The information system includes a storage system, a host device 10, a management device 31, and a management terminal 32. The storage system includes a module 20 and a drive box 40. The module 20 includes a plurality of nodes 21. Figure 1 In the illustrated configuration example, the number of nodes 21 included in one module 20 is two.

[0042] Each node 21 includes multiple controllers (also called storage controllers) 210. Figure 1 In the configuration example shown, the number of controllers 210 included in one node 21 is 2. Figure 1 In the figure, a node is denoted by reference numeral 21 as an example, and a controller is denoted by reference numeral 210 as an example.

[0043] Each node 21 also includes one or more power supply units (PSUs) 220 and one or more cooling fans 230. The PSUs and cooling fans are components that are shared by the controllers within the node and can be stopped. Figure 1 2 shows two PSUs 220 and one fan 230. The two PSUs 220 have a redundant configuration, and each PSU 220 supplies power to two controllers 210. Figure 1 In the example, one PSU is indicated by reference numeral 220. The constituent elements of each node 21 are housed in, for example, a frame.

[0044] The controller 210 performs input and output processing of host data between the host device 10 and the drive box 40 according to the data input and output command from the host device 10. The controller 210 includes a processor, i.e., a CPU 211, a memory (main storage) 212, a host interface (I / F) 213, a management interface 214, an internal communication interface 215, and a drive interface 216. The number of various elements constituting the controller 210 may be more than one.

[0045] The CPU 211 controls the controller 210 as a whole and operates based on the program stored in the memory 212. The memory 212 is composed of a semiconductor memory such as SDRAM (Synchronous Dynamic Random Access Memory). The memory can also be composed of a combination of a volatile memory and a non-volatile memory such as SCM (Storage Class Memory).

[0046] The host interface 213 is controlled by the CPU 211 and performs I / O request and I / O data transmission and reception with the host device 10 via the storage area network (SAN) 11. The host interface 213 may include a plurality of ports and communicate with a plurality of host devices via the plurality of ports.

[0047] The management interface 214 is controlled by the CPU 211, receives control commands from the management device 31 via the management network (NW) 34, and sends responses to the control commands. The user 33 operates the management device 31 via the management terminal 32. The management terminal 32 and the management device 31 may have a computer structure including a processor, a memory, a communication interface, and an input and output device. The internal communication interface 215 is controlled by the CPU 211, and performs data communication with other controllers 210 via the internal communication switch (SW) 23.

[0048] The drive interface 216 is controlled by the CPU 211, and performs I / O data transmission and reception with the drive (also called storage drive) 41 in the drive box 40. The drive box 40 carries a plurality of drives (storage drives) 41 such as SSD or HDD in the frame, and includes an internal switch, a processor for transfer processing, and a memory in order to connect these plurality of drives 41 to the controller 210. The drive 41 receives host data from the host device 10 via the controller 210, and saves and retains it.

[0049] In order to ensure the availability of the data stored, the drive box 40 can form a RAID between built-in drives 41 or between multiple drive boxes 40. A drive 41 can belong to one or more parity check groups. Figure 1 , one drive box 40 is shown, but each controller 210 may communicate with a plurality of drive boxes. The drive 41 may be composed of an AFA (All Flash Array) equipped with a non-volatile semiconductor memory, or all or part of them may be replaced with a hard disk drive (HDD).

[0050] in addition, Figure 1 This shows an example of the configuration of a storage system, and the number of nodes in a module and the number of controllers in a node can be set by design. In addition, all controllers of the storage system may not be divided and managed by nodes or modules.

[0051] Figure 2 FIG. 2 shows an example of a storage system including a plurality of modules 20. The configuration of each module 20 is as shown in FIG. Figure 1 As described. Figure 2 For the sake of convenience, the Figure 1 A portion of the components shown in Figure 2 In the configuration example, the number of modules 20 included in the storage system is 2, and the number of nodes of each module 20 is 2. All controllers 210 can communicate with each other via the internal communication interface 215 and the internal communication switch 23. In addition, the management device 31 can communicate with all controllers 210 via the management network 34.

[0052] Figure 3 express Figure 2The host device 10 can communicate with all the controllers 210 via the storage area network 11. The two modules 20 are connected to different drive boxes 40, respectively. In one embodiment of the present specification, each drive box 40 is connected to only one module 20 and is accessed from only one corresponding module 20. Each module 20 can be connected to multiple drive boxes 40. One module 20 and one or more drive boxes 40 connected thereto constitute a unit for increasing or decreasing the setting of the storage system.

[0053] The following describes power saving processing of a storage system related to an embodiment of the present specification. In a storage system, because availability is emphasized, more controllers may be installed than the number required by the I / O load requirements of the application. An embodiment of the present specification does not set all controllers to operate regularly, but sets some controllers to standby mode and starts them when a fault occurs, so that power consumption can be reduced. The controller can have one or more standby modes such as stopping the power supply to the controller or maintaining only some functions in the power supply state. In any standby state, data input and output between the host device and the drive box (drive) are stopped, and less power is consumed compared to the state of performing data input and output. In the example described below, the standby state stops the power supply to the controller.

[0054] Figure 4 The reduced operation mode of one module 20 is schematically shown. One embodiment of the present specification determines the reduced operation mode in module units. In the example described here, only one module can access each drive box 40. By controlling the reduced operation mode for each module 20, host access can be appropriately maintained.

[0055] Figure 4 The normal operation mode 201A represents that all controllers execute input and output of host data, the first reduced operation mode 202A represents that some controllers are in standby mode while other controllers execute input and output, and the second reduced operation mode 202B represents that some controllers are in standby mode while other controllers execute input and output.

[0056] As described above, the nodes included in the module 20 are two nodes, namely, the node 21A and the node 21B. The node 21A and the node 21B respectively include two controllers 210A and 210B, two PSUs 220, and one fan 230. The number of controllers included in one node is two.

[0057] In the normal operation mode 201A (2N4C mode), all four controllers in the module 20 perform input and output. Similarly, all PSUs 220 and fans 230 operate.

[0058] In the first reduced operation mode 202A (2N2C mode), one controller 210A in one node 21A performs input and output, and the other controller 210B stops (an example of a standby state). Furthermore, one controller 210A in another node 21B performs input and output, and the other controller 210B stops. All PSUs 220 and fans 230 operate. The first reduced operation mode 202A has higher fault tolerance than the second reduced operation mode 202B from the perspective of redundancy.

[0059] In the second reduction operation mode 202B (1N2C mode), one node 21A performs input and output. That is, in the node 21A, all controllers 210A and 210B perform input and output, and further, all PSUs 220 and fans 230 operate. On the other hand, the node 21B stops. That is, in the node 21B, all controllers 210A and 210B stop, and further, all PSUs 220 and fans 230 stop. The second reduction operation mode 202B is better than the first reduction operation mode 202A in terms of power consumption.

[0060] The module 20 is transferred from the normal operation mode 201A to the first reduction operation mode 202A or the second reduction operation mode 202B in accordance with the shutdown instruction from the user 33 via the management device 31. The user can specify or pre-set the reduction operation mode of the transfer destination from a plurality of reduction operation modes. As described above, the first reduction operation mode 202A is better in terms of usability and worse in terms of power consumption than the second reduction operation mode 202B. In the case where usability is more important than the power reduction effect, the first reduction operation mode 202A is selected according to the user's instruction.

[0061] Figure 5 The diagram shows the paths between the host device 10 and the drive box 40 through the module 20 in different reduced operation modes. The controller 210 communicates with the host device 10 through the host path and communicates with the drive or drive box through the drive path. The host path and the drive path are logical communication paths. Figure 5 In the example shown, the host device 10 accesses the logical units 101A, 101B, and 101C to write and read host data.

[0062] The data of the logic unit 101A is physically stored in the drive box 40A. Only the module 20A controls the input and output (IO) from the host device 10 to the drive box 40A. The module 20A is in the first reduced operation mode 202A, and two controllers belonging to different controllers are operating. Therefore, the host device 10 can access the logic unit 101A.

[0063] The data of the logic unit 101B is physically stored in the drive box 40B. Only the module 20B controls the input and output (IO) from the host device 10 to the drive box 40B. The module 20B is in the second reduced operation mode 202B, and the two controllers belonging to the common controller are operating. Therefore, the host device 10 can access the logic unit 101B.

[0064] The data of the logic unit 101C is physically stored in the drive box 40C. Only the module 20C controls the input and output (IO) from the host device 10 to the drive box 40C. The module 20C is in the other reduced operation mode 202C, and the three controllers are operating. Therefore, the host device 10 can access the logic unit 101C.

[0065] As reference Figure 5 As described, in the reduced operation mode of the module, at least one controller operates. Thus, a path between the host device 10 and the drive box that physically stores the volume data is ensured. Thus, in the reduced operation mode, there are host paths between all host devices that access the drive box via the module in the normal operation mode and the module (a combination of controllers in the operating state). Similarly, there are drive paths between the module and the drive box (all drives).

[0066] Figure 6 The module 20 shows an example in which a controller is changed from a normal operation state to a stop state according to an instruction from the management device 31. Figure 6 In the example of FIG. 2 , the controller 210A of the node 21A changes from the normal operation state to the stop state. Figure 6 This indicates that a shutdown instruction is issued from the management device 31 to one controller 210 , but an instruction to shift to the reduced mode is sent to all the controllers 210 that are in operation.

[0067] Module 20A changes from state 204 to state 205. In state 204, one controller 210B of node 21B stops, and all other controllers perform normal operations. In addition, it is assumed that controller 210B of node 21B has changed to a stop state just before. In the changed state 205, controller 210A of node 21A stops, and controller 210B of node 21B stops. The other two controllers perform normal operations.

[0068] The memory 212 of each controller 210 includes a control information area 510 and a cache area 520. The control information area 510 is an area for storing control information referenced by the controller 210 for processing. The cache area 520 is an area for temporarily storing host data (user data) from the host device 10. The cache data includes write data and may also include read data.

[0069] The cache data stored in the cache area 520 includes dirty data (dirty cache) 521 and clean data 522. The dirty data 521 is newer than the data at the same address of the drive box 40, and is data that should be updated at the same address of the drive box 40. The clean data 522 is the same data as the data at the same address of the drive box 40.

[0070] Only the controller that is assigned the volume control right (the responsible controller) can exclusively access and control the logical volume in the storage system. The logical volume is a logical device in the storage system that stores host data or data used in the storage system. Figure 6 In state 204 , the controller 210A of the node 21A has volume control authority for the logical volume 25 .

[0071] The control information 511 is held by one controller in the node, and the other controller always refers to the control information 511 held by another controller in the same node, or holds and refers to the cache data of the control information 511. Alternatively, all controllers may hold and manage common control information.

[0072] exist Figure 6 In the state 204 shown, the controller 210A in the node 21A holds the control information 511. The other controllers 210B refer to the control information 511 of the controller 210A, or hold its cache data and refer to it. In addition, before the controller 210B of the node 21B stops, the controller 210B of the node 21B refers to the control information 511 of the controller 210A in the node 21B, or holds its cache data and refers to it.

[0073] The control information 511 is redundant between different nodes 21 in the same module 20 (in Figure 6 In other words, the controllers 210 of different nodes respectively maintain common control information 511. The update of the control information 511 in one controller 210 is reflected in the control information 511 of the other controller 210. Figure 6 In state 204 , the controller 210A of the node 21A and the controller of the node 21B store common control information 511 .

[0074] The dirty data 521 in the cache area 520 is redundant between different nodes 21 in the same module 20 (in Figure 6In other words, the controllers 210 of different nodes respectively maintain the common dirty data 521. The update of the dirty data 521 in one controller 210 is reflected in the dirty data 521 of the other controller 210. Figure 6 In the state 204, the controller 210A of the node 21A and the controller of the node 21B store common dirty data 521. In addition, the dirty data may not be duplicated.

[0075] The controller 210A of the node 21A stops according to the shutdown instruction from the management device 31. Before stopping, the controller 210A hands over the control information 511 and the logical volume control right to the controller 210B of the other node 21A. The controller 210A of the node 21A dumps (destages) the dirty data 521 to the logical volume 25 or hands it over to the controller 210B of the node 21A. In order to save the data from the controller 210A in the memory 212, the controller 210B of the node 21A deletes at least a part of the clean data 522 if necessary to form a free area.

[0076] After completing the transfer of the above-mentioned required data from the controller 210A of the node 21A to the controller 210B, the controller 210A of the node 21A stops. The controller 210B of the node 21A and the controller 210A of the node 21B have the same relationship as the two controllers 210A of the nodes 21A and 21B. That is, the control information 511 and the dirty data 521 are shared between the two controllers. In addition, the controller 210B of the node 21A has the volume control right 530 of the logical volume 25 and can access the logical volume 25.

[0077] The state 205 obtained by the above processing is the state of the first reduced operation mode 202A (2N2C mode). In the state 205, dirty data 521 and control information 511 are shared between the two controllers in operation, which can improve the fault resistance. In addition, access to the logical volume 25 is maintained. In addition, the above two pieces of information may not be shared.

[0078] Next, explain Figure 6 The state 204 shown is a method of stopping the controller 210B of the node 21A instead of the controller 210A of the node 21A. The controller 210B, unlike the controller 210A of the same node, does not hold the original control information 511 to be managed. Therefore, the control information 511 does not need to be moved.

[0079] The volume control right 530 held by the controller 210B is moved to the controller 210A of the same node 21A. The dirty data 521 of the controller 210B is moved to the controller 210A of the same node 21A, or is dumped to the corresponding logical volume 25. In this way, by stopping the controller that does not store the control information 511 to be managed, it is not necessary to move the control information 511. In addition, it is not necessary to switch the relationship with the controller 210A of the other node 21B.

[0080] The transition from the normal operation mode in which all four controllers operate to the first reduced operation mode 202A (2N2C mode) can also be performed by, for example, selecting and stopping the controller 210B that does not manage the control information 511 from each of the nodes 21A and 21B. This can reduce the additional processing for moving the control information 511 and synchronizing the control information 511 and the dirty data 521.

[0081] The transition from the normal operation mode in which all four controllers are operating to the second reduced operation mode 202B (1N2C mode) shuts down one of the nodes. Figure 6 In the example, the node 21B is shut down. The volume control right 530 of the controller 210A of the node 21B is moved, for example, to the controller 210A of the node 21A. The dirty data 521 of the controller 210A of the node 21B is destaged to the logical volume 25 or moved to the controller 210A of the node 21A. The volume control right 530 and the dirty data 521 may be moved to any controller of the node 21A.

[0082] The volume control right 530 of the controller 210B of the node 21B is moved, for example, to the controller 210B of the node 21A. The dirty data 521 of the controller 210B of the node 21B is dumped to the logical volume 25 or moved to the controller 210B of the node 21A. The volume control right 530 and the dirty data 521 may be moved to any controller of the node 21A.

[0083] By the above process, in the node 21A that continues to operate, the volume control right 530 is maintained and the shared control information 511 is also maintained. The management device 31 sends a shutdown instruction to each controller to be shut down, and the controllers that receive the instruction execute the shutdown process (stop process) as described above.

[0084] Figure 7 31 shows the programs stored in the management device 31. The memory 310 of the management device 31 stores a reduced operation migration control program 313, a reduced operation cancellation control program 315, and a duplex recovery control program 317 in a program area 311. The details of the processing of these programs will be described later.

[0085] Figure 8 2 shows the programs stored in each controller 210. The memory 212 of the controller 210 stores a reduction preparation control program A 251, a reduction preparation control program B 252, a reduction transfer control program 253, a reduction completion confirmation program 254, an emergency start control program 255, a normal start control program 256, and a reduction release control program 257 in the program area 250. The details of the processing of these programs will be described later.

[0086] Fig. 9 Indicates the state transition of the module 20 managed by the management device 31. The normal operation state ST11 is the state of operation in the normal operation mode. At this time, all controllers are working. The management device 31 instructs the module 20 to transfer from the normal operation mode to a specific reduced operation mode. For the module 20, if it cannot transfer to the reduced operation mode, the module state changes from the normal operation state ST11 to the reduced failure state ST18.

[0087] When the module 20 can shift to the reduced operation mode, the module state changes from the normal operation state ST11 to the reduced preparation state ST12, and further changes to the reduced operation state ST14 via the reduced setting state ST13. In the reduced operation state ST14, the module 20 operates in the designated reduced operation mode.

[0088] If a failure occurs in one of the controllers 210 operating in the reduced operation state ST14, the module state changes to the duplex recovery state ST15. In this state, the duplex recovery process is performed. That is, one of the stopped controllers 210 is started up, and the control information 511 and the dirty buffer are shared with the other controller 210 that is operating. If the duplex is recovered, the module state returns from the duplex recovery state ST15 to the reduced operation state ST14.

[0089] When the management device 31 issues a reduction release instruction to the module 20 in the reduced operation state ST14, the module state changes from the reduced operation state ST14 to the reduced release state ST16. Then, the module state changes from the reduced release state ST16 to the normal operation state ST11 via the reduced saving state ST17.

[0090] The following explains Fig. 9 The management device 31 executes the reduced operation transition control program 313, the reduced operation release control program 315, and the duplex recovery control program 317 as described above.

[0091] Fig.10The flowchart shows an example of processing performed by the reduced operation transition control program 313 of the management device 31. The reduced operation transition control program 313 controls and manages the transition of the module 20 from the normal operation state ST11 to the reduced operation state ST14 according to the setting made by the user.

[0092] First, the reduction action transition control program 313 responds to the reduction transition instruction accompanying the designation of the reduction operation mode from the user 33, and determines whether the target module 20 can perform the reduction action (S301). For example, when it is impossible to communicate with the module, or when a response of reduction failure is received from a controller, it is determined that reduction is impossible. When reduction is impossible (S301: No), the reduction action transition control program 313 changes the module state from the normal operation state ST11 to the reduction failure state ST18 in the retained management information (S311).

[0093] If reduction is possible (S301: Yes), the reduction operation transition control program 313 determines the controller 210 to be stopped in the reduction operation mode (S302). The reduction operation transition control program 313 holds information on the reduction operation mode specified by the user. Figures 4 to 6 As described above, a combination of the controller 210 that maintains the operating state is defined for each reduced operation mode.

[0094] Next, the reduction action transfer control program 313 issues a reduction preparation instruction to all the controllers 210 in operation of the module 20 (S303), so that the module state in the management information changes to the reduction preparation state ST12 (S304). During the reduction preparation, the controller 210 that continues to operate (not stopped) creates a free area in the memory to store the data including the control information 511 that is moved from the stopped controller 210.

[0095] In preparation for reduction, the stopped controller 210 dumps the dirty data to the drive box or moves it to the controller 210 that continues to work. For example, the dirty data can be dumped when there is no free area to store the dirty data at the move destination, and moved to the move destination when a free area can be ensured. In one example, the control information 511 is not moved in preparation for reduction. In addition, the details of the processing of the controller 210 in the module state transition will be described later.

[0096] The reduction action transition control program 313 determines whether all the controllers 210 in operation have changed from the reduction preparation state to the reduction standby state based on the notification of the state change from the controller 210 in response to the reduction preparation command (S305). If more than one controller 210 cannot change to the reduction standby state (S305: No and S306: Yes), the module state is changed to the reduction failure state ST18 (S311).

[0097] When all the operating controllers 210 transition to the reduction standby state (S305: Yes), the reduction operation transition control program 313 issues a reduction transition instruction to all the operating controllers 210 (S307), and transitions the module state to the reduction setting state ST13 in the management information (S308).

[0098] Next, the reduced operation transition control program 313 determines whether the controller to be stopped is stopped and whether all other working controllers are in the reduced operation state based on the notification of the state transition from all the working controllers (S309). If all the working controllers are in the reduced operation state (S309: Yes), the module state in the management information is changed to the reduced operation state ST14 (S310). In addition, the reduced operation transition control program 313 can also prompt the user 33 of the change of the module state on the display device.

[0099] Fig.11 Flowchart showing an example of processing performed by the reduced operation release control program 315 of the management device 31. The reduced operation release control program 315 controls and manages the release of the reduced operation of the module 20 according to the reduction release instruction from the user. That is, the reduced operation release control program 315 controls and manages the transition from the reduced operation state ST14 to the normal operation state ST11.

[0100] The reduced operation release control program 315 determines whether all the operating controllers are in the reduced operation state (S401). The reduced operation release control program 315 may obtain state information from the operating controller 210 or refer to the immediately previous controller state information stored in the management information.

[0101] Next, the reduced operation release control program 315 issues a start command to the stopped controller 210 (S402). Next, the reduced operation release control program 315 changes the module state of the retained management information from the reduced operation state ST14 to the reduced operation release state ST16.

[0102] Next, the reduction operation release control program 315 determines whether all controllers are in operation (S404). The reduction operation release control program 315 waits for all controllers 210 that have issued the start-up command to start up (S404: No). When all controllers 210 are in operation (S404: Yes), the reduction operation release control program 315 issues a post-reduction saving command to all operating controllers 210 (S405).

[0103] Next, the reduction action release control program 315 changes the module state in the management information from the reduction release state ST16 to the reduced saving state ST17 (S406). Next, the reduction action release control program 315 determines whether all the working controllers 210 are in the normal operation state based on the notification of the state change from all the working controllers 210 (S407). The reduction action release control program 315 waits for all the working controllers 210 to change to the normal operation state (S407: No). When all the working controllers 210 are in the normal operation state (S407: Yes), the reduction action release control program 315 changes the module state in the retained management information from the reduced saving state ST17 to the normal operation state ST11.

[0104] Fig.12 This is a flowchart showing an example of processing performed by the duplex recovery control program 317 of the management device 31. The duplex recovery control program 317 controls and manages the transition between the reduced operation state ST14 and the duplex recovery state ST15. If a failure occurs in the working controller 210 during the reduced operation, the stopped controller 210 is started up, the failed controller is stopped and replaced with the controller 210, and duplexing is restored.

[0105] If a failure occurs in the module 20 in the reduced operation state ST14, the duplex recovery control program 317 selects the controller 210 to be activated (S1201).

[0106] The selection of the controller to be started is performed, for example, as follows. When a failure occurs in a working controller 210 in the first reduced operation mode 202A (2N2C mode), the stopped controller 210 of the node 21 of the failed controller 210 is selected (2N2C mode). When duplexing cannot be restored by the selected stopped controller 210, a stopped controller 210 of a node 21 different from the node 21 of the failed controller 210 is selected (1N2C mode).

[0107] When a controller 210 fails in the second reduced operation mode 202B (1N2C mode), a stopped controller 210 of a node 21 different from the node 21 of the failed controller 210 is selected (2N2C mode). When duplexing cannot be restored by the selected stopped controller 210, a stopped controller 210 of a node 21 different from the node 21 of the failed controller 210 is selected (2N2C mode).

[0108] Next, the duplication recovery control program 317 issues an activation command to the activation target controller (S1202). Next, the duplication recovery control program 317 changes the module state from the reduced operation state ST14 to the duplication recovery state ST15 in the retained management information.

[0109] Next, the duplication recovery control program 317 determines whether the target controller is in the reduced operation state based on the notification of the state transition from the target controller (S1204). The duplication recovery control program 317 waits for the target controller to transition to the reduced operation state (S1204: No). If the target controller is in the reduced operation state (S1204: Yes), the duplication recovery control program 317 changes the module state from the duplication recovery state ST15 to the reduced operation state ST14 in the retained management information (S1205).

[0110] Next, the processing of the controller 210 during the state transition of the node 21 will be described. Fig.13 Indicates reference Fig. 9 This section describes the state transition of the controller in the module state transition.

[0111] When the module state is the normal operation state ST11, the state of the controller is the normal operation state ST21. When the module state is the reduction failure state ST18, the state of a certain controller is the reduction failure state ST29.

[0112] In the transition of the module state from the normal operation state ST11 to the reduced operation state ST14, the state of the stopped controller 210 changes in the order of the normal operation state ST21, the reduced preparation state ST22, the reduced standby state ST23 and the stopped state ST25. The state of the controller 210 that maintains operation changes in the order of the normal operation state ST21, the reduced preparation state ST22, the reduced standby state ST23 and the reduced operation state ST24.

[0113] In the transition between the reduced operation state ST14 and the duplex recovery state ST15 of the module state, the controller state of the controller 210 instructed to start up transitions from the stopped state ST25 to the reduced operation state ST24.

[0114] According to the instruction from the module 20 and the management device 31, when the reduced operation state ST14 is changed to the normal operation state ST11, the controller 210 that was originally working changes from the reduced operation state ST24 to the normal operation state ST21 via the reduced saving state ST28. On the other hand, the controller 210 that was originally stopped changes from the stopped state ST25 to the normal operation state ST21 via the reduced release standby state ST27 and the reduced saving state ST28.

[0115] Fig.14A , Fig. 14B FIG. 2 shows an example of a combination of controller states when the module 20 is in the reduction preparation state ST12. Fig.14A In the state, the state of one controller of the node 21A is the reduction preparation state ST22, and the state of the other controller is the normal operation state ST21. The state of one controller of the node 21B is the normal operation state ST21, and the state of the other controller is the reduction standby state ST23.

[0116] exist Fig. 14B In the state, the state of one controller of the node 21A is the normal operation state ST21, and the state of the other controller is the reduction preparation state ST22. The state of one controller of the node 21B is the reduction standby state ST23, and the state of the other controller is the normal operation state ST21.

[0117] The following describes the processing operation of each controller 210 with reference to the flowchart. The controller 210 manages the state of the device internally, and notifies the management device 31 of the current state in response to a request from the management device 31 or voluntarily.

[0118] Fig.15 2 is a flowchart showing a processing example of the reduction preparation control program A251 of the controller 210. The reduction preparation control program A251 is a program executed by the controller 210 stopped in the reduction operation state. The reduction preparation control program A251 causes the controller 210 to transition from the normal operation state ST21 to the reduction failure state ST29 or the reduction preparation state ST22.

[0119] First, the reduction preparation control program A251 determines whether the controller 210 can be changed to the reduction operation state based on the preset fault condition (S501). An example of a fault condition that is determined to be unable to change is that the controller 210 has a fault in communication with other controllers 210. In the case where it is impossible to change to the reduction operation state (S501: No), the reduction preparation control program A251 changes the state of the controller 210 to the reduction failure state (S507). The state change is notified to the management device 31.

[0120] When any of the failure conditions are not satisfied and the controller can be switched to the reduced operation state (S501: Yes), the reduced preparation control program A251 switches the controller state to the reduced preparation state (S502). The management device 31 is notified of the state transition.

[0121] Next, the reduction preparation control program A251 determines the transfer destination of the logical volume control right held by the own controller 210 (S503). The reduction preparation control program A251 obtains information of the controller 210 that is still operating from the management device 31 or other controllers 210, and selects the transfer destination of the logical volume control right from them. The selection method is arbitrary, for example, the selection may be made in accordance with the user's designation via the management device 31, or the selection may be made in a manner that balances the load of the controller 210.

[0122] Next, the reduction preparation control program A251 transfers the logical volume control right to the determined migration destination controller 210 (S504). Specifically, by updating the control information 511, the controller 210 holding the control right is updated.

[0123] Next, the reduction preparation control program A251 dumps the dirty cache (S505). The data dump dumps the dirty cache to the drive box 40 or copies it to another controller 210 that continues to work. For the dump, only the data of the logical volume that the controller 210 has control over is the object. The other data is dumped by the other controller 210 of the duplex pair. Next, the reduction preparation control program A251 changes the state of the controller to the reduction standby state (S506). The state change is notified to the management device 31.

[0124] Fig.16 2 is a flowchart showing a processing example of the reduction preparation control program B252 of the controller 210. The reduction preparation control program B252 is a program executed by the controller 210 that continues to operate in the reduction operation state. The reduction preparation control program B252 causes the controller 210 to transition from the normal operation state ST21 to the reduction failure state ST29 or the reduction preparation state ST22.

[0125] First, the reduction preparation control program B252 determines whether the controller 210 can be changed to the reduction operation state based on the preset fault condition (S601). Fig.15The same as step S501 of . When it is not possible to change to the reduction action state (S601: No), the reduction preparation control program B252 changes the state of the controller 210 to the reduction failure state (S608). The state change is notified to the management device 31. When it is possible to change to the reduction action state (S601: Yes), the reduction preparation control program B252 changes the state of the controller to the reduction preparation state (S602). The state change is notified to the management device 31.

[0126] Next, the reduction preparation control program B252 dumps the dirty cache (S603). When the other corresponding controller 210 holding the duplicated dirty cache is stopped and the dirty cache is dumped, the reduction preparation control program B252 dumps the data of the logical volume for which the own controller 210 holds the control right to the drive box 40. In addition, the reduction preparation control program B252 receives the necessary copy of the dirty cache from the controller 210 to be stopped.

[0127] Next, the reduction preparation control program B252 determines whether the own controller 210 is the destination of the control information 511 from the controller 210 to be stopped (S604). The transfer destination of the control information 511 is set in advance in each controller 210 or the management device 31 for the combination of the controller 210 to be stopped and the controller 210 to be maintained. When it is set in the management device 31, the management device 31 indicates the transfer destination.

[0128] If the own controller 210 is not the destination of the control information 511 (S604: No), this process ends. If the own controller 210 is the destination of the control information 511 (S604: Yes), the reduction preparation control program B252 calculates the memory area required to store the received control information 511, and calculates the clean cache abandonment amount used to secure the insufficient memory area (S605).

[0129] In addition, on the premise that the dirty cache may be abandoned in order to transfer the dirty cache of other controllers 210 in addition to the control information 511 , the clean cache is abandoned in order to ensure the memory area required for the control information 511 .

[0130] The reduction preparation control program B252 abandons (discards) the required amount of clean buffers and secures the required free space (S606). Next, the reduction preparation control program B252 changes the controller state to the reduction standby state ST23 (S607). The state change is notified to the management device 31.

[0131] Fig.172 is a flowchart showing a processing example of the reduction transition control program 253 of the controller 210. The reduction transition control program 253 is executed by the controller 210 to be stopped. The reduction transition control program 253 causes the controller 210 to transition from the reduction standby state ST23 to the stop state ST25. The state transition is notified to the management device 31.

[0132] The reduction and migration control program 253 changes the state of the controller to the stop state in the management information held (S701). Next, the reduction and migration control program 253 determines whether the control information 511 needs to be migrated (S702). If the controller 210 holds and manages the original control information 511, the control information 511 needs to be migrated.

[0133] When the transfer of the control information 511 is required (S702: Yes), the reduction transfer control program 253 determines the transfer destination of the control information 511 (S703). The reduction transfer control program 253 determines the transfer destination based on the designation from the management device 31, or selects the transfer destination pre-designated for the combination of controllers 210 operating in the reduction action. The reduction transfer control program 253 sends the control information 511 to the controller 210 of the transfer destination (S704). Then, the reduction transfer control program 253 turns off the power supply of the controller 210 and stops it (S705). When the transfer of the control information 511 is not required, steps S703 and S704 are skipped. In addition, if all the controllers 210 of the node 21 are stopped, the power controller (not shown) of the node 21 stops the peripheral devices such as the fan 230.

[0134] Fig.18 2 is a flowchart showing a processing example of the reduction completion confirmation program 254 of the controller 210. The reduction transition control program 253 is executed by the controller 210 to maintain operation. The reduction completion confirmation program 254 causes the controller 210 to transition from the reduction standby state ST23 to the reduction operation state ST24.

[0135] The reduction completion confirmation program 254 determines whether the controller 210 is the control information transfer destination (S801). The determination of the transfer destination is as described in step 703. In the case where the controller 210 is the control information transfer destination (S801: Yes), the reduction completion confirmation program 254 determines whether the control information transfer has been completed (S802). The reduction completion confirmation program 254 waits for the transfer to be completed (S802: No).

[0136] If the transfer is completed (S802: No), the reduction completion confirmation program 254 changes the controller state in the management information to the reduced operation state (S803). The reduction completion confirmation program 254 notifies the management device 31 of the change to the reduced operation state. In addition, if the controller 210 is not the control information transfer destination (S801: No), step S802 is skipped.

[0137] Fig.19 2 is a flowchart showing a processing example of the emergency start control program 255 of the controller 210. The emergency start control program 255 is started in response to an instruction from the management device 31 or another controller 210 corresponding to the stop of the controller 210 operating in the module 20 during the reduction operation. The emergency start control program 255 causes the controller 210 to transition from the stop state ST25 to the reduced operation state ST24. The emergency start control program 255 executes processing for restoring duplication such as the control information 511.

[0138] The emergency start control program 255 changes the state of the controller in the management information from the stop state ST25 to the start state (S901). The state change is notified to the management device 31. Next, the emergency start control program 255 copies the control information 511 (S902). That is, the emergency start control program 255 copies the control information 511 from another controller 210 that is working. In addition to copying the control information 511, the dirty cache may also be copied.

[0139] Next, the emergency start control program 255 determines the logical volume control right to be transferred to the controller 210 (S905). The decision information of the allocation of the logical volume control right is as described above. The emergency start control program 255 transfers the determined logical volume control right to the controller 210 (S906). Specifically, the information about the control right in the control information 511 is updated. Next, the emergency start control program 255 changes the state of the controller in the management information to the reduced operation state ST24 (S907). The state change is notified to the management device 31.

[0140] Fig. 20 2 is a flowchart showing a processing example of the normal startup control program 256 of the controller 210. The normal startup control program 256 is started in a normal state without failure according to a reduction release instruction from the management device 31. The normal startup control program 256 causes the controller 210 to transition from the stop state ST25 to the reduction release standby state ST27.

[0141] The normal startup control program 256 changes the state of the controller in the management information from the stop state ST25 to the reduction cancellation standby state ST27 (S1001). The state change is notified to the management device 31.

[0142] Fig.21 2 is a flowchart showing a processing example of the reduction release control program 257 of the controller 210. The reduction release control program 257 is executed after the normal startup control program 256. The reduction release control program 257 executes processing for releasing the reduced state of the node. The node 21 changes to the normal operation state ST11, and the four controllers 210 operate.

[0143] The reduction cancellation control program 257 is executed by the controller 210 in the reduction operation state ST24 and the controller 210 that changes from the stop state ST25 to the reduction cancellation standby state ST27 by the normal startup control program 256 .

[0144] The reduction cancellation control program 257 is activated in response to an instruction from the management device 31. The reduction cancellation control program 257 causes the controller 210 to transition from the reduction operation state ST24 or the reduction cancellation standby state ST27 to the normal operation state ST21 via the post-reduction saving state ST28.

[0145] The reduction cancellation control program 257 changes the state of the controller of the management information to the reduced saving state (S1101). The state change is notified to the management device 31. Next, the reduction cancellation control program 257 determines whether the control information needs to be transferred, that is, the control information 511 is sent to other controllers (S1102). In the normal operation state ST11, the controller 210 that holds and manages the control information 511 is pre-specified, and the information is given from the management device 31 or held by each controller 210.

[0146] If transfer is necessary (S1102: Yes), the reduction cancellation control program 257 determines the control information transfer destination as described above (S1103). The reduction cancellation control program 257 transfers the control information (S1104). If transfer is not necessary (S1102: No), steps S1103 and S1104 are skipped.

[0147] Next, if there is a logical volume control right held, the reduction cancellation control program 257 determines the logical volume control right to be transferred (S1105). The controller 210 holding the logical volume control right is determined as described above. The reduction cancellation control program 257 performs the necessary transfer of the logical volume control right (S1106). Next, the reduction cancellation control program 257 changes the state of the controller in the held management information to the normal operation state (S1107). The state change is notified to the management device 31.

[0148] In addition, the present invention is not limited to the above-mentioned embodiments, but also includes various modified examples. For example, the above-mentioned embodiments are described in detail in order to explain the present invention in an easy-to-understand manner, but are not limited to all the structures described. In addition, a part of the structure of a certain embodiment can be replaced with the structure of other embodiments, and the structure of other embodiments can be added to the structure of a certain embodiment. In addition, with respect to a part of the structure of each embodiment, other structures can be added / deleted / replaced.

[0149] In addition, the above-mentioned components / functions / processing units, etc. can also be implemented by hardware by designing part or all of them, for example, using integrated circuits. In addition, the above-mentioned components, functions, etc. can also be implemented by software by interpreting and executing programs that implement each function through a processor. Information such as programs, tables, files, etc. that implement each function can be placed in a recording device such as a memory, a hard disk, an SSD (Solid State Drive), or a recording medium such as an IC card or an SD card.

[0150] Furthermore, the control lines and information lines are shown as those considered necessary for the description, and do not necessarily represent all the control lines and information lines on the product. In fact, it can be considered that almost all components are connected to each other.

Claims

1. A storage system, It is characterized in that Includes multiple storage controllers, The plurality of storage controllers change from a normal operation mode to a reduced operation mode according to an instruction from a management device. Each storage controller of the plurality of storage controllers transitions between a plurality of states, The above multiple states include: Normal operation state, in which data input and output are performed between one or more host devices and one or more storage drives in the above-mentioned normal operation mode; a reduced operation state, in which data is input and output between one or more host devices and one or more storage drives; and In the standby state, the data input and output between the host device and the storage drive are stopped, and the power consumption is lower than that of the normal operation state and the reduced operation state. In the normal operation mode, each of the plurality of storage controllers operates in the normal operation state. In the change from the normal operation mode to the reduced operation mode according to the instruction from the management device, the storage controller designated by the management device among the plurality of storage controllers changes from the normal operation state to the standby state, and the storage controllers other than the designated storage controller changes from the normal operation state to the reduced operation state. In the reduced operation mode, the storage controller in the standby state changes to the reduced operation state when a failure of the storage controller in the reduced operation state stops.

2. The storage system according to claim 1, It is characterized in that The above-mentioned multiple storage controllers are included in the module. The number of storage controllers included in the above module is 4, The above module includes the first node and the second node. Two of the four storage controllers are included in the first node, and the other two of the four storage controllers are included in the second node. The four storage controllers can perform data input and output between a common host device and a common storage drive in the normal operation state and the reduced operation state.

3. The storage system according to claim 1, It is characterized in that In the above-mentioned reduction operation mode, A host path exists between the storage controller in the reduced operation state and all host devices that communicate with the plurality of storage controllers via the host path in the normal operation mode. A driver path exists between the storage controller in the reduced operation state and all storage drivers that communicate with the plurality of storage controllers via the driver path in the normal operation mode.

4. The storage system according to claim 2, It is characterized in that Each of the first node and the second node includes a component shared by the two storage controllers of each node. The standby state is a stop state in which the power supply is stopped. Each of the first node and the second node stops the component when the two storage controllers of each node are in the stopped state.

5. The storage system according to claim 2, It is characterized in that The reduction operation mode is one of the first reduction operation mode and the second reduction operation mode. The first reduction operation mode mentioned above, Setting one storage controller of the first node to the standby state and another storage controller of the first node to the reduction operation state; One storage controller of the second node is set to the standby state, and another storage controller of the second node is set to the reduction operation state. The second reduced operation mode places the two storage controllers of the first node in the standby state and places the two storage controllers of the second node in the reduced operation state.

6. The storage system according to claim 2, It is characterized in that Manage more than one logical volume, The control right of each of the one or more logical volumes is given to a responsible storage controller of the plurality of storage controllers. The data input and output of each of the one or more logical volumes is exclusively controlled by the responsible storage controller. When the responsible storage controller changes to the standby state in the reduced operation mode, the control right granted is transferred to the storage controller in the reduced operation state.

7. The storage system according to claim 1, It is characterized in that In the normal operation mode, a storage controller of a part of the plurality of storage controllers maintains and manages control information of the storage system, and another storage controller of the plurality of storage controllers obtains the control information from the part of the storage controllers. When one of the part of the storage controllers changes to the standby state in the reduced operation mode, the control information of the one storage controller is transferred to the storage controller in the reduced operation state.

8. The storage system according to claim 7, It is characterized in that When the free area of ​​the memory of the storage controller to which the control information is to be transferred is insufficient to store the control information, the clean cache of the memory is abandoned, thereby ensuring an area for storing the control information.

9. The storage system according to claim 1, It is characterized in that In the reduced operation mode, dirty cache held by the storage controller that is to transition to the standby state is dumped to the storage drive or transferred to the storage controller in the reduced operation state.

10. A method for controlling a storage system, It is characterized in that The storage system includes multiple storage controllers. The plurality of storage controllers change from a normal operation mode to a reduced operation mode according to an instruction from a management device. Each storage controller of the plurality of storage controllers transitions between a plurality of states, The above multiple states include: Normal operation state, in which data input and output are performed between one or more host devices and one or more storage drives in the above-mentioned normal operation mode; a reduced operation state, in which data is input and output between one or more host devices and one or more storage drives; and In the standby state, the data input and output between the host device and the storage drive are stopped, and the power consumption is lower than that of the normal operation state and the reduced operation state. In the above control method, In the normal operation mode, each storage controller of the plurality of storage controllers operates in the normal operation state; In the change from the normal operation mode to the reduced operation mode according to the instruction from the management device, the storage controller designated by the management device among the plurality of storage controllers changes from the normal operation state to the standby state, and the storage controllers other than the designated storage controller changes from the normal operation state to the reduced operation state; In the reduced operation mode, the storage controller in the standby state changes to the reduced operation state when a failure of the storage controller in the reduced operation state stops.