CN106250048B - Manage the method and device of storage array - Google Patents

Manage the method and device of storage array Download PDF

Info

Publication number
CN106250048B
CN106250048B CN201510307041.XA CN201510307041A CN106250048B CN 106250048 B CN106250048 B CN 106250048B CN 201510307041 A CN201510307041 A CN 201510307041A CN 106250048 B CN106250048 B CN 106250048B
Authority
CN
China
Prior art keywords
controller
storage array
lun
operating status
storage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510307041.XA
Other languages
Chinese (zh)
Other versions
CN106250048A (en
Inventor
丁文强
袁舟
陈立钢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201510307041.XA priority Critical patent/CN106250048B/en
Publication of CN106250048A publication Critical patent/CN106250048A/en
Application granted granted Critical
Publication of CN106250048B publication Critical patent/CN106250048B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The embodiment of the present invention provides a kind of method and device for managing storage array.This method comprises: when the controller in the first storage array is received to when the request of LUN write-in data, and the operating status of the person that writes lock rights management of LUN is when being online, controller in first storage array sends the application request for writing locked authority to the person that writes lock rights management of LUN by communication link;When the controller in the first storage array obtain that the person that writes lock rights management provides after writing locked authority, the data are written to LUN.In embodiments of the present invention, data are being written after writing locked authority again to opposite end storage array application to LUN when array is locally stored, the consistency of data can be kept.

Description

Manage the method and device of storage array
Technical field
The present embodiments relate to the communication technology more particularly to a kind of method and devices for managing storage array.
Background technique
Dual-active data center is to use double WriteModes data while local storage system and remote storage system is written, Guarantee data in remote storage system with the real-time synchronization in local storage system.It is local when local storage system failure The business of storage system carrying can switch in remote storage system, restore point target (Recovery Point to realize Objective, referred to as: RPO) and recovery time target (Recovery Time Objective, referred to as: RTO) all for 0 one Kind solution.
Dual-active (Active-Active, referred to as: AA) data center's solution includes dual master control device mode.In AA mould In formula, local storage system and remote storage system provide logical unit number (logic unit number, referred to as: LUN) simultaneously Read-write, when local storage system failure, remote storage system can seamlessly carry the business in local storage system.
In the prior art, AA mode regards local storage system and remote storage system as an entirety, is in each storage One or more cluster is arranged in system.Cluster includes one or more engines, passes through optical-fibre channel (fibre between engine Channel, referred to as: FC) or Internet protocol (Internet Protocol, referred to as: IP) Network Synchronization data.But this is existing Have in technology, local storage system can not know the state of storage control in remote storage system, and when local LUN quilt The controller lock timing of remote storage system can destroy the consistency of data if data are written in local controller.
Summary of the invention
The embodiment of the present invention provides a kind of method and device for managing storage array, deposits when array is locally stored to opposite end Storage array application to LUN write locked authority after data are written again, the consistency of data can be kept.
In a first aspect, the embodiment of the present invention provides a kind of method for managing storage array, applied to the first storage array In controller, first storage array and the second storage array are by communication link, in first storage array Controller is stored with controller running state information and writes lock authority information, wherein the controller running state information packet The operating status of each controller in second storage array is included, the lock authority information of writing includes in first storage array The person that writes lock rights management of logical unit number LUN, the person that writes lock rights management of the LUN are the controls in second storage array Device processed, which comprises
When the controller in first storage array is received, and the request of data is written to the LUN, and it is described When the operating status of the person that writes lock rights management of LUN is online, the controller in first storage array passes through the communication Link, the person that writes lock rights management of Xiang Suoshu LUN send the application request for writing locked authority;
The person that writes lock rights management described in being obtained when the controller in first storage array provide after writing locked authority, The data are written to the LUN.
With reference to first aspect, in the first possible implementation of the first aspect, in first storage array Controller passes through the communication link, after the lock rights holder of Xiang Suoshu LUN sends the application request for writing locked authority, institute State method further include:
The person that writes lock rights management described in being obtained when the controller in first storage array provide after writing locked authority, The instruction that the data are written into the mirror image LUN of the LUN is sent to second storage array, the mirror image LUN is by institute State the controller management in the second storage array.
The possible implementation of with reference to first aspect the first, in second of possible implementation of first aspect In, the method also includes:
It is completed when the LUN is written, and receives what the mirror image LUN write-in that second storage array is sent was completed After response message, locked authority is write described in the controller release in first storage array.
With reference to first aspect, the first of first aspect into second of possible implementation any one, first In the third possible implementation of aspect, the method also includes:
Before writing locked authority described in discharging in the controller in first storage array, in first storage array Controller receive another request to LUN write-in data, and the fortune of the person that writes lock rights management of the LUN When row state is online, by the communication link, the person that writes lock rights management of Xiang Suoshu LUN sends the application for writing locked authority Request;
Controller in first storage array receive described in the person that writes lock rights management return to refusal and give and write locking power The response message of limit.
With reference to first aspect, in a fourth possible implementation of the first aspect, the method also includes:
Master controller in first storage array receive the master controller in second storage array transmission to Processing event, the event to be processed occur in second storage array, wherein the master control in first storage array Device processed is one in the controller in first storage array, and the master controller in second storage array is described the One in controller in two storage arrays;
Master controller in first storage array updates the controller operating status according to the event to be processed The operating status for the controller in second storage array that information includes;
Master controller in first storage array sends updated controller running state information to the first storage Other controllers in array, other each controllers update the controller running state information of oneself storage.
The 4th kind of possible implementation with reference to first aspect, in the 5th kind of possible implementation of first aspect In, when the event to be processed is controller failure event, master controller in first storage array according to Processing event updates the operation shape of the controller in second storage array that the controller running state information includes State, comprising:
The operation shape of the controller of the controller failure event will occur for the master controller in first storage array State is removed from the controller running state information, or
In the controller running state information, the control will occur for the master controller in first storage array The operating status of the controller of device event of failure is updated to offline or failure.
With reference to first aspect, in the sixth possible implementation of the first aspect, the method also includes:
Master controller in first storage array receives the extensive of the transmission of the master controller in second storage array Multiple request, the recovery request carry the operating status of each controller in second storage array;
Master controller in first storage array adds the operating status of each controller in second storage array Adding to the controller running state information, wherein the operating status of each controller is online in second storage array, Or, the operating status of each controller in second storage array is updated to online;
Master controller in first storage array sends the first response message to the master in second storage array Controller, first response message carry the operating status of each controller in first storage array;
Wherein, the master controller in first storage array is one in the controller in first storage array A, the master controller in second storage array is one in the controller in second storage array.
With reference to first aspect, in a seventh possible implementation of the first aspect, the method also includes:
When the master controller in first storage array detects that communication link restores event, the first storage battle array Master controller in column generates recovery request, and the recovery request carries the operation shape of each controller in first storage array State;
Master controller in first storage array sends the recovery request to the master in second storage array Controller;
Master controller in first storage array receives the of the transmission of the master controller in second storage array Two response messages, second response message carry the operating status of each controller in second storage array;
Master controller in first storage array parses second response message, obtains second storage array In each controller operating status;
Master controller in first storage array adds the operating status of each controller in second storage array Adding to the controller running state information, wherein the operating status of each controller is online in second storage array, Or, the operating status of each controller in second storage array is updated to online;
Wherein, the master controller in first storage array is one in the controller in first storage array A, the master controller in second storage array is one in the controller in second storage array.
With reference to first aspect, the first of first aspect into the 7th kind of possible implementation any one, first In 8th kind of possible implementation of aspect, the controller operating status includes: online, any offline and in failure One.
Second aspect, the embodiment of the present invention provide a kind of device for managing storage array, are integrated in the first storage array In controller, first storage array and the second storage array are by communication link, in first storage array Controller is stored with controller running state information and writes lock authority information, wherein the controller running state information packet The operating status of each controller in second storage array is included, the lock authority information of writing includes in first storage array The person that writes lock rights management of logical unit number LUN, the person that writes lock rights management of the LUN are the controls in second storage array Device processed, described device include receiving module, sending module, detection module and processing module;
The receiving module, for receiving the request to LUN write-in data;
The detection module, the operating status of the person that writes lock rights management for detecting the LUN;
The sending module, for when the receiving module receive it is described to the LUN write-in data request when, and And the detection module passes through the communication chain when detecting that the operating status of the person that writes lock rights management of the LUN is online Road, the person that writes lock rights management of Xiang Suoshu LUN send the application request for writing locked authority;
The receiving module is also used to receive the response message for writing locked authority that the person that writes lock rights management provides;
The processing module, after writing locked authority for obtain that the person that writes lock rights management provides, Xiang Suoshu LUN is write Enter the data.
In conjunction with second aspect, in a second possible implementation of the second aspect, the processing module is also used to:
After what the person that writes lock rights management described in the acquisition provided writes locked authority, the sending module is triggered to described second Storage array sends the instruction that the data are written into the mirror image LUN of the LUN, and the mirror image LUN is stored by described second Controller management in array.
In conjunction with second of possible implementation of second aspect, in the third possible implementation of second aspect In, the receiving module is also used to receive the response that the mirror image LUN write-in that second storage array is sent is completed and disappears Breath;
The processing module is also used to complete when LUN write-in, and the receiving module receives the mirror image LUN After the response message completed is written, locked authority is write described in release.
In conjunction with second aspect, second aspect the first into second of possible implementation any one, second In the third possible implementation of aspect, the sending module is also used to write locking described in processing module release Before permission, the receiving module receives another request to LUN write-in data, and the detection module is examined When to measure the operating status of the person that writes lock rights management of the LUN be online, by the communication link, Xiang Suoshu LUN's is write Lock rights management person sends the application request for writing locked authority;
The receiving module is also used to receive the person that writes lock rights management and returns to refusal and gives the response for writing locked authority Message.
In conjunction with second aspect, in the fourth possible implementation of the second aspect, the controller of described device is integrated For the master controller in first storage array, the master controller in first storage array is first storage array In controller in one;
The receiving module is also used to receive the event to be processed that the master controller in second storage array is sent, The event to be processed occurs in second storage array, wherein the master controller in second storage array is institute State one in the controller in the second storage array;
The processing module is also used to according to the event to be processed, and updating the controller running state information includes Second storage array in controller operating status;
The sending module is also used to send updated controller running state information to its in the first storage array His controller, other each controllers update the controller running state information of oneself storage.
In conjunction with the 4th kind of possible implementation of second aspect, in the 5th kind of possible implementation of second aspect In, when the event to be processed is controller failure event, the processing module is executed according to the event to be processed, is updated When the operating status for the controller in second storage array that the controller running state information includes, specifically:
The operating status of the controller of the controller failure event will occur from the controller running state information It removes, or
In the controller running state information, the operating status of the controller of the controller failure event will occur It is updated to offline or failure.
In conjunction with second aspect, in the sixth possible implementation of the second aspect, the controller of described device is integrated For the master controller in first storage array, the master controller in first storage array is first storage array In controller in one;
The receiving module is also used to receive the recovery request that the master controller in second storage array is sent, institute State the operating status that recovery request carries each controller in second storage array;
The processing module is also used to the operating status of each controller in second storage array being added to the control Device running state information processed, wherein the operating status of each controller is online in second storage array, or, by described The operating status of each controller is updated to online in two storage arrays;
The sending module is also used to send the first response message to the master controller in second storage array, institute State the operating status that the first response message carries each controller in first storage array;
Wherein, the master controller in second storage array is one in the controller in second storage array It is a.
In conjunction with second aspect, in the 7th kind of possible implementation of second aspect, the controller of described device is integrated For the master controller in first storage array, the master controller in first storage array is first storage array In controller in one;
The detection module is also used to detect communication link and restores event;
The processing module is also used to generate extensive when the detection module detects that the communication link restores event Multiple request, the recovery request carry the operating status of each controller in first storage array;
The sending module is also used to send the recovery request to the master controller in second storage array;
The receiving module is also used to receive the second response report that the master controller in second storage array is sent Text, second response message carry the operating status of each controller in second storage array;
The processing module is also used to parse second response message, obtains and respectively controls in second storage array The operating status of device;And the operating status of each controller in second storage array is added to the controller and runs shape State information, wherein the operating status of each controller is online in second storage array, or, by second storage array In the operating status of each controller be updated to online;
Wherein, the master controller in second storage array is one in the controller in second storage array It is a.
In conjunction with second aspect, second aspect the first into the 7th kind of possible implementation any one, second In 8th kind of possible implementation of aspect, the controller operating status includes: online, any offline and in failure One.
The embodiment of the present invention manages the method and device of storage array, is stored by the controller in the first storage array There is controller running state information and write lock authority information, wherein controller running state information includes the second storage array In each controller operating status, write the person that writes lock rights management that lock authority information includes LUN in the first storage array, LUN's The person that writes lock rights management is the controller in the second storage array, and the first storage array and the second storage array pass through communication link Communication realizes monitoring of first storage array to the operating status of the controller in the second storage array, that is to say, that first deposits Storage array can directly know the presence of the second storage array and the generation of failure;In addition, the control in the first storage array Device is received to when the request of LUN write-in data, and when the operating status of the person that writes lock rights management of LUN is online, first is deposited Controller in storage array sends the application request for writing locked authority to the person that writes lock rights management of LUN, writes lock power to obtain What limit manager provided writes locked authority, and data are written to LUN, can keep the consistency of data.
Detailed description of the invention
In order to illustrate the technical solution of the embodiments of the present invention more clearly, below will be in embodiment or description of the prior art Required attached drawing does one and simply introduces, it should be apparent that, the accompanying drawings in the following description is some implementations of the invention Example, for those of ordinary skill in the art, without any creative labor, can also be according to these attached drawings Obtain other attached drawings.
Fig. 1 is Application Scenarios-Example figure of the present invention;
Fig. 2 is the flow chart of the embodiment of the method one of present invention management storage array;
Fig. 3 is that the method for present invention management storage array is applied to the working principle exemplary diagram of application scenarios as shown in Figure 1;
Fig. 4 is the flow chart of the embodiment of the method two of present invention management storage array;
Fig. 5 is the exemplary diagram of the embodiment of the method three of present invention management storage array;
Fig. 6 is the flow chart of the embodiment of the method four of present invention management storage array;
Fig. 7 is the exemplary diagram of the embodiment of the method five of present invention management storage array;
Fig. 8 is the exemplary diagram of the embodiment of the method six of present invention management storage array;
Fig. 9 is the flow chart of the embodiment of the method seven of present invention management storage array;
Figure 10 is the flow chart of the embodiment of the method eight of present invention management storage array;
Figure 11 is the structural schematic diagram of the Installation practice one of present invention management storage array;
Figure 12 is the structural schematic diagram of the Installation practice two of present invention management storage array.
Specific embodiment
In order to make the object, technical scheme and advantages of the embodiment of the invention clearer, below in conjunction with the embodiment of the present invention In attached drawing, technical scheme in the embodiment of the invention is clearly and completely described, it is clear that described embodiment is A part of the embodiment of the present invention, instead of all the embodiments.Based on the embodiments of the present invention, those of ordinary skill in the art Every other embodiment obtained without making creative work, shall fall within the protection scope of the present invention.
It should be understood that although usable term first, second etc. is herein to describe various elements or event or message, These elements or event or message should not be limited by these terms.These terms are only to distinguish an element or event or report Literary and another element or event or message.For example, in the case where not departing from the application protection scope, the first storage array It is referred to alternatively as the second storage array, and similarly, the second storage array is referred to alternatively as the first storage array.Wherein, storage array Including controller and disk, after controller receives user data, it is sent to disk and is stored.
Wherein, RTO is the time span that enterprise may be allowed service disruption.Such as disaster occur afternoon in just need it is extensive Multiple, RTO value is exactly 12 hours.RPO refers to after service recovery, when restoring corresponding to the data got between point.If existing Carry out backing up primary when daily morning zero of Shi Qiye, after service recovery, what is stored in system can be only before nearest disaster occurs Data when that morning zero.According to the simple principle of two above, enterprise can not only be obtained most existing data system Suitable disaster recovery solution can also require to obtain most suitable disaster recovery solution according to set RTO and RPO.
In embodiments of the present invention, using AA mode dual-active data center's solution as a characteristic of storage system. The target that RTO and RPO is equal to 0 can be realized in the case where not needing addition equipment such as engine for the embodiment of the present invention.This Inventive embodiments can be generalized to such as network attached storage (Network Attached Storage, referred to as: NAS), object In the dual-active data center solution of the storage systems such as storage composition.
In the embodiment of the present invention, controller running state information is stored with by the controller in the first storage array, In, which includes the operating status of each controller in the second storage array, by two composition dual-active numbers An entirety is invented according to the controller cluster in center, independent storage array, the controller in each storage array There is a controller running state information.Controller running state information can not only make the storage array perception presence of opposite end and right Failure occurs in end, in addition, the controller in the first storage array, which is stored with, writes lock authority information, this is write lock authority information and includes The person that writes lock rights management of LUN in first storage array, the person that writes lock rights management of the LUN are the control in the second storage array Device, to provide unified management for distributed lock.
As shown in Figure 1, two storage arrays, respectively storage array A and storage array B, wherein those skilled in the art The first storage array that storage array A can be interpreted as in the embodiment of the present invention, storage array B are in the embodiment of the present invention The second storage array.And similarly, the first storage array that storage array B can also be interpreted as in the embodiment of the present invention, Storage array A is the second storage array in the embodiment of the present invention.
In following embodiment, using storage array A as the first storage array, storage array B is as the second storage array Example is illustrated.
Storage array A includes controller A1, controller A2, controller A3 and controller A4.Wherein, controller A1 is storage Master controller in array A, i.e. master controller in the first storage array, remaining is the slave controller in the first storage array. Storage array B includes controller B1, controller B2, controller B3 and controller B4.Wherein, controller B1 is in storage array B Master controller, i.e. master controller in the second storage array, remaining is the slave controller in the second storage array.It should be noted It is that the number of the slave controller in slave controller and the second storage array in the first storage array is not limited to as shown in Figure 1 3.
In the embodiment of the present invention, each storage array safeguards a controller running state information and writes lock permission letter Breath, that is to say, that controller running state information and write in the controller that is stored in storage array of lock authority information.For The form that storage array stores above- mentioned information is unrestricted, such as storage, etc. in the form of view.It is deposited in the form of view Chu Shi, view include that mapping of the controller in storage array A in storage array B further includes optionally in storage array A Controller local mapping.Here it is possible to which the controller mapping in storage array B is known as alias node.Therefore, of the invention The view that storage array A and storage array B respectively see in embodiment is different.
As shown in Figure 1, the view of storage array A includes the sheet of controller A1, controller A2, controller A3 and controller A4 Ground maps A1, A2, A3 and A4, further includes that controller B1, controller B2, controller B3 and controller B4 map to obtain alias node B1 ', B2 ', B3 ' and B4 '.Accordingly, the view of storage array B includes controller B1, controller B2, controller B3 and controller The local Mapping B 1 of B4, B2, B3 and B4 further include mapping to obtain by controller A1, controller A2, controller A3 and controller A4 Alias node A1 ', A2 ', A3 ' and A4 '.By interchanger 10 and interchanger 20 come place between storage array A and storage array B The communication between the controller in storage array is managed, each interchanger serves a different connection structure.
Fig. 2 is the flow chart of the embodiment of the method one of present invention management storage array.The embodiment of the present invention provides a kind of pipe The method for managing storage array, in the controller applied to the first storage array, first storage array and the second storage array are logical Cross communication link.Controller in first storage array is stored with controller running state information and writes lock permission letter Breath, wherein controller running state information includes the operating status of each controller in the second storage array, writes lock authority information packet Include the person that writes lock rights management of LUN in the first storage array, the person that writes lock rights management of LUN is the control in the second storage array Device.
This method comprises:
S201, it receives to when the request of LUN write-in data when controller in the first storage array, and LUN writes When the operating status of lock rights management person is online, the controller in the first storage array writes lock to LUN by communication link Rights manager sends the application request for writing locked authority.
S202, when the controller in the first storage array obtain that the person that writes lock rights management provides after writing locked authority, to Data are written in LUN.
Wherein, the applicant for writing locked authority is controller, and specifically controller is data application, which is write Enter the permission to LUN.
Specifically, (Input/Output, the letter of the dual-active data center solution host input and output based on distributed lock Claim: IO) two storage arrays can be written and read simultaneously.When LUN of the host to the controller in the first storage array is carried out It when writing, while writing data into the LUN of the controller in the second storage array, realizes the controller in two storage arrays LUN real-time synchronization, wherein LUN refers to the block storage unit that storage array is presented to host.Since host can be right simultaneously The LUN of the LUN of controller in first storage array and the controller in the second storage array is written and read, and therefore, host is visited Ask the mutual exclusion lock that must add between storage array when LUN.Mutual exclusion lock is a distributed lock between storage array, and the principle of distributed lock is to write Lock rights management person can be any one controller in two storage arrays, and other controllers write lock permission to application It all must be to the person that writes lock rights management application.
The controller in controller and the second storage array in first storage array maps to obtain view, while view is Mutual exclusion lock provides across storage array controllers views between storage array.The embodiment of the present invention is by two of composition dual-active data center Storage array is managed as a cluster, simplifies the deployment of mutual exclusion lock between storage array, reduces dual-active data center IO Complexity, improve IO performance.
Since controller operating status may include: any one in online, offline and failure.Therefore, first Controller in storage array is received to when the request of LUN write-in data, and lock is write in the controller detection in the first storage array Whether the operating status of rights manager is online, if the operating status for the person that writes lock rights management is online, the first storage battle array Controller in column sends the application request for writing locked authority to the person that writes lock rights management of LUN by communication link, and is obtaining After what the person that must write lock rights management provided writes locked authority, data are written to LUN.
The embodiment of the present invention manages the method and device of storage array, is stored by the controller in the first storage array There is controller running state information and write lock authority information, wherein controller running state information includes the second storage array In each controller operating status, write the person that writes lock rights management that lock authority information includes LUN in the first storage array, LUN's The person that writes lock rights management is the controller in the second storage array, and the first storage array and the second storage array pass through communication link Communication realizes monitoring of first storage array to the operating status of the controller in the second storage array, that is to say, that first deposits Storage array can directly know the presence of the second storage array and the generation of failure;In addition, the control in the first storage array Device is received to when the request of LUN write-in data, and when the operating status of the person that writes lock rights management of LUN is online, first is deposited Controller in storage array sends the application request for writing locked authority to the person that writes lock rights management of LUN, writes lock power to obtain What limit manager provided writes locked authority, and data are written to LUN, can keep the consistency of data.
On the basis of the above embodiments, the controller in the first storage array is by communication link, to the lock permission of LUN After owner sends the application request for writing locked authority, this method can also include: when the controller in the first storage array After obtain that the person that writes lock rights management provides writes locked authority, is sent to the second storage array and number is written into the mirror image LUN of LUN According to instruction, mirror image LUN is by the controller management in the second storage array.Wherein, LUN and mirror image LUN can possess identical LUN identification (identification, referred to as: ID).LUN is synchronous with the data holding that mirror image LUN is stored.Therefore, LUN and mirror As forming data protection between LUN, when the controller for managing LUN sends failure, that number can be obtained from its mirror image LUN According to avoiding loss of data.LUN and mirror image LUN is located in different storage arrays, carries out pipe by corresponding controller Reason.
There are 2 in the storage array of the embodiment of the present invention, host and 2 storage arrays connect, when host is issued to some LUN indicated by the LUN ID carried when the instruction of data is written in LUN, in instruction is referred to as dual-active LUN, the two storage arrays Set be properly termed as dual-active storage array.Dual-active LUN is virtual, the corresponding 2 physics LUN of dual-active LUN, that is, above-mentioned The LUN ID of LUN and mirror image LUN, dual-active LUN and physics LUN three can be identical.Therefore, the two storage arrays are presented to use Only one LUN (dual-active LUN) at family, but actual storage data is 2 physics LUN (LUN and mirror image LUN).To some LUN When middle write-in data, data are actually written in 2 LUN, are equivalent to data and are backed up.Local storage system can be direct The presence of remote storage system and the generation of failure are known, to cannot achieve the seamless pipe of data write-in.In write-in data When, the corresponding 2 physics LUN of dual-active LUN all in can movable (can be written into data) state, therefore it is referred to as double LUN。
Operating status includes: any one in online, offline and failure.Online controller can work normally, Controller in offline and failure can not work normally.
If to LUN write-in data, other controllers are also written other data into LUN, or to its mirror image LUN Middle other data of write-in, the data that will cause LUN and mirror image LUN are inconsistent, that is, destroy between LUN and mirror image LUN Data consistency.Therefore, the embodiment of the present invention avoids the generation of such case using locked authority is write, and writing locked authority is A kind of permission of mutual exclusion.Only apply into this oriented LUN of the controller for writing locked authority that the right of data is written;In addition, Shen Please possess the right that identical data is written into mirror image LUN to the controller for writing locked authority.Before locked authority is write in release, Data are written into LUN or mirror image LUN without permission in other controllers in other arrays.
The data binding writing locked authority and being write, that is to say, that write locked authority and define that application, which can only be written, writes locking Specified data when permission.Even if controller, which possesses, writes locked authority, other data can not also be written.In other words, lock is write The applicant for determining permission is controller, be controller be the data application, the data are written to the permission of the LUN.
In addition, this method can also include: to complete when LUN is written, and receive the mirror image LUN of the second storage array transmission After the response message completed is written, locked authority is write in the controller release in the first storage array.Locking is write in embodiment guarantee Permission is obtained in different moments by different controllers.
On the basis of the above, this method can also include: that locked authority is write in the controller release in the first storage array Before, the controller in the first storage array receives another request to LUN write-in data, and the lock of writing of LUN is weighed The operating status of manager is limited when being online, by communication link, is sent to the person that writes lock rights management of LUN and writes locked authority Application request;Controller reception in first storage array writes lock rights management, and person's return refusal gives the response for writing locked authority Message.That is, writing locked authority can only be obtained in synchronization by a controller, do not released there is controller to obtain it Before putting, remaining controller is waited.
Here above-described embodiment is illustrated by specific example.As shown in figure 3, Fig. 3 shows exemplary work original as shown in Figure 1 Reason figure.With reference to Fig. 3, user accesses a dual-active LUN by the controller B2 of the controller A2 and storage array B of storage array A, This dual-active LUN includes the corresponding physics LUN2 of controller A2 corresponding physics LUN1 and controller B2, and this dual-active LUN Writing lock rights management, person is controller B1.It is controller B1 in the person that writes lock rights management that the controller of storage array B is seen, and That sees on storage array A writes lock rights management person is alias node B1 ' of the controller B1 in the view of storage array A. When user issues the request of write-in data from the controller B2 of storage array B, controller B2 writes locking to controller B1 application Then permission writes data to physics LUN2 and physics LUN1 respectively, after writing, locked authority is write in controller B2 release.If Controller B2 application to write locked authority to release write locked authority during, user issues from the controller A2 of storage array A The request of data, controller A2 alias section in the view of storage array B to controller B1 are written to physics LUN1 for another Locked authority is write in point B1 ' application, and controller A2 judges controller physical node representated by alias node B1 ' for storage array B Controller B1, controller A2 will apply for that authority request is sent to the controller B1 of storage array B.Locking is write in controller B1 discovery Permission is held and do not discharged by controller B2, then returns to application failure to controller A2, the write-in data on controller A2 The locked authorities to be written such as request.Controller B1 reallocates after waiting controller B2 release to write locked authority writes locked authority to control The request acquisition of write-in data continues to execute data write operation after writing locked authority on device A2, controller A2.And read data only Data are locally read in the storage array issued, is not related to the mutual exclusion across storage array, does not need read lock and determine permission.
Illustrate that the controller to the controller storage in aforementioned first storage array runs shape below by way of specific embodiment The management of state information.
Fig. 4 is the flow chart of the embodiment of the method two of present invention management storage array.The basis of embodiment shown in Fig. 2 On, as shown in figure 4, this method can also include:
Master controller in S401, the first storage array receives the to be processed of the master controller transmission in the second storage array Event.
Specifically, event to be processed occurs in the second storage array.Wherein, the master controller in the first storage array is One in controller in first storage array, the master controller in the second storage array is in second storage array One in controller.
Master controller in S402, the first storage array updates controller running state information packet according to event to be processed The operating status of the controller in the second storage array contained;
Master controller in S403, the first storage array sends updated controller running state information to the first storage Other controllers in array, other each controllers update the controller running state information of oneself storage.
Guarantee the controller running state information and the of the controller storage in the first storage battle array through the embodiment of the present invention The controller running state information of the controller storage of two storage array kinds is consistent.But meaning of the invention is not unanimously strongly consistent Property, but guarantee final consistency.Strong consistency is to ensure that each moment is all consistent.And it does not require constantly unanimously finally Unanimously, it but is consistent after waiting configurations or event handling process.
Optionally, event to be processed may include controller failure event, newly-increased controller event, the first storage array with At least one of communication link fails event and communication link recovery event type between second storage array.Event to be processed Refer to the event that the number of the controller in the first storage array and/or operating status can be caused to change, and/or, second The event that the number and/or operating status of controller in storage array change.
Influence of the different events to be processed to the controller running state information of the controller storage in the first storage array Difference is described in detail below by way of several specific implementations.
In the first specific implementation, event to be processed is controller failure event.In the implementation, S402 can be with It include: that master controller in the first storage array transports the operating status of the controller of generator controller event of failure from controller It is removed in row status information;Or, the master controller in the first storage array will control in controller running state information The operating status of the controller of device event of failure is updated to offline or failure.
In the first optional way, for the event that the controller in the first storage array breaks down, that is, local terminal When controller failure event, master controller in the first storage array is by the operation shape of the controller of generator controller event of failure State is removed from controller running state information;Or, the main control in controller running state information, in the first storage array The operating status of the controller of generator controller event of failure is updated to offline or failure by device.With reference to Fig. 5, when the first storage battle array When master controller in column, i.e. controller A1 detect controller A4 failure, the corresponding mapping of controller A4 is moved from view It removes, or, the operating status of controller A4 is updated to offline or failure.
In second of optional way, if generator controller event of failure is the master controller in the first storage array, the One storage array determines the master controller in the first new storage array;Master controller in the first new storage array will occur The operating status of the controller of controller failure event is removed from controller running state information;Or, running shape in controller In state information, the master controller in the first new storage array by the operating status of the controller of generator controller event of failure more New is offline or failure.
The controller of generator controller event of failure may be controller in the second storage array, in the first storage array Master controller or other controllers.If the controller plc in the second storage array, using the first specific implementation side Formula updates controller running state information;If the master controller in the first storage array, updated using second of optional way Controller running state information;If other controllers in the first storage array, is updated and controlled using the first optional way Device running state information.
In second of specific implementation, event to be processed is newly-increased controller event.In the implementation, S402 can be with It include: that the controller that newly-increased controller event increases newly is added to controller operating status by master controller in the first storage array Information.
Wherein, the process flow for increasing controller event newly is similar with the process flow of controller failure event.By what is increased newly Controller is added to the controller running state information of the first storage array in a manner of alias node.If newly-increased controller event For the event occurred in the first storage array, which will be added to control by the master controller in the first storage array Device running state information processed.
Fig. 6 and Fig. 7 illustrates the master controller pair in master controller and the second storage array in the first storage array The process flow of controller failure event.
As shown in fig. 6, this method may include:
Master controller in S601, the first storage array detects the controller failure event in the first storage array.
Master controller in S602, the first storage array is believed according to controller failure event update controller operating status Breath.
Updated controller running state information is synchronized to first and deposited by the master controller in S603, the first storage array Store up other controllers in array.
Master controller in S604, the first storage array is by controller failure event forwarding to the master in the second storage array Controller.
Hereafter, the master controller in the first storage array ends processing process.
Master controller in second storage array receives the controller failure event, updates the control in the second storage array The controller running state information of device storage processed;By the controller operation of the controller storage in updated second storage array Status information is synchronized on other controllers in the second storage array;End processing process.
With reference to Fig. 7,1. indicate that the master controller in the first storage array updates the controller operation in the first storage array 2. status information indicates that controller failure event is sent in the second storage array by the master controller in the first storage array 3. master controller indicates that the master controller in the second storage array updates the controller operating status letter in the second storage array Breath.
Master controller in first storage array can handle the control of above-mentioned first storage array and the second storage array Device number and/or the event of operation generating state variation.
In the third specific implementation, event to be processed is communication link fails event.In the implementation, first is deposited Master controller in storage array moves the operating status of the controller in the second storage array from controller running state information It removes;Or, the master controller in the first storage array runs the operating status of the controller in the second storage array in controller Operating status in status information is updated to offline or failure.
Communication link between first storage array and the second storage array breaks down, the first storage array and the second storage Array can not communicate.First storage array and the second storage array respectively believe the alias node of other side from controller operating status It is removed in breath or its operating status is updated to offline or failure, as shown in Figure 8.
In 4th kind of specific implementation, event to be processed is that communication link restores event, and event to be processed is first The event occurred in storage array.
Fig. 9 is the flow chart of the embodiment of the method seven of present invention management storage array.The basis of embodiment shown in Fig. 2 On, as shown in figure 9, this method can also include:
Master controller in S901, the first storage array receives the extensive of the transmission of the master controller in second storage array Multiple request, the recovery request carry the operating status of each controller in the second storage array.
The operating status of controller each in second storage array is added to by the master controller in S902, the first storage array Controller running state information, wherein the operating status of each controller is online in the second storage array, or, by the second storage The operating status of each controller is updated to online in array.
Master controller in S903, the first storage array sends the first response message to the main control in the second storage array Device, first response message carry the operating status of each controller in the first storage array.
Wherein, the master controller in the first storage array is one in the controller in the first storage array, and second deposits The master controller in array is stored up as one in the controller in the second storage array.
In 5th kind of specific implementation, event to be processed is link-recovery event, and event to be processed is the second storage The event that array side generates.Figure 10 is the flow chart of the embodiment of the method eight of present invention management storage array.Reality shown in Fig. 2 On the basis of applying example, as shown in Figure 10, this method can also include:
S110, when the master controller in the first storage array detect communication link restore event when, the first storage array In master controller generate recovery request, the recovery request carry the first storage array in each controller operating status.
Master controller in S120, the first storage array sends recovery request to the master controller in the second storage array.
Master controller in S130, the first storage array receives the second sound that the master controller in the second storage array is sent Message is answered, which carries the operating status of each controller in the second storage array.
Master controller in S140, the first storage array parses the second response message, obtains and respectively controls in the second storage array The operating status of device processed.
The operating status of controller each in second storage array is added to by the master controller in S150, the first storage array Controller running state information, wherein the operating status of each controller is online in the second storage array, or, by the second storage The operating status of each controller is updated to online in array.
Wherein, the master controller in the first storage array is one in the controller in the first storage array, and second deposits The master controller in array is stored up as one in the controller in the second storage array.
Next, the 4th kind of specific implementation and the 5th kind of specific implementation is described collectively.
When the communication link between the first storage array and the second storage array restores normal, the first storage array is deposited with second It stores up array and controller operation shape is carried out by the master controller in the master controller and the second storage array in the first storage array The configuration of state information smoothing.For smoothly configuring.It will be appreciated by those skilled in the art that are as follows: the communication link between two storage arrays When restoring normal, the direction by initiating creation controller running state information creates the controller running state information jointly Another party inquires controller information and is converted to alias node and is written in local controller running state information.Namely It says, if creation controller running state information is initiated by the first storage array in the embodiment of the present invention, the present invention is real The first storage array applied in example updates controller running state information using the 5th kind of specific implementation;If creating controller Running state information is initiated by the second storage array in the embodiment of the present invention, then the first storage in the embodiment of the present invention Array updates controller running state information using the 4th kind of specific implementation.
Above-described embodiment illustrates how to update controller running state information by specific implementation, and updates controller The premise of running state information is controller running state information to be created.
Creating controller running state information may include:
1) master controller in the first storage array receives the order for creating controller running state information.
User sends the order for creating controller running state information to the first storage array, by the first storage array In master controller execute this for creating the order of controller running state information.
2) master controller in the first storage array obtains the operating status of the controller in the first storage array.
3) master controller in the first storage array sends creation order to the master controller in the second storage array, the wound Build the operating status that order includes the controller in the first storage array.
First storage array generates creation and orders and be sent to according to the operating status of the controller in the first storage array Master controller in second storage array.
Correspondingly, after the master controller in the second storage array receives creation order, local controller is first obtained Operating status;Then, the master controller in the second storage array orders the control in the first storage array for including according to creation The operating status of the operating status of device and the controller in the second storage array, the controller operation of the second storage array of configuration Status information;After configuration is good, the master controller in the second storage array is same by configured controller running state information It walks into other controllers in the second storage array;Master controller in second storage array will be in second storage array Operating status, the creation implementing result of controller carry the master controller returned in the first storage array in response message.
4) master controller in the first storage array receives the response message that the master controller in the second storage array is sent, The response message includes the operating status of the controller in the second storage array.
5) master controller in the first storage array is according to the operating status of the controller in the first storage array and second The operating status of controller in storage array creates the controller running state information of the first storage array.
To sum up, after the first storage array receives the order for creating controller running state information, by this storage battle array The operating status of controller in column is sent to the second storage array, and waits the implementing result of the second storage array;Then root According to the operating status of the controller of two storage arrays, local controller running state information is created.
Finally, local controller running state information is synchronized to each first and deposited by the master controller in the first storage array It stores up in other controllers in array.Optionally, the master controller in the first storage array returns result to user.
In above-described embodiment, the operating status of the controller in the first storage array can be indicated using bitmap, and/or, The operating status of controller in second storage array.For example, be expressed as 1 online, failure or it is expressed as 0, etc. offline, this hair Bright embodiment is not limited.
Figure 11 is the structural schematic diagram of the Installation practice one of present invention management storage array.The embodiment of the present invention provides one The device of kind management storage array, the device are integrated in the controller of the first storage array, and the first storage array and second is deposited Storage array passes through communication link.Controller in first storage array is stored with controller running state information and writes lock Authority information, wherein controller running state information includes the operating status of each controller in the second storage array;Write lock permission Information includes the person that writes lock rights management of LUN in the first storage array, and LUN's writes lock rights management person is in the second storage array Controller.
As shown in figure 11, the device 100 for managing storage array includes: receiving module 11, sending module 22, detection module 33 And processing module 44.
Wherein, receiving module 11 is used to receive the request to LUN write-in data.Detection module 33 is for detecting writing for LUN The operating status of lock rights management person.Sending module 22 is used to receive asking to LUN write-in data when receiving module 11 When asking, and when detection module 33 detects that the operating status of the person that writes lock rights management of LUN is online, by communication link, The application request for writing locked authority is sent to the person that writes lock rights management of LUN.Receiving module 11, which is also used to receive, writes lock permission pipe The response message for writing locked authority that reason person provides.Processing module 44 is used to obtain the locking of writing that the person that writes lock rights management provides and weighs After limit, data are written in Xiang Suoshu LUN.
The device of the present embodiment, can be used for executing the technical solution of above-mentioned any means embodiment, realization principle and Technical effect is similar, and details are not described herein again.
On the basis of the above, processing module 44 can be also used for: write locking power obtain that the person that writes lock rights management provides After limit, triggering sending module 22 sends the instruction that the data are written into the mirror image LUN of LUN, the mirror to the second storage array As LUN is by the controller management in the second storage array.
In addition, receiving module 11 can be also used for receiving the response that the mirror image LUN write-in that the second storage array is sent is completed Message.Processing module 44 can be also used for completing when LUN write-in, and receiving module 11 receives the sound that mirror image LUN write-in is completed After answering message, locked authority is write in release.
Further, sending module 22 can be also used for before processing module 44 discharges and writes locked authority, receiving module 11 receive another to LUN write-in data request, and detection module 33 detect LUN write lock rights management person's When operating status is online, by communication link, the application request for writing locked authority is sent to the person that writes lock rights management of LUN. Receiving module 11, which can be also used for receiving the person that writes lock rights management, to be returned to refusal and gives the response message for writing locked authority.
In a kind of implementation, the controller of the device 100 of integrated management storage array is the master in the first storage array Controller, the master controller in the first storage array are one in the controller in the first storage array.
In this implementation, what the master controller that receiving module 11 can be also used for receiving in the second storage array was sent Event to be processed, event to be processed occur in the second storage array, wherein the master controller in the second storage array is second One in controller in storage array.Processing module 44 can be also used for updating controller operation according to event to be processed The operating status for the controller in the second storage array that status information includes.Sending module 22 can be also used for after sending update Controller running state information to other controllers in the first storage array, other each controllers update oneself storage The controller running state information.
Optionally, when event to be processed is controller failure event, processing module 44 is executed according to event to be processed, more It, can be with when the operating status for the controller in the second storage array that new controller running state information includes specifically: will send out The operating status of the controller of raw controller failure event is removed from controller running state information, or, running in controller In status information, the operating status of the controller of generator controller event of failure is updated to offline or failure.
In another implementation, the controller of the device 100 of integrated management storage array is in the first storage array Master controller, the master controller in the first storage array are one in the controller in the first storage array.
In this implementation, what the master controller that receiving module 11 can be also used for receiving in the second storage array was sent Recovery request, the recovery request carry the operating status of each controller in the second storage array.Processing module 44 can be also used for The operating status of controller each in second storage array is added to controller running state information, wherein the second storage array In the operating status of each controller be online, or, the operating status of controller each in the second storage array is updated to online.Hair Module 22 is sent to can be also used for sending the first response message to the master controller in the second storage array, the first response message carries The operating status of each controller in first storage array.Wherein, the master controller in the second storage array is the second storage array In controller in one.
In another implementation, the controller of the device 100 of integrated management storage array is in the first storage array Master controller, the master controller in the first storage array are one in the controller in the first storage array.
In this implementation, detection module 33 can be also used for detection communication link recovery event.Processing module 44 is also It can be used for generating recovery request when detection module 33 detects that communication link restores event, which carries first The operating status of each controller in storage array.Sending module 22 can be also used for sending recovery request in the second storage array Master controller.The second response report that the master controller that receiving module 11 can be also used for receiving in the second storage array is sent Text, second response message carry the operating status of each controller in the second storage array.Processing module 44 can be also used for solving The second response message is analysed, the operating status of each controller in the second storage array is obtained;And it will respectively be controlled in the second storage array The operating status of device is added to controller running state information, wherein the operating status of each controller is in the second storage array Online, or, the operating status of controller each in the second storage array is updated to online.Wherein, the master in the second storage array Controller is one in the controller in the second storage array.
It should be noted that controller operating status may include: online, offline and event in above-mentioned any embodiment Any one in barrier.In addition, running shape for newly-increased controller event and communication link fails event and creation controller State information etc., details are not described herein, and specific descriptions can refer to above method embodiment.
Figure 12 is the structural schematic diagram of the Installation practice two of present invention management storage array.As shown in figure 12, this implementation The device 200 for the management storage array that example provides includes processor 210 and memory 220.Wherein, the storage of memory 220 executes Instruction communicates, processor 210 calls when the device 200 for managing storage array is run between processor 210 and memory 220 Executing instruction in memory 220, the method for executing above-mentioned management storage array, implementing principle and technical effect class Seemingly, details are not described herein again.
In several embodiments provided herein, it should be understood that revealed device and method can pass through it Its mode is realized.For example, apparatus embodiments described above are merely indicative, for example, the unit or module It divides, only a kind of logical function partition, there may be another division manner in actual implementation, such as multiple units or module It can be combined or can be integrated into another system, or some features can be ignored or not executed.Another point, it is shown or The mutual coupling, direct-coupling or communication connection discussed can be through some interfaces, the indirect coupling of equipment or module It closes or communicates to connect, can be electrical property, mechanical or other forms.
The module as illustrated by the separation member may or may not be physically separated, aobvious as module The component shown may or may not be physical module, it can and it is in one place, or may be distributed over multiple In network unit.Some or all of the modules therein can be selected to realize the mesh of this embodiment scheme according to the actual needs 's.
Those of ordinary skill in the art will appreciate that: realize that all or part of the steps of above-mentioned each method embodiment can lead to The relevant hardware of program instruction is crossed to complete.Program above-mentioned can be stored in a computer readable storage medium.The journey When being executed, execution includes the steps that above-mentioned each method embodiment to sequence;And storage medium above-mentioned include: ROM, RAM, magnetic disk or The various media that can store program code such as person's CD.
Finally, it should be noted that the above embodiments are only used to illustrate the technical solution of the present invention., rather than its limitations;To the greatest extent Pipe present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that: its according to So be possible to modify the technical solutions described in the foregoing embodiments, or to some or all of the technical features into Row equivalent replacement;And these are modified or replaceed, various embodiments of the present invention technology that it does not separate the essence of the corresponding technical solution The range of scheme.

Claims (18)

1. a kind of method for managing storage array, which is characterized in that in the controller applied to the first storage array, described first Storage array and the second storage array pass through communication link, and the controller in first storage array is stored with controller Running state information and write lock authority information, wherein the controller running state information includes second storage array In each controller operating status, it is described write lock authority information include in first storage array logical unit number LUN write Lock rights management person, the person that writes lock rights management of the LUN are the controller in second storage array, the method packet It includes:
When the controller in first storage array is received, and the request of data is written to the LUN, and the LUN When the operating status for the person that writes lock rights management is online, controller in first storage array by the communication link, The application request for writing locked authority is sent to the person that writes lock rights management of the LUN;
The person that writes lock rights management described in being obtained when the controller in first storage array provide after writing locked authority, to institute It states LUN and the data is written.
2. the method according to claim 1, wherein the controller in first storage array is led to by described After believing that link, the lock rights holder of Xiang Suoshu LUN send the application request for writing locked authority, the method also includes:
The person that writes lock rights management described in being obtained when the controller in first storage array provide after writing locked authority, to institute It states the second storage array and sends the instruction that the data are written into the mirror image LUN of the LUN, the mirror image LUN is by described Controller management in two storage arrays.
3. according to the method described in claim 2, it is characterized in that, the method also includes:
It is completed when the LUN is written, and receives the response that the mirror image LUN write-in that second storage array is sent is completed After message, locked authority is write described in the controller release in first storage array.
4. method according to any one of claims 1 to 3, which is characterized in that the method also includes:
Control before writing locked authority described in discharging in the controller in first storage array, in first storage array Device processed receives another request to LUN write-in data, and the operation shape of the person that writes lock rights management of the LUN When state is online, by the communication link, the person that writes lock rights management of Xiang Suoshu LUN, which sends, to be write the application of locked authority and asks It asks;
Writing lock rights management described in controller reception in first storage array, person's return is refused to give to write locked authority Response message.
5. the method according to claim 1, wherein the method also includes:
Master controller in first storage array receives the to be processed of the transmission of the master controller in second storage array Event, the event to be processed occur in second storage array, wherein the master controller in first storage array For one in the controller in first storage array, the master controller in second storage array is described second to deposit Store up one in the controller in array;
Master controller in first storage array updates the controller running state information according to the event to be processed The operating status for the controller in second storage array for including;
Master controller in first storage array sends updated controller running state information to the first storage array In other controllers, other each controllers update oneself storage the controller running state information.
6. according to the method described in claim 5, it is characterized in that, when the event to be processed be controller failure event when, According to the event to be processed, update the controller running state information includes master controller in first storage array Second storage array in controller operating status, comprising:
Master controller in first storage array will occur the operating status of the controller of the controller failure event from It is removed in the controller running state information, or
In the controller running state information, the controller event will occur for the master controller in first storage array The operating status of the controller of barrier event is updated to offline or failure.
7. the method according to claim 1, wherein the method also includes:
The recovery that master controller in first storage array receives the transmission of the master controller in second storage array is asked It asks, the recovery request carries the operating status of each controller in second storage array;
The operating status of each controller in second storage array is added to by the master controller in first storage array The controller running state information, wherein the operating status of each controller is online in second storage array, or, will The operating status of each controller is updated to online in second storage array;
Master controller in first storage array sends the first response message to the main control in second storage array Device, first response message carry the operating status of each controller in first storage array;
Wherein, the master controller in first storage array is one in the controller in first storage array, institute The master controller in the second storage array is stated as one in the controller in second storage array.
8. the method according to claim 1, wherein the method also includes:
When the master controller in first storage array detects that communication link restores event, in first storage array Master controller generate recovery request, the recovery request carries the operating status of each controller in first storage array;
Master controller in first storage array sends the recovery request to the main control in second storage array Device;
Master controller in first storage array receives the second sound of the transmission of the master controller in second storage array Message is answered, second response message carries the operating status of each controller in second storage array;
Master controller in first storage array parses second response message, obtains each in second storage array The operating status of controller;
The operating status of each controller in second storage array is added to by the master controller in first storage array The controller running state information, wherein the operating status of each controller is online in second storage array, or, will The operating status of each controller is updated to online in second storage array;
Wherein, the master controller in first storage array is one in the controller in first storage array, institute The master controller in the second storage array is stated as one in the controller in second storage array.
9. method according to any one of claims 1 to 3, which is characterized in that the controller operating status include: Any one in line, offline and failure.
10. a kind of device for managing storage array, which is characterized in that be integrated in the controller of the first storage array, described the One storage array and the second storage array pass through communication link, and the controller in first storage array is stored with control Device running state information and write lock authority information, wherein the controller running state information includes the second storage battle array The operating status of each controller in column, the lock authority information of writing includes logical unit number LUN in first storage array The person that writes lock rights management, the person that writes lock rights management of the LUN are the controller in second storage array, described device packet Include receiving module, sending module, detection module and processing module;
The receiving module, for receiving the request to LUN write-in data;
The detection module, the operating status of the person that writes lock rights management for detecting the LUN;
The sending module, for when the receiving module receives the request to LUN write-in data, and institute When stating detection module and detecting that the operating status of the person that writes lock rights management of the LUN is online, by the communication link, to The person that writes lock rights management of the LUN sends the application request for writing locked authority;
The receiving module is also used to receive the response message for writing locked authority that the person that writes lock rights management provides;
The processing module, after writing locked authority for obtain that the person that writes lock rights management provides, institute is written in Xiang Suoshu LUN State data.
11. device according to claim 10, which is characterized in that the processing module is also used to:
After what the person that writes lock rights management described in the acquisition provided writes locked authority, the sending module is triggered to second storage Array sends the instruction that the data are written into the mirror image LUN of the LUN, and the mirror image LUN is by second storage array In controller management.
12. device according to claim 11, which is characterized in that
The receiving module is also used to receive the response that the mirror image LUN write-in that second storage array is sent is completed and disappears Breath;
The processing module is also used to complete when LUN write-in, and the receiving module receives the mirror image LUN write-in After the response message of completion, locked authority is write described in release.
13. 0 to 12 described in any item devices according to claim 1, which is characterized in that
The sending module, before being also used to write locked authority described in processing module release, the receiving module is received To another request to LUN write-in data, and the detection module detects that the LUN's writes lock rights management When the operating status of person is online, by the communication link, the person that writes lock rights management of Xiang Suoshu LUN, which sends, writes locked authority Application request;
The receiving module is also used to receive the person that writes lock rights management and returns to refusal and give and writes the response of locked authority and disappear Breath.
14. device according to claim 10, which is characterized in that the controller of integrated described device is first storage Master controller in array, the master controller in first storage array are in the controller in first storage array One;
The receiving module is also used to receive the event to be processed that the master controller in second storage array is sent, described Event to be processed occurs in second storage array, wherein the master controller in second storage array is described the One in controller in two storage arrays;
The processing module is also used to update the institute that the controller running state information includes according to the event to be processed State the operating status of the controller in the second storage array;
The sending module is also used to send updated controller running state information to other controls in the first storage array Device processed, other each controllers update the controller running state information of oneself storage.
15. device according to claim 14, which is characterized in that when the event to be processed is controller failure event When, the processing module is executed according to the event to be processed, update that the controller running state information includes described the When the operating status of the controller in two storage arrays, specifically:
The operating status that the controller of the controller failure event occurs is removed from the controller running state information, Or
In the controller running state information, the operating status that the controller of the controller failure event will occur updates For offline or failure.
16. device according to claim 10, which is characterized in that the controller of integrated described device is first storage Master controller in array, the master controller in first storage array are in the controller in first storage array One;
The receiving module is also used to receive the recovery request that the master controller in second storage array is sent, described extensive Multiple request carries the operating status of each controller in second storage array;
The processing module is also used to the operating status of each controller in second storage array being added to the controller Running state information, wherein the operating status of each controller is online in second storage array, or, described second is deposited The operating status of each controller is updated to online in storage array;
The sending module, is also used to send the first response message to the master controller in second storage array, and described One response message carries the operating status of each controller in first storage array;
Wherein, the master controller in second storage array is one in the controller in second storage array.
17. device according to claim 10, which is characterized in that the controller of integrated described device is first storage Master controller in array, the master controller in first storage array are in the controller in first storage array One;
The detection module is also used to detect communication link and restores event;
The processing module is also used to generate when the detection module detects that the communication link restores event and restore to ask It asks, the recovery request carries the operating status of each controller in first storage array;
The sending module is also used to send the recovery request to the master controller in second storage array;
The receiving module is also used to receive the second response message that the master controller in second storage array is sent, institute State the operating status that the second response message carries each controller in second storage array;
The processing module is also used to parse second response message, obtains each controller in second storage array Operating status;And the operating status of each controller in second storage array is added to the controller operating status and is believed Breath, wherein the operating status of each controller is online in second storage array, or, by each in second storage array The operating status of controller is updated to online;
Wherein, the master controller in second storage array is one in the controller in second storage array.
18. 0 to 12 described in any item devices according to claim 1, which is characterized in that the controller operating status includes: Online, any one offline and in failure.
CN201510307041.XA 2015-06-05 2015-06-05 Manage the method and device of storage array Active CN106250048B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510307041.XA CN106250048B (en) 2015-06-05 2015-06-05 Manage the method and device of storage array

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510307041.XA CN106250048B (en) 2015-06-05 2015-06-05 Manage the method and device of storage array

Publications (2)

Publication Number Publication Date
CN106250048A CN106250048A (en) 2016-12-21
CN106250048B true CN106250048B (en) 2019-06-28

Family

ID=57626470

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510307041.XA Active CN106250048B (en) 2015-06-05 2015-06-05 Manage the method and device of storage array

Country Status (1)

Country Link
CN (1) CN106250048B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108345515A (en) * 2017-01-22 2018-07-31 中国移动通信集团四川有限公司 Storage method and device and its storage system
CN109964208B (en) * 2017-10-25 2021-07-09 华为技术有限公司 Double-live storage system and address allocation method
CN110209641A (en) * 2018-02-12 2019-09-06 杭州宏杉科技股份有限公司 A kind of trunking service processing method and device applied in more controlled storage systems
CN109857341B (en) * 2019-01-15 2022-04-12 新华三技术有限公司成都分公司 Method and device for determining write lock prefetch length

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6073218A (en) * 1996-12-23 2000-06-06 Lsi Logic Corp. Methods and apparatus for coordinating shared multiple raid controller access to common storage devices
CN102541471A (en) * 2011-12-28 2012-07-04 创新科软件技术(深圳)有限公司 Storage system with multiple controllers
CN103731485A (en) * 2013-12-26 2014-04-16 华为技术有限公司 Network equipment, cluster storage system and distributed lock management method
CN104486319A (en) * 2014-12-09 2015-04-01 上海爱数软件有限公司 Real-time synchronization method and real-time synchronization system for configuration file applied to high-availability system
CN104520845A (en) * 2012-09-06 2015-04-15 惠普发展公司,有限责任合伙企业 Scalable file system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6073218A (en) * 1996-12-23 2000-06-06 Lsi Logic Corp. Methods and apparatus for coordinating shared multiple raid controller access to common storage devices
CN102541471A (en) * 2011-12-28 2012-07-04 创新科软件技术(深圳)有限公司 Storage system with multiple controllers
CN104520845A (en) * 2012-09-06 2015-04-15 惠普发展公司,有限责任合伙企业 Scalable file system
CN103731485A (en) * 2013-12-26 2014-04-16 华为技术有限公司 Network equipment, cluster storage system and distributed lock management method
CN104486319A (en) * 2014-12-09 2015-04-01 上海爱数软件有限公司 Real-time synchronization method and real-time synchronization system for configuration file applied to high-availability system

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
分布式并行文件系统锁管理的研究与设计;赵旺;《中国优秀硕士学位论文全文数据库(信息科技辑)》;20090515(第2009年5期);正文第9-11页
双控制器RAID系统的研究与实现;严亮;《万方数据(学位)》;20121225;正文第31-32页

Also Published As

Publication number Publication date
CN106250048A (en) 2016-12-21

Similar Documents

Publication Publication Date Title
CN103777897B (en) Method and system for copying data between primary and secondary storage locations
CN110784350B (en) Design method of real-time high-availability cluster management system
CN113169952B (en) Container cloud management system based on block chain technology
CN107707393B (en) Multi-active system based on Openstack O version characteristics
KR101547719B1 (en) Maintaining data integrity in data servers across data centers
CN100489796C (en) Methods and system for implementing shared disk array management functions
CN106250048B (en) Manage the method and device of storage array
US9423956B2 (en) Emulating a stretched storage device using a shared storage device
WO2021108452A3 (en) Systems and methods for enabling a highly available managed failover service
CN108696581A (en) Caching method, device, computer equipment and the storage medium of distributed information
CN106331166B (en) A kind of access method and device of storage resource
JP2003076592A (en) Data storage system
CN106133676A (en) Storage system
CN109845192B (en) Computer system and method for dynamically adapting a network and computer readable medium
US9442811B2 (en) Emulating a stretched storage device using a shared replicated storage device
CN109376197A (en) A kind of method of data synchronization, server and computer storage medium
CN109558273A (en) A kind of disk array backup method, electronic equipment and disk array
CN102088490A (en) Data storage method, device and system
CN105808374B (en) A kind of snap processing method and relevant device
CN105049258B (en) The data transmission method of network disaster tolerance system
CN113259447B (en) Cloud platform deployment method and device, electronic equipment and storage medium
CN105635310B (en) A kind of access method and device of storage resource
US8949562B2 (en) Storage system and method of controlling storage system
CN105404565B (en) A kind of dual-active data guard method and device
CN107135097A (en) The disaster tolerance system and disaster recovery method filed based on bookkeeping

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant