WO2017145286A1 - ストレージシステムの管理方法 - Google Patents

ストレージシステムの管理方法 Download PDF

Info

Publication number
WO2017145286A1
WO2017145286A1 PCT/JP2016/055441 JP2016055441W WO2017145286A1 WO 2017145286 A1 WO2017145286 A1 WO 2017145286A1 JP 2016055441 W JP2016055441 W JP 2016055441W WO 2017145286 A1 WO2017145286 A1 WO 2017145286A1
Authority
WO
WIPO (PCT)
Prior art keywords
copy
volume
pair
copy pair
topology
Prior art date
Application number
PCT/JP2016/055441
Other languages
English (en)
French (fr)
Inventor
義之 田畑
拓海 松浪
竹内 伸也
Original Assignee
株式会社日立製作所
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社日立製作所 filed Critical 株式会社日立製作所
Priority to PCT/JP2016/055441 priority Critical patent/WO2017145286A1/ja
Publication of WO2017145286A1 publication Critical patent/WO2017145286A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices

Definitions

  • the present invention relates to a storage system management method.
  • Some storage devices have a replication function that replicates data stored in one volume to another volume.
  • the replication function also includes a local copy function that creates a copy of a volume in a storage device on another volume in the storage device and a remote copy function that creates a copy of a volume in a storage device on another storage device. is there.
  • the replication function is used for the purpose of storing backup data at a specific point in the volume or for preventing the contents of the volume from being lost in the event of a large-scale failure that causes the entire site to go down. .
  • a copy of a volume is created on two or more volumes.
  • Patent Document 1 discloses a system that acquires the status of each pair for a set of volume pairs used by an application, and further a set of cascaded volume pairs, and aggregates and displays the acquired status of the pair on a management terminal. Is disclosed.
  • an administrator needs to set information on a volume used by an application in advance. Based on the information, the system identifies a set of volume pairs used by the application.
  • the system configuration may change, for example, the volume configuration used by the application (number of volumes, volume pair connection relationship, etc.) may occur.
  • the volume information used by each application must be reset every time the system configuration is changed, which complicates management work.
  • the storage system management method is executed by a management server that manages a storage system having a plurality of volume pairs each including a primary volume and a secondary volume storing a copy of the primary volume.
  • the management server collects information on each volume pair from the storage system, uses the collected information to identify the root volume that is the copy source from the multiple volume pairs, and the same data as the starting volume ( Create a topology that is a set of volumes in which (replicas) are stored.
  • the present invention facilitates management of volume groups used in business.
  • 10 is a flowchart of copy state aggregation processing; It is a flowchart showing the determination method of a copy state.
  • 6 is a flowchart showing a method for determining a copy status of a remote copy group in a topology. It is the figure which showed the example of pair inversion. It is an example of a display of an alert. It is another example of copy pair information.
  • processing executed by a computer such as a host may be described using “program” as the subject.
  • the processing described in the program is performed by the processor (CPU (Central Processing Unit)) executing the program, so the expression having the program as the subject is not technically accurate.
  • the contents of the process may be explained with the program as the subject. Further, part or all of the program may be realized by dedicated hardware.
  • Various programs described below may be provided by a storage medium that can be read by a program distribution server or a computer, and may be installed in each device that executes the program.
  • the computer-readable storage medium is a non-transitory computer-readable medium such as a non-volatile storage medium such as an IC card, an SD card, or a DVD.
  • “Volume” means a storage area (storage space) provided by a target device such as a storage device or storage device to an initiator such as a host or storage controller.
  • the storage apparatus can create one logical volume from the volumes provided by a plurality of storage devices, and provide this logical volume to the host. This logical volume is referred to herein as a “logical volume” or “logical device”.
  • Remote copy means a process of creating a copy of a storage device volume in a volume of another storage device.
  • the storage apparatus has a function of performing remote copy.
  • the storage apparatus writes the write data to each volume of the two storage apparatuses.
  • “Local copy” means a process of creating a copy of a storage device volume in another volume in the storage device.
  • the storage apparatus has a function of performing local copy.
  • the storage apparatus writes the write data to the two volumes.
  • volume in which data is stored first is called “primary volume” or “P-VOL”.
  • second volume in which data is stored is called “secondary volume” or “S-VOL”.
  • a pair of a primary volume and a secondary volume is called a “volume pair” or a “copy pair”.
  • reference numerals are given to the respective components constituting the computer system.
  • a reference number with suffix such as “ ⁇ 1” may be used.
  • Components having different suffixes and the same reference numbers mean the same type of components.
  • the component may be specified using a reference number that abbreviates suffix.
  • FIG. 1 is a diagram illustrating a hardware configuration of a computer system according to the present embodiment.
  • the computer system according to this embodiment includes a management server 1, one or more application servers 2 to 4, and one or more storage apparatuses 10 (10-0 to 10-3), which are LAN (Local Area Network). 6 is connected.
  • the LAN 6 is a network for performing communication according to the TCP / IP protocol such as Ethernet.
  • the management server 1 has a CPU 11, a memory 12, a disk device 13, and an interface 14 for connecting the management server 1 to the LAN 6.
  • a storage management program which will be described later, is loaded on the memory 12, and various processes, which will be described later, are performed by the CPU 11 executing the storage management program.
  • the management server 1 sets the storage apparatus 10 via the LAN 6 or collects configuration information from the storage apparatus 10.
  • the management server 1 also has input devices such as a keyboard and a mouse and output devices such as a display.
  • the administrator of the storage apparatus 10 can perform management operations (volume definition and copy pair operation described later) of the storage apparatus 10 using the input device. Further, the management server 1 displays the status of the storage apparatus 10 and the volume on the output device.
  • Each application server 2 to 4 is connected to the storage apparatus 10 via the SAN 7 and accesses a volume provided by the storage apparatus 10.
  • the SAN 7 is a network composed of one or more fiber channel switches and fiber channel cables, for example. Since the application servers 2 to 4 have the same configuration, the application server 2 will be mainly described below.
  • the application server 2 includes a CPU 21, a memory 22, a SAN interface 23 for connecting the application server 2 to the SAN 7, and an interface 24 for connecting the application server 2 to the LAN 6.
  • the application server 2 accesses via the SAN interface 23.
  • An application program for example, a database management system (DBMS) or a spreadsheet program
  • DBMS database management system
  • the application server 2 executes the application program so that the volume The process such as accessing is performed.
  • the application servers 3 and 4 are also configured in the same manner as the application server 2, and access a volume provided by the storage apparatus 10 via the SAN 7 by executing a predetermined application program.
  • the configuration of the storage apparatus 10 (10-0 to 10-3) will be described.
  • the configuration of the storage apparatus 10-0 will be described as an example, but the storage apparatuses 10-1 to 10-3 have the same configuration.
  • a set of storage apparatuses 10-1 to 10-3 is referred to as a “storage system”.
  • the storage device (storage subsystem) 10-0 includes a disk unit 104 and a controller 100 that processes requests received from the application server 2 and the management server 1.
  • the disk unit 104 has a plurality of storage devices (denoted as “Disk” in the drawing).
  • the storage device is, for example, an HDD (Hard Disk Drive) or an SSD (Solid State Device).
  • the controller 100 includes a CPU 101, a memory 102, a front-end interface 103 connected to the SAN 7 (indicated as “FE I / F 103” in the figure), and a LAN interface 105 connected to the LAN 6 (“LAN I / F 105 in the figure). And a back-end interface 106 (denoted as “BE I / F 106” in the figure) connected to a storage device in the disk unit 104 is provided.
  • the front end interface 103 is connected to the SAN 7 and transmits / receives read data or write data from the application servers 2 to 4.
  • the LAN interface 105 is connected to the LAN 6 and is used for communication with the management server 1.
  • the number of front-end interfaces 103 is not limited to one, and a plurality of front-end interfaces 103 may be provided in the controller 100.
  • the use of each front-end interface 103 may be limited. For example, one front-end interface 103 is used only for communication with the application servers 2 to 4, and another front-end interface 103 is used only for communication with other storage devices (10-1 to 10-3). It may be configured to be used.
  • a control program is loaded in the memory 102, and the CPU 101 reads out and executes the control program from the memory 102, so that volume setting processing based on commands from the management server 1 and I / O from the application servers 2 to 4 are performed. Requests, data replication between volumes or storage devices, and the like are performed.
  • the storage apparatuses 10-1 to 10-3 are also configured in the same manner as the storage apparatus 10-0 and have the same functions as the storage apparatus 10-0. Therefore, in the figure, the description of the specific configuration of the controllers of the storage apparatuses 10-1 to 10-3 is omitted.
  • SAN 7 is described as a single network, but it may be two physically (or logically) separated networks. For example, it may be composed of a first network that connects the application servers 2 to 4 and the storage device 10000, and a second network that connects the storage devices without being connected to the application servers 2 to 4.
  • a client terminal equipped with an input / output device (display, keyboard, etc.) used by the administrator may be provided in the computer system.
  • the management server 1 may be configured to output the copy topology display content and the alert display content to the display of the client terminal.
  • the CPU 101 in the controller 100 executes a control program.
  • the controller 100 forms one or a plurality of logical storage areas using the storage areas of one or more storage devices.
  • this logical storage area is called a volume or a logical unit.
  • a logical unit may be abbreviated as LU.
  • the storage apparatus 10 provides volumes to the application servers 2 to 4, and the application servers 2 to 4 issue I / O requests (read commands, write commands, etc.) to the volumes provided from the storage apparatus 10.
  • I / O requests read commands, write commands, etc.
  • the controller 100 executes data access to the volume.
  • the storage apparatus 10 further has a replication function for creating a volume copy.
  • “replication” is a process of writing a copy of data to another volume (referred to as a second volume) when data is written to a certain volume (referred to as a first volume). Means.
  • the set of the first volume and the second volume is referred to as a volume pair or a copy pair.
  • the volume in which data is first stored is called “primary volume” or “P-VOL”.
  • the second volume in which data is stored is called “secondary volume” or “S-VOL”.
  • An S-VOL that has a copy pair relationship with a P-VOL is called a P-VOL pair volume.
  • a P-VOL that has a copy pair relationship with a certain S-VOL is referred to as an S-VOL pair volume.
  • the P-VOL and S-VOL may be in the same storage device 10 or may be in different storage devices 10.
  • the operation of copying the data written in the P-VOL to the S-VOL is called local copy or local replication.
  • a copy pair for which a local copy is performed is called a “local copy pair”.
  • the operation of copying the data written in the P-VOL to the S-VOL is called remote copy or remote replication.
  • a copy pair for which remote copying is performed is called a “remote copy pair”.
  • Remote copy operations include synchronous remote copy and asynchronous remote copy.
  • a synchronous remote copy and an asynchronous remote copy will be described with reference to FIG.
  • FIG. 2A shows the concept of synchronous remote copy. Assume that the storage apparatus 10-0 has a P-VOL and the P-VOL pair volume is in the storage apparatus 10-1.
  • the storage device 10-0 When the application server 2 sends a write request and write data to the P-VOL (S1), the storage device 10-0 writes the write data to the P-VOL and also sends the write data to the S-VOL to the storage device 10-1. An instruction is given to write the write data (S2). After writing the write data to the S-VOL, the storage device 10-1 responds to the storage device 10-0 that the writing has been completed (S3). After receiving the response from the storage apparatus 10-1, the storage apparatus 10-0 responds to the application server 2 that the writing of the write data specified by the write request is completed (S4). Therefore, when replication by synchronous remote copy is performed, the contents of P-VOL and S-VOL are always kept the same.
  • FIG. 2 is a diagram showing the concept of asynchronous remote copy.
  • the storage apparatus 10-0 has a P-VOL and the P-VOL pair volume is in the storage apparatus 10-1.
  • the application server 2 sends a write request and write data to the P-VOL (S1 ′)
  • the storage apparatus 10-0 writes the write data to the P-VOL, and the write data specified by the write request to the application server 2 A response to the effect that the writing is completed (S2 ').
  • the storage apparatus 10-0 instructs the storage apparatus 10-1 to write write data to the S-VOL (S3 '). Therefore, when replication by asynchronous remote copy is performed, the contents of the P-VOL and S-VOL are not necessarily the same, and a copy of the data written in the P-VOL is still stored in the S-VOL. There may be no state.
  • remote copy pairs that perform synchronous remote copy are called “synchronous remote copy pairs”, and remote copy pairs that perform asynchronous remote copy are called “asynchronous remote copy pairs”.
  • Pair status Each copy pair has one of the states described below. These states are referred to as “pair status” in this embodiment.
  • the storage apparatus 10 manages the following states as the pair status.
  • the pair status can be changed by an administrator of the storage apparatus 10 by issuing an instruction to the storage apparatus 10 from the management server 1 or the application servers 2 to 4, but due to a failure that has occurred in the storage apparatus 10
  • the storage apparatus 10 may spontaneously change the pair status.
  • A Duplex state (sync state): When forming a copy pair, the storage apparatus 10 first performs a process of copying all the contents of the P-VOL to the S-VOL (referred to as an initial copy process). The state of the copy pair in which the initial copy process or the resynchronization process described later is completed and the contents of the P-VOL and the S-VOL are the same is referred to as a Duplex state (or Sync state).
  • (B) Suspend (error) state When the copy pair's pair status is Duplex, the data written to the copy pair's P-VOL is also written to the S-VOL (note that the data written to the P-VOL is written to the S-VOL). The reflected operation is sometimes expressed as “data is written (or copied) from the P-VOL to the S-VOL”). On the other hand, a state where the contents of the P-VOL are not reflected in the S-VOL is referred to as a Suspend state. When the copy pair is in the Suspend state, there are the following two cases, for example.
  • a failure occurs in which the transmission line (SAN 7) connecting the storage apparatus 10 having the P-VOL and the storage apparatus 10 having the P-VOL pair volume (S-VOL) is cut off.
  • SAN 7 the transmission line
  • S-VOL storage apparatus 10 having the P-VOL pair volume
  • the copy pair enters such a state, it is called a “Suspend (error)” state or an “error” state.
  • the copy pair is in the error state, if the data can be written to the P-VOL, the storage apparatus 10 performs the data write to the P-VOL, but the data to the S-VOL. Do not duplicate.
  • (C) Suspend (normal) state The second case where the copy pair enters the Suspend state is a case where the copy pair state is changed to the Suspend state in accordance with an instruction from the user. For example, when the user wants to save the contents of the current P-VOL in the S-VOL, the user instructs the storage apparatus 10 to change the status of the copy pair from the Duplex status to the Suspend status. As a result, the data copy from the P-VOL to the S-VOL is interrupted, and the data at the time when the copy pair status is changed to the Suspend status is stored in the S-VOL.
  • the copy pair state when the copy pair is in the Suspend state in response to an instruction from the user, the copy pair state is referred to as a “Suspend (normal)” state or simply a Suspend state.
  • (D) Copy-Pending state The storage apparatus 10 can also return the copy pair in the Suspend state (or error state) to the Duplex state (however, the cause of the failure needs to be removed from the copy pair in the error state).
  • the copy pair state in the transition state from the Suspend state to the Duplex state is referred to as a “Copy-Pending” state or a “Copying” state.
  • the data of the P-VOL (or S-VOL) is S-VOL (or P-VOL) to match (synchronize) the contents of the P-VOL and S-VOL. VOL).
  • the copy pair status becomes “Duplex status”.
  • the process of transitioning the “Suspend state” copy pair to the Duplex state is referred to as a resynchronization process (resync process).
  • the storage device 10 since the storage device 10 is performing initial copy processing on the copy pair, the contents of the P-VOL and S-VOL are synchronized, the copy pair status at this time is also “ This is called a “Copy-Pending” state or a “Copying” state.
  • Each program such as an application program executed by the application servers 2 to 4 may use a plurality of volumes.
  • Each program that uses multiple volumes is designed with the expectation that each data written to the volume will be written to the volume in the order in which the write requests are issued, especially if these programs are used in mission-critical operations. Has been. In that case, it is required to ensure the consistency of data written in a plurality of copy pairs.
  • the replicated data stored in each S-VOL is stored in the S-VOL in the same order as the data written to the P-VOL from the application servers 2 to 4 Called data consistency is guaranteed.
  • P-VOL 111 and S-VOL 151 are the first copy pair
  • P-VOL 112 and S-VOL 152 are the second copy pair.
  • the application server 2 issues a write request instructing to write the data D1 to the P-VOL 111 at time t0, and issues a write request instructing to write the data D2 to the P-VOL 112 at time t1. (T0 ⁇ t1).
  • the storage apparatus 10-0 writes the data D1 to the P-VOL 111 and then stores the data D2 in the P-VOL 112. Further, when the storage apparatus 10-1 writes the data D1 to the S-VOL 151 and then stores the data D2 in the S-VOL 152, the two copy pairs are in a state where data consistency is guaranteed.
  • the storage apparatus 10 can define a group consisting of a plurality of copy pairs for which data consistency is to be guaranteed, which is called a consistency group.
  • the definition of the consistency group is performed by the user of the application servers 2 to 4 or the administrator of the storage apparatus 10 (or computer system).
  • a plurality of consistency groups may be defined.
  • the storage apparatus 10 When the storage apparatus 10 receives a write to a plurality of copy pairs belonging to the same consistency group, the data write order to the P-VOL and the data write order to the S-VOL are the same for these copy pairs.
  • the writing process is controlled so that
  • each copy pair belongs to any consistency group.
  • the consistency group may be abbreviated as CTG.
  • a consistency group is sometimes called a copy group.
  • FIG. 3 A specific example will be described using the configuration of FIG. 3 as an example.
  • the volume 111 and the volume 112 belong to the same consistency group, but a configuration in which the volume 111 and the volume 112 exist in different storage apparatuses 10 is not allowed. Similarly, a configuration in which the volume 151 and the volume 152 exist in different storage apparatuses 10 is not permitted.
  • volume 111 is P-VOL and the volume 112 is S-VOL is not allowed.
  • volume 111 and the volume 151 are synchronous remote copy pairs and the volume 112 and the volume 152 are asynchronous remote copy pairs is not allowed.
  • the user of the application servers 2 to 4 or the administrator of the storage apparatus 10 issues an instruction to the storage apparatus 10 from the application servers 2 to 4 or the management server 1
  • the copy pair status can be manipulated (changed).
  • the storage apparatus 10 according to the present embodiment can perform the following operations on the copy pair.
  • (A) Pair formation The user (or administrator) can set two volumes that have not been copy pairs so far (in the Simplex state) to be operated as copy pairs.
  • the operation of operating two volumes as a copy pair is called copy pair formation or pair formation.
  • pair formation two volumes that were not copy pairs are managed as copy pairs.
  • a user (or administrator) forms a pair if the copy pair to be formed is a remote copy pair, it is specified whether to use a synchronous remote copy pair or an asynchronous remote copy pair.
  • the copy pair status goes into the Duplex (Sync) status after passing through the Copying status, but the copy pair can also be set to the Suspend status.
  • Sync Duplex
  • (E) Pair inversion For the two volumes (P-VOL, S-VOL) that make up the copy pair, the volume that was operated as P-VOL is changed to S-VOL, and the volume that was operated as S-VOL The operation to change to P-VOL is called copy pair inversion (pair inversion) or copy direction inversion. For example, when the data stored in the P-VOL is corrupted due to a failure, the pair inversion is performed to write back (restore) the data stored in the S-VOL to the P-VOL. Is called.
  • an instruction can be issued for each copy pair, but an instruction can be issued for each consistency group.
  • the storage apparatus 10 receives an operation instruction for a certain consistency group, the storage apparatus 10 performs the same operation for all copy pairs belonging to the consistency group.
  • the pair status of all copy pairs belonging to the consistency group is set to the Suspend (normal) status.
  • the pair status of a specific copy pair is changed to the Suspend (error) state due to a failure that has occurred in the storage device 10 or the like, other copy pairs in the consistency group to which the copy pair belongs The state is not necessarily changed.
  • objects to which reference numerals 131 to 134, 141, and 142 are attached represent volumes.
  • the objects indicated by dotted lines with reference numbers 121 to 124 represent consistency groups (in this example, there is only one copy pair in the consistency group, so the objects 121 to 124 are It may be said that it is a copy pair).
  • Each volume may exist in any storage device 10.
  • the volumes 131 to 134 may all be in the same storage device 10, or the volumes 131 and 132 may be the storage device 10-0, the volume 133 may be the storage device 10-1, and the volume 134 may be the storage device 10-. 2 may be present.
  • Volumes 131 and 132 belong to the CTG 121.
  • the volume 131 is a P-VOL and the volume 132 is an S-VOL.
  • Volumes 132 and 133 belong to the CTG 122.
  • the volume 132 is a P-VOL and the volume 133 is an S-VOL.
  • volume 132 is S-VOL for volume 131 and P-VOL for volume 133.
  • the volumes 131 and 134 belong to the CTG 123.
  • the volume 131 is a P-VOL and the volume 134 is an S-VOL. That is, the volume 131 is a P-VOL for both the volume 132 and the volume 134.
  • the same data is stored in all the volumes that are connected in cascade or multi-target. 4, when the application server 2 writes data to the volume 131, the written data is also replicated to all other volumes (that is, volumes 132, 133, and 134). This can be done by copying or by asynchronous copying).
  • a set of copy pairs (or CTGs) connected in cascade or multi-target is called “copy topology” or “topology”.
  • the CTGs 121, 122, and 123 (and the copy pairs belonging to the CTGs 121 to 123) belong to one copy topology.
  • the application server 2 writes data to the volume 131, the written data is also copied to all the volumes belonging to the same topology as the volume 131 (that is, the volumes 132, 133, and 134).
  • the volumes 141 and 142 belonging to the CTG 124 are one copy pair, but are not connected to the CTGs 121, 122, and 123 (cascade connection or multi-target connection). Belongs.
  • a volume that is a copy source of all the volumes in the topology is referred to as a “root volume”.
  • a copy pair whose root volume is P-VOL is called a “root pair”, and a CTG having the root pair is called a “root group”. In other words, it is a volume that is not an S-VOL of any copy pair.
  • the volume 131 is a root volume, and the CTG 121 and CTG 123 are root groups.
  • a copy pair belonging to the CTG 121 and a copy pair belonging to the CTG 123 are root pairs.
  • FIG. 4 shows a configuration in which each CTG has only one copy pair for simplification of explanation, but the same is true even when a plurality of copy pairs exist in each CTG.
  • a volume that is directly used (accessed) by a certain business is a P-VOL and a volume that is not an S-VOL of any copy pair (that is, Root volume) in many cases.
  • Each volume (a volume belonging to the same copy topology as the root volume) in which a replica of the root volume is stored is generally a volume that is used for backup purposes or the like using the root volume. Therefore, if the status of each volume or the like can be monitored in copy topology units, the status of the volume group used in each job can be grasped at a glance, which is easy for the user to understand.
  • the copy topology is a concept managed by the management server 1, and each storage device 10 does not manage the concept of copy topology. Further, in the computer system according to the present embodiment, the storage management program of the management server 1 acquires the information of each CTG (or copy pair) from the storage apparatus 10 so that the copy topology to which each CTG (or copy pair) belongs is determined. Define (determine) automatically. However, the storage management program may have a function that allows the user to manually define the copy topology.
  • FIG. 5 shows another example of copy topology.
  • volumes 131 ′ and 132 ′ belong to the CTG 121 ′.
  • the volume 131 ′ is a P-VOL and the volume 132 ′ is an S-VOL in the CTG 121 ′.
  • Volumes 131 ′ and 134 ′ belong to the CTG 123 ′.
  • the volume 131 ′ is a P-VOL and the volume 134 ′ is an S-VOL in the CTG 123 ′.
  • Volumes 132 ′ and 134 ′ belong to the CTG 125 ′.
  • the volume 132 ′ is a P-VOL and the volume 134 ′ is an S-VOL in the CTG 125 ′.
  • each copy pair (or CTG) is connected as shown in FIG. 5 is used when the storage apparatus 10 is arranged at three locations.
  • the volume 131 'exists in the storage apparatus 10-0, the volume 132' exists in the storage apparatus 10-1, and the volume 134 'exists in the storage apparatus 10-2 will be described.
  • each copy pair in the CTG 125 ′ (for example, volumes 132 ′ and 134 ′) is also specified at the time of pair formation so that replication by asynchronous remote copy is performed, but each copy pair in the CTG 125 ′ is in a normal state (failure In a state where no occurrence occurs, the operation is performed in the Suspend state. That is, in a normal state, data written to the volume 132 'is not replicated to the volume 134'. The volume 134 'stores a copy of the data written to the volume 131'.
  • the same data as the data stored in the volume 131 ' is stored in the volume 132'. This is because the volume 131 'and the volume 132' have been subjected to synchronous remote copy. On the other hand, some of the data stored in the volume 131 ′ may not be stored in the volume 134 ′. This is because volume 131 'and volume 134' are asynchronous remote copy pairs.
  • the storage apparatus 10 stores the data stored in the volume 132 ′ but not yet stored in the volume 134 ′ (this is called difference data between the volume 132 ′ and the volume 134 ′). 1 is transferred to the storage apparatus 10-2, and the contents of the volume 134 ′ are made the same as the volume 132 ′ (in other words, the volume 131 ′ is made to be the same as the state immediately before the failure).
  • a CTG (or copy pair) configuration is referred to as a three-site remote copy configuration.
  • a copy pair composed of the volumes 132 ′ and 134 ′ (that is, a copy pair that is operated in the Suspend state in the normal state and in which a differential copy is performed when a failure occurs) is referred to as a “differential copy pair”.
  • a CTG including a pair (CTG 125 ′ in FIG. 5) is referred to as a “differential copy group”.
  • a CTG (or copy pair) having a three-site remote copy configuration that is, CTGs 121 ', 123', and 125 'are managed as belonging to one topology. This is because the CTGs 121 ′, 123 ′, and 125 ′ are in a cascade connection or multi-target connection relationship.
  • FIG. 6 shows an example of the pair management table 500 that the storage apparatus 10 has.
  • the storage apparatus 10 stores information on the defined copy pair in the pair management table 500.
  • One line (record) in the pair management table 500 represents attribute information about one copy pair.
  • each storage apparatus 10 having at least one of P-VOL and S-VOL has a pair management table 500.
  • the record of the pair management table 500 includes information of Pair Status 501, Type 502, CTG ID 503, PDKC # 504, P-VOL # 505, SDKC # 506, and S-VOL # 507.
  • Pair Status 501 is the pair status of the copy pair.
  • 0 represents a Copy-pending state
  • 1 represents a Duplex state
  • 2 represents a Suspend (normal) state
  • 3 represents a Suspend (error) state
  • 4 represents a Simplex state.
  • Type 502 represents the copy type of the copy pair.
  • the copy type means the type of copy operation performed on the copy pair. If 0 is stored in the Type 502 of the record, it means that local copy is performed in the copy pair managed by the record (referred to as a managed copy pair), that is, the managed copy pair is a local copy pair. means. On the other hand, when 1 or 2 is stored in Type 502, it means that the management target copy pair is a remote copy pair. When Type 502 is 1, synchronous remote copy is performed using the management target copy pair, and when Type 502 is 2, asynchronous remote copy is performed using the management target copy pair.
  • the CTG ID 503 is an identification number of the CTG to which the managed copy pair belongs (referred to as consistency group ID or CTG ID).
  • PDKC # 504 and P-VOL # 505 represent the identification number (referred to as serial number) of the storage apparatus 10 to which the P-VOL of the management target copy pair belongs and the P-VOL volume number, respectively.
  • SDKC # 506 and S-VOL # 507 represent the identification number (referred to as the serial number) of the storage apparatus 10 to which the S-VOL of the management target copy pair belongs and the S-VOL volume number, respectively.
  • copy pair information 700, copy group information 750, and topology information 800 which are management information of the management server 1, will be described. These pieces of information are stored in the memory 12 or the disk device 13 of the management server 1.
  • FIG. 7 is an example of the copy pair information 700.
  • the storage management program executed by the management server 1 acquires the pair management table 500 from each storage device 10 and creates or updates the copy pair information 700 based on the information of the acquired pair management table 500.
  • Pair Status 701, Type 702, CTG ID 703, PDKC # 704, P-VOL # 705, SDKC # 706, S-VOL # 707 of copy pair information 700 are Pair Status 501, Type 502, CTG ID 503, PDKC # 504 of pair management table 500. , P-VOL # 505, SDKC # 506, and S-VOL # 507.
  • an integer value of 0 to 5 is stored in the Pair Status 701 of the copy pair information 700.
  • the meanings of numerical values of 0 to 4 are the same as those stored in the Pair Status 501 of the pair management table 500.
  • “5” is stored in the Pair Status 701, it means that the pair status of the copy pair cannot be determined by the storage management program, and this state is called an “Unknown” state. For example, when the storage management program cannot acquire the pair status from the storage device 10, it enters the Unknown state.
  • Alert 708 is information set by the storage management program according to the status of Pair Status 701, and takes a value of 0 or 1.
  • the initial value of Alert 708 is zero.
  • the storage management program sets “1” in the Alert 708 when the Pair Status 701 enters a predetermined specific state. This specific state can be preset by the administrator.
  • Alert 708 The main purpose of use of Alert 708 is to notify the administrator when the managed copy pair is in a state to warn the administrator. For example, when a copy pair becomes incapable of data copying, it is desirable that the administrator can know the fact as soon as possible. Therefore, for example, the administrator may set the management server 1 so that “1” is set in the Alert 708 when the pair status becomes the Suspend (error) status.
  • an operation in which “1” is set in Alert 708 is referred to as “alert setting”.
  • a state in which “1” is set in Alert 708 is referred to as an “alert state”.
  • the difference between the copy pair information 700 and the pair management table 500 is that the copy pair information 700 includes information called Alert 708.
  • Another difference between the copy pair information 700 and the pair management table 500 is that the copy pair information 700 stores information on copy pairs of all storage devices 10 in the computer system, whereas the pair management table 500 Since the information is stored in each storage device 10, only the information on the copy pair managed in one storage device 10 is stored.
  • the copy group information 750 is a table for the storage management program to manage information about the consistency group in the storage apparatus 10.
  • the record of the copy group information 750 includes Group # 751, Group Name 752, CTG ID 753, Type 754, Copy Status 755, and Alert 756.
  • the storage management program manages each consistency group in the storage apparatus 10 with a copy group ID and a copy group name.
  • the copy group name is a name set by the administrator, and the copy group name of each consistency group must be unique within the computer system.
  • the copy group ID is a number generated by the storage management program based on the copy group name, and may be different from the CTG ID managed by the storage apparatus 10. Note that the copy group ID is not necessarily a numerical value, and may be an identifier including a character string.
  • Group # 751 and Group Name 752 store a copy group ID and a copy group name defined by the storage management program.
  • the CTG ID 753 and Type 754 and the type are the CTG ID and copy type of the management target copy group (consistency group).
  • Copy Status 755 the result of aggregating the statuses of copy pairs included in the management target copy group is stored.
  • the contents obtained by collecting the statuses of the copy pairs included in the copy group are referred to as “copy group status”.
  • the type of information stored in the Copy Status 755 is the same as that stored in the Pair Status 701 of the copy pair information 700, that is, an integer value of 0 to 5 is stored.
  • 0 represents a Copy-pending state
  • 1 represents a Duplex state
  • 2 represents a Suspend (normal) state
  • 3 represents a Suspend (error) state
  • 4 represents a Simplex state
  • 5 represents an Unknown state.
  • a method for determining the contents stored in the Copy Status 755 will be described later.
  • Alert 756 is information set by the storage management program according to the status of Copy Status 755 or the like. Similar to Alert 708, when Copy Status 755 enters a predetermined state, the storage management program sets Alert 756 to “1”.
  • the topology information 800 is a table for managing copy topology information.
  • the storage management program specifies the copy topology existing in the computer system based on the copy pair information 700 and the copy group information 750 and records the specified copy topology information in the topology information 800.
  • the record of topology information 800 includes Topology # 801, Topology Name 802, Copy Group List 803, Copy Status (local) 804, Copy Status (remote) 805, and Alert 806.
  • Topology # 801 and Topology Name 802 a management target copy topology identifier (called a topology ID) and a management target copy topology topology name are stored, respectively. These are automatically generated by the storage management program when the storage management program defines (creates) the copy topology. However, the administrator may change the topology name later.
  • the topology ID and topology name of each topology must be unique within the computer system.
  • the topology ID is not necessarily a numerical value, and may be an identifier including a character string. For example, information including the copy group ID of the root group may be adopted as the topology ID.
  • Copy Group List 803 stores copy group IDs of all copy groups belonging to the managed copy topology.
  • a copy status (local) 804 and a copy status (remote) 805 store the results of aggregating the statuses of copy pairs included in the managed copy topology.
  • the copy status (local) 804 stores the result of aggregating the status of the local copy pairs among the copy pairs included in the managed copy topology
  • the copy status (remote) 805 is included in the managed copy topology.
  • NULL is stored in Copy Status (local) 804.
  • a remote copy pair is not included in the management target copy topology
  • NULL is stored in Copy Status (remote) 805.
  • Alert 806 is information set by the storage management program according to the status of Copy Status (local) 804 or Copy Status (remote) 805, and will be described in detail later.
  • FIG. 10 shows a processing flow when the storage management program updates the topology information 800. This processing is periodically performed by the storage management program. Alternatively, it is also performed when the copy group (or copy pair) status is changed by the user operating the copy group (or copy pair).
  • the alphabet “S” attached before the reference number means “step”.
  • S1001 The storage management program collects the pair management table 500 from each storage device 10 in the computer system.
  • the storage management program saves the current copy pair information 700, copy group information 750, and topology information 800 in the memory 12 or the disk device 13.
  • the copy pair information 700, copy group information 750, and topology information 800 saved here are referred to as “old copy pair information”, “old copy group information”, and “old topology information”, respectively.
  • S1003 The storage management program deletes all records stored in the copy pair information 700, creates a record to be stored in the copy pair information 700 based on the records in the pair management table 500 collected in S1001, The created record is stored in the copy pair information 700 on the memory 12. Since the record of the pair management table 500 does not include information corresponding to Alert 708, when creating a record to be stored in the copy pair information 700, first, a record in which nothing is stored in Alert 708 is created. To do. Information storage in the Alert 708 will be described later.
  • both of the pair management table 500 of the storage apparatus 10 having the P-VOL and the pair management table 500 of the storage apparatus 10 having the S-VOL include remote copy pair information. Therefore, the storage management program prevents duplicate records having the same contents from being stored in the copy pair information 700.
  • the storage management program sets information in Alert 708 from the information of each copy pair stored in copy pair information 700. As described above, the storage management program sets “1” in Alert 708 when Pair Status 701 enters a specific state. For example, if Pair Status 701 is “3” (error state), “1” is set in Alert 708, and “0” is set in Alert 708 when Pair Status 701 is a value other than “3”.
  • S1004 The storage management program creates copy group information 750 based on the copy pair information 700 created in S1003. This process will be described later (FIG. 11).
  • S1005 The storage management program uses the copy pair information 700 and copy group information 750 created in S1003 and S1004, and the old copy pair information, old copy group information, and old topology information saved in S1002, to obtain topology information 800. Create (or update) This process will be described later (FIG. 12).
  • the storage management program stores information in the copy status (local) 804, the copy status (remote) 805, and the alert 806 for each record of the topology information 800 created in S1005. This process will be described later (FIG. 13).
  • S1007 The storage management program notifies the user (administrator) of the status of each topology by displaying the status of each topology on the display of the management server 1 using the topology information 800. At this time, if Alert 806 is “1”, an alert is displayed on the display.
  • the display method here is arbitrary.
  • the storage management program stores the topology name, copy status (remote copy group status and local copy group status, ie, Copy Status (local) 804, Copy Status (remote) 805) for each topology. (Stored content) and alerts may be displayed on the display.
  • the information (numerical information) stored in the topology information 800 as it is, it is difficult for the user to grasp the topology state. For this reason, as shown in FIG. 17, it is preferable to display the numerical information stored in the topology information 800 replaced with an icon whose state can be seen at a glance.
  • the storage management program displays the connection relationship of each copy group (or copy pair) in the copy topology (for example, as shown in FIGS. 4 and 5) on the display, and when the Alert 708 is “1”, the displayed copy is displayed. A mark indicating that a failure or the like has occurred may be displayed on the topology.
  • the storage management program notifies the application servers 2 to 4 or a client computer (not shown) that the copy topology is in the alert state instead of displaying the alert state on the display of the management server 1. Information may be transmitted. Of course, both alert display on the display of the management server 1 and information transmission to the application servers 2 to 4 or a client computer (not shown) may be performed.
  • S1401 The storage management program selects one copy pair record from the copy pair information 700.
  • the storage management program extracts all the records in the copy pair information 700 whose CTG ID 703 is equal to the CTG ID 703 of the copy pair record selected in S1401.
  • the storage management program creates a record to be stored in the copy group information 750 based on the information of the selected copy pair record. Specifically, the storage management program identifies the copy type and CTG ID (that is, Type 702, CTG ID 703) of the copy pair record selected in S1401 and S1402, and records the record stored in the copy group information 750 based on the specified copy type. create. For example, if the copy type of the copy pair selected in S1401 and S1402 is local copy and the CTG ID is “1”, a record is created in which “1” is stored in the CTG ID 753 and “0” is stored in the Type 754. Good. Further, Group # 751 and Group Name 752 are set according to the following procedure.
  • the storage management program causes the user to specify a copy group name. Then, the storage management program stores the copy group name designated by the user in the Group Name 752, and generates the content to be stored in the Group # 751 based on the information stored in the Group Name 752. However, as another embodiment, the storage management program may automatically determine Group # 751 and Group Name 752. In addition, whether the copy group name is determined by the user or automatically generated by the storage management program, what is attached to the record already recorded in the copy group information 750 in Group # 751 and Group Name 752 Different copy group IDs and copy group names need to be set.
  • the storage management program determines the value stored in the copy group pair status (Copy Status 755), that is, the copy group status, based on the information of the selected copy pair record, and copies the determined status to Copy. Store in Status 755.
  • the copy group status is determined based on the following rules.
  • priority is set for the copy pair status.
  • the copy group status is set to the same as the pair status of the copy pair having the highest priority among the copy pairs belonging to the copy group.
  • the priority of the pair status of the copy pair is determined in the following order, and the status of the copy group is determined according to this priority.
  • the storage management program stores “2” (Suspend state) in Copy Status 755 when there is a copy pair in the “Suspend” state among the copy pairs belonging to the copy group (S2003: YES) (S2006). If there is no copy pair in the “Suspend” state and there is a copy pair in the “Copying” state (S2007: YES), the storage management program stores “0” (Copying state) in the Copy Status 755 (S2008).
  • the storage management program stores “1” (Sync state) in the Copy Status 755 (S2010). If there is no copy pair in the “Sync” state and there is a copy pair in the “Simplex” state (S2011: YES), the storage management program stores “4” (Simplex state) in the Copy Status 755. If there is no copy pair in the Simpex state, the storage management program stores “5” (Unknown state) in the Copy Status 755.
  • the copy group status is “Suspend”. If there is only one copy pair in the copy group, the copy group status is the same as the copy pair status in the copy group.
  • S1405 The storage management program performs alert setting for the copy group (information setting for Alert 756). This process is the same as S1003. For example, the storage management program stores “1” in the Alert 756 when the Copy Status 755 is in a specific state (for example, “3”), and stores “0” in the Alert 756 otherwise.
  • S1406 The storage management program determines whether there are any records remaining in the copy pair information 700 other than the copy pair record selected in S1401 or S1402. If a copy pair record that has not yet been selected in S1401 or S1402 remains in the copy pair information 700 (S1406: NO), the processing is performed again from S1401. If all copy pair records have been selected (S1406: YES), the process ends.
  • S1501 The storage management program creates a copy of the copy pair information 700.
  • the duplicate created here is called “working copy pair information”.
  • S1502 The storage management program determines whether there is a copy pair that has undergone pair inversion by comparing the working copy pair information with the contents of the old copy pair information created in S1002. Specifically, the storage management program compares the copy pair record in the working copy pair information with the copy pair record of the old copy pair information, and the pair of PDKC # 704 and P-VOL # 705 is SDKC # 706. And S-VOL # 707 is determined whether there is a copy pair record that is replaced.
  • PDKC # 704 and P-VOL # 705 are “0”, and SDKC # 706 and S-VOL # 707 store “1” and “2”, respectively.
  • the contents of the rows 721, 722 and 724 are the same as the copy pair information shown in FIG. 7, but in the row 723 ′, PDKC # 704 and P-VOL # 705. “1” is stored in each, and “0” and “2” are stored in SDKC # 706 and S-VOL # 707, respectively.
  • the storage management program changes the copy pair record of the copy pair that has undergone pair reversal among the copy pair records in the working copy pair information to the state before the pair reversal. Specifically, the storage management program swaps the values of PDKC # 704 and SDKC # 706 for the copy pair record of the copy pair that has undergone pair inversion, and also changes the values of P-VOL # 705 and S-VOL # 707. Replace.
  • the storage management program identifies the root volume and the root group by referring to the working copy pair information.
  • the root volume is a volume that is not an S-VOL of any copy pair.
  • the contents of the working copy pair information are as shown in the example of FIG. 7 in FIG. 7, for example, since there is a row (rows 721 and 722) in which PDKC # 704 is 0 and P-VOL # 705 is 1, it can be seen that volume # [0,1] is P-VOL. However, in FIG. 7, since there is no row where SDKCD # 706 is 0 and S-VOL # 707 is 1, this means that there is no copy pair in which volume # [0, 1] is S-VOL.
  • the storage management program determines that volume # [0, 1] is the root volume.
  • the volume # [0, 2] is both a P-VOL and an S-VOL. Therefore, the storage management program determines that volume # [0, 2] is not the root volume. Since the root group is a copy group to which the root volume belongs, the storage management program can identify the root group by referring to the working copy pair information and the copy group information 750 after the root volume is identified. .
  • the storage management program refers to the working copy pair information, and identifies all the volumes in which the copy of the root volume identified in S1504 is stored and the copy pairs having the volumes. All copy pairs identified here are managed as belonging to the same topology as the root volume identified in S1504.
  • the specific procedure of the specific work here is as follows.
  • the storage management program identifies the copy pair including the root volume and the S-VOL of the copy pair. This is because the S-VOL of the copy pair including the root volume is a volume in which a copy of the root volume is stored. Furthermore, when there are copy pairs in which the S-VOL of the identified copy pair is P-VOL, these copy pairs are copy pairs in which a copy of the root volume is stored. Therefore, the storage management program repeats the work of searching for a copy pair in which the S-VOL of the copy pair is P-VOL. Specifically, this search is repeated until no copy pair is found whose copy pair S-VOL is P-VOL.
  • the volumes 132 and 134 are specified as the volumes in which the replicas of the root volume are stored.
  • the storage management program specifies a copy pair in which the volume 132 or 134 is P-VOL.
  • no further search is performed on the volume 134.
  • the storage management program next determines whether there is a copy pair in which the volume 133 is a P-VOL.
  • the search ends here. As a result of this search, in the example of FIG.
  • the volumes 131, 132, 133, and 134 are determined as a set of volumes that belong to one topology (in addition, a copy pair of the volumes 131 and 132 and a copy pair of the volumes 131 and 134 , The copy pairs of the volumes 132 and 133 are determined as a set of copy pairs belonging to one topology).
  • S1507 The storage management program identifies all copy groups to which the copy pair identified in S1505 belongs by referring to the copy group information 750. That is, the copy group belonging to the topology determined in S1505 is specified. Then, the storage management program registers the specified set of copy groups in the topology information 800.
  • the storage management program When registering a set of copy groups in the topology information 800, the storage management program refers to the old copy pair information, old copy group information, and old topology information, and the root volume and route of each topology recorded in the old topology information. Identify the group.
  • the topology recorded in the old topology information is called “old topology”.
  • the root volume and root group may be identified by the same method as described in S1504 (however, the information to be referred to is old copy pair information and old copy group information). Further, the storage management program identifies the old topology including the identified route group by referring to the old topology information.
  • the storage management program registers the topology ID and topology assigned to the old topology when registering a set of copy groups in the topology information 800.
  • the names are set in Topology # 801 and Topology Name 802 of the topology registered in the topology information 800 this time, respectively.
  • topology having the same route group as the old topology to have the same topology identifier and topology name as the old topology.
  • group A a copy group other than the root group
  • the storage management program updates the topology information 800
  • the topology determined in S1505 this is referred to as “new”.
  • Topic does not include group A that belonged to the old topology. In that case, however, it is desirable to present the new topology to the user so that it is the same topology as the old topology. This is because the topology determined in S1505 and the old topology have the same route group, and thus are highly likely to be volume groups used in the same business / use.
  • the topology having the same root volume (or route pair or route group) as that of the old topology has the same topology identifier and topology name as the old topology, and before and after updating the topology information 800. Therefore, the topology existing in the computer system is not changed. As a result, before and after the storage system configuration change (for example, deletion of a copy group), the topology that has been used so far is lost and it does not appear that a completely different topology has been created. Similarly, when a copy group is added to a certain topology, the new topology will be the same topology as the old topology as long as the root volume (or route pair or route group) of the new topology and the old topology is the same. Presented to the user.
  • S1508 The storage management program deletes the information of the copy pair belonging to the copy group registered in the topology information 800 in S1506 from the working copy pair information.
  • S1509 The storage management program determines whether or not a copy pair record remains in the working copy pair information. If a copy pair record remains (S1509: YES), the storage management program executes S1504 again. If no copy pair record remains (S1509: NO), the process ends.
  • the reason why the processing of S1502 and S1503 is performed is as follows.
  • the pair inversion is performed, for example, to write back (restore) the data stored in the S-VOL to the P-VOL in order to recover data after a failure.
  • the S-VOL (volume 133) in the CTG 122 Data may be written back to the volume belonging to the CTG 121.
  • the copy pair (volume 132 and 133 pair) in the CTG 122 is reversed.
  • FIG. 16 shows a configuration example after the pair inversion is performed for the pairs of volumes 132 and 133 in the copy pair of FIG.
  • the volume 133 is changed to P-VOL
  • the volume 132 is changed to S-VOL in which a copy of the volume 133 is stored.
  • the volume 132 is also an S-VOL of the volume 131 (P-VOL). If the topology information 800 creation processing (FIG. 12) is performed for the copy pair in the state as shown in FIG.
  • the pair of volumes 132 and 133 is The CTG 122 is not regarded as a copy pair in which a copy of the root volume (volume 131) is stored, and is determined to belong to a copy topology different from the topology to which the CTG 121 and CTG 123 belong.
  • the state of FIG. 16 is a temporary state.
  • the CTG 122 is returned to the state of FIG. That is, the pairs of volumes 132 and 133 are originally configured as shown in FIG. 4, and should be included in the topology to which the CTG 121 and CTG 123 belong.
  • S1601 The storage management program selects one topology record from the topology information 800 that has not been subjected to the following processes of S1602 and S1603.
  • S1602 The storage management program extracts copy groups having local copy pairs (referred to as “local copy groups”) from the copy groups included in the topology record selected in S1601, and those copy groups. Are stored in the topology record Copy Status (local) 804. This process is the same as S1404. That is, the storage management program identifies the local copy group having the copy group status with the highest priority, and stores the copy group status in Copy Status (local) 804.
  • S1603 The storage management program extracts a copy group having a remote copy pair (referred to as “remote copy group”) from the copy groups included in the topology record selected in S1601, and those copy groups Are stored in the topology record Copy Status (remote) 805. Details of this processing will be described later (FIG. 15).
  • Copy Status (remote) 805 the storage management program sets information in Alert 806. This process is the same as S1003 and S1405. For example, the storage management program stores “1” in Alert 806 if Copy Status (local) 804 or Copy Status (remote) 805 is in a specific state (for example, “3”), otherwise it is stored in Alert 806. “0” is stored.
  • S1604 When processing is completed for all topology records in topology information 800 (S1604: YES), the processing ends. If an unprocessed topology record remains (S1604: NO), the storage management program executes the process from S1601 again.
  • the processing of S1603, that is, the method for aggregating the status of the remote copy group in the topology will be described.
  • the method for aggregating the status of remote copy groups is similar to the method for aggregating the copy pair status within a copy group.
  • the status with the highest priority is the status of the remote copy group.
  • the copy group status priority is almost the same as the copy pair status priority.
  • the remote copy group status is aggregated, the aggregation result differs depending on whether or not the remote copy group is a differential copy group.
  • a method for aggregating the copy status of the remote copy group will be described with reference to FIG.
  • the process of FIG. 15 is the same as the process of FIG. 14 in many parts.
  • the determinations in S2001 ', S2007', S2009 ', and S2011' are almost the same as the determination processes in S2001, S2007, S2009, and S2011 in FIG.
  • the copy status of each pair belonging to the copy group is determined, whereas in the determination of S2001 ′, S2007 ′, S2009 ′, and S2011 ′ of FIG. 15, the status of each remote copy group is determined.
  • the determination is made by referring to (that is, Copy Status 755).
  • the storage management program determines whether a differential copy group exists in the remote copy group (S2004'). In this process, the following determination is performed.
  • the storage management program determines whether a copy group having a remote copy pair (referred to as “copy pair A”) that satisfies the following conditions (condition 1 and condition 2) exists in the copy topology to be processed.
  • Copy pair B A copy pair in which the P-VOL of copy pair A is S-VOL, and the copy pair is a synchronous remote copy pair.
  • copy pair B the copy pair corresponding to the condition 1 is referred to as “copy pair B”.
  • the copy pair composed of the volumes 131 ′ and 132 ′ is a synchronous remote copy pair
  • the copy pair composed of the volumes 131 ′ and 134 ′ is an asynchronous remote copy pair
  • Volumes 132 'and 134' are also remote copy pairs.
  • a copy group (CTG 125 ′) having a copy pair composed of volumes 132 ′ and 134 ′ (hereinafter referred to as “pair A”) is an S of a synchronous remote copy pair composed of volumes 131 ′ and 132 ′.
  • VOL volume 132 '
  • P-VOL that is, the condition 1 is met
  • the copy pair composed of the volumes 131 ′ and 134 ′ has the S-VOL (volume 134 ′) of the pair A as the S-VOL
  • the P-VOL volume of the copy pair composed of the volumes 131 ′ and 132 ′.
  • 131 ′) is operated as a P-VOL (that is, the condition 2 is met). Therefore, a differential copy pair (or differential copy group) can be specified by specifying a remote copy pair that satisfies the conditions 1 and 2 described above.
  • the presence / absence of a copy group satisfying conditions 1 and 2 may be determined instead of a copy pair.
  • S2004 ' When it is determined in S2004 'that there is no differential copy group (S2004': NO), S2006 'is performed ("2" is stored in Copy Status (remote) 805 of the topology information 800). On the other hand, if there is a differential copy group (S2004 ′: YES), the storage management program then determines whether all copy group statuses (Copy Status 755) other than the differential copy group specified in S2004 ′ are “5” (Unknown). (S2005 ').
  • the differential copy group is normally operated in the Suspend state. That is, if the copy group status other than the differential copy group is normal (for example, the sync status) and only the differential copy group is in the Suspend status, the copy topology is in the normal operation status (the status where no failure has occurred). I can say that. Therefore, if the remote copy group other than the differential copy group is in the Suspend state (S2004 ′: NO), the copy status (remote) 805 of the topology information 800 is set to “2” (Suspend), but only the differential copy group.
  • the storage management program indicates that the status of the differential copy group is Copy.
  • the status (remote) 805 is not reflected.
  • the configuration in which the management server 1 is provided separately from the application server and the storage management program is executed by the management server 1 has been described.
  • the storage management program may be executed by any one of the plurality of application servers.
  • Management server 2 3, 4: Application server 6: LAN 7: SAN 10 (10-0, 10-1, 10-2, 10-3): Storage device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本発明の一態様である、ストレージシステムの管理方法は、プライマリボリュームと、プライマリボリュームの複製を格納するセカンダリボリュームとからなるボリュームペアを複数有するストレージシステムの管理を行う管理サーバで実行される。管理サーバは、ストレージシステムから各ボリュームペアの情報を収集し、収集された情報を用いて、複数のボリュームペアの中から起点(コピー元)となるボリュームを特定し、この起点となるボリュームと同一データ(複製)が格納されるボリュームの集合であるトポロジーを作成する。

Description

ストレージシステムの管理方法
 本発明は、ストレージシステムの管理方法に関する。
 ストレージ装置の中には、1つのボリュームに格納されたデータを別のボリュームに複製する、レプリケーション機能を備えたものがある。またレプリケーション機能には、ストレージ装置のボリュームの複製を、そのストレージ装置内の別ボリュームに作成するローカルコピー機能と、あるストレージ装置内のボリュームの複製を別のストレージ装置に作成するリモートコピー機能とがある。
 レプリケーション機能は、ボリュームの特定時点のバックアップデータを保存するため、あるいはサイト全体がダウンするような大規模な障害が発生した時にも、ボリュームの内容が消失することを防ぐため等の目的で用いられる。これらの目的のため、あるボリュームの複製を、2以上のボリュームに作成することも行われる。
 複数のストレージ装置を含む大規模なITシステムの管理・監視を行う際、障害の把握を容易にするために、ボリューム単位ではなく、各アプリケーションが使用するボリュームのセット単位で状態を把握するための技術が考えられている。たとえば特許文献1には、アプリケーションが使用するボリュームのペア、さらにはカスケード接続されたボリュームペアの集合について、各ペアの状態を取得し、取得したペアの状態を集約して管理端末に表示するシステムが開示されている。
特開2006-134164号公報
 特許文献1に開示の技術では、あらかじめ管理者が、アプリケーションが使用するボリュームの情報を設定する必要がある。そしてシステムはその情報に基づいて、アプリケーションが使用するボリュームペアの集合を特定する。
 しかしながら、データ量の増加やユーザ要件の変化に従って、システムの構成変更、たとえばアプリケーションが使用するボリュームの構成(ボリューム数やボリュームペアの接続関係等)に変更が発生することもある。そのため特許文献1に開示の技術では、各アプリケーションが使用するボリュームの情報をシステム構成変更のたびに設定し直さなければならず、管理作業が複雑化する。
 本発明の一態様であるストレージシステムの管理方法は、プライマリボリュームと、プライマリボリュームの複製を格納するセカンダリボリュームとからなるボリュームペアを複数有するストレージシステムの管理を行う管理サーバで実行される。管理サーバは、ストレージシステムから各ボリュームペアの情報を収集し、収集された情報を用いて、複数のボリュームペアの中からコピー元となるルートボリュームを特定し、この起点となるボリュームと同一データ(複製)が格納されるボリュームの集合であるトポロジーを作成する。
 本発明により、業務で使用するボリューム群の管理が容易化される。
実施例に係る計算機システムのハードウェア構成図である。 リモートコピーの概念図である。 コンシステンシーグループの概念を説明する図である。 カスケード接続、マルチターゲット接続、コピートポロジーの概念を説明する図である。 3サイトリモートコピー構成を説明する図である。 ペア管理テーブルの一例である。 コピーペア情報の一例である。 コピーグループ情報の一例である。 トポロジー情報の一例である。 ストレージ管理プログラムが実行する処理の全体の流れを説明する図である。 コピーグループ情報の作成処理のフローチャートである。 トポロジー情報の作成処理のフローチャートである。 コピー状態の集約処理のフローチャートである。 コピー状態の決定方法を表したフローチャートである。 トポロジー内のリモートコピーグループのコピー状態の決定方法を表したフローチャートである。 ペア反転の例を示した図である。 アラートの表示例である。 コピーペア情報の別の例である。
 以下、本発明の実施例について、図面を用いて説明する。なお、以下に説明する実施例は特許請求の範囲に係る発明を限定するものではなく、また実施例の中で説明されている諸要素及びその組み合わせの全てが発明の解決手段に必須であるとは限らない。
 また、以後の説明では、ホスト等の計算機で実行される処理について、「プログラム」を主語として説明を行う場合がある。実際には、プロセッサ(CPU(Central Processing Unit))がプログラムを実行することによって、プログラムに記述された処理が行われるので、プログラムを主語とする表現は、技術的に正確ではない。ただし説明が冗長になることを防ぐため、プログラムを主語にして処理の内容を説明することがある。また、プログラムの一部または全ては専用ハードウェアによって実現されてもよい。以下で説明される各種プログラムは、プログラム配布サーバや計算機が読み取り可能な記憶メディアによって提供され、プログラムを実行する各装置にインストールされてもよい。計算機が読み取り可能な記憶メディアとは、非一時的なコンピュータ可読媒体で、例えばICカード、SDカード、DVD等の不揮発性記憶媒体である。
 実施例の説明に入る前に、以下で説明する実施例で用いられる各種用語について説明する。
 「ボリューム」とは、ストレージ装置や記憶デバイス等のターゲットデバイスが、ホストやストレージコントローラ等のイニシエータに対して提供する記憶領域(記憶空間)のことを意味する。また、以下で説明する実施例に係るストレージ装置は、複数の記憶デバイスが提供するボリュームから、1つの論理的なボリュームを作成し、この論理的なボリュームをホストに提供することができる。この論理的なボリュームのことは、本明細書では「論理ボリューム」または「論理デバイス」と呼ばれる。
 「リモートコピー」とは、ストレージ装置のボリュームの複製を、別のストレージ装置のボリュームに作成する処理を意味する。以下で説明する実施例では、ストレージ装置がリモートコピーを実施する機能を有する。ホストからボリュームに対するライトデータを受領すると、ストレージ装置は、2台のストレージ装置の各ボリュームにライトデータを書き込む。
 「ローカルコピー」とは、ストレージ装置のボリュームの複製を、そのストレージ装置内の別のボリュームに作成する処理を意味する。以下で説明する実施例では、ストレージ装置がローカルコピーを実施する機能を有する。ホストからボリュームに対するライトデータを受領すると、ストレージ装置は、2つのボリュームにライトデータを書き込む。
 また、リモートコピーまたはローカルコピーにより、2つのボリュームにデータが格納される時、最初にデータが格納されるボリュームのことは「プライマリボリューム」または「P-VOL」と呼ばれる。そして2番目にデータが格納されるボリュームは「セカンダリボリューム」または「S-VOL」と呼ばれる。そしてプライマリボリュームとセカンダリボリュームのペアのことを「ボリュームペア」または「コピーペア」と呼ぶ。
 以下で、本発明の実施例に係る計算機システムの構成を説明していく。
 なお、以下で説明する実施例において、計算機システムを構成する各構成要素に参照番号が付されている。同種の構成物が計算機システム内に複数存在する場合、“-1”等のsuffixが付された参照番号が用いられることがある。suffixが異なり参照番号が同一の構成物は、同じ種類の構成物であることを意味する。また、同種の構成物に共通の事項を説明する場合、suffixを略した参照番号を用いて構成物を特定することがある。
(1)システム構成
 図1は、本実施例に係る計算機システムのハードウェア構成を示す図である。本実施例に係る計算機システムには、管理サーバ1、1以上のアプリケーションサーバ2~4、1以上のストレージ装置10(10-0~10-3)が含まれ、これらはLAN(Local Area Network)6に接続されている。LAN6は、たとえばイーサネット等の、TCP/IPプロトコルに従った通信を行うためのネットワークである。
 管理サーバ1は、CPU11、メモリ12、ディスク装置13、そして管理サーバ1をLAN6に接続するためのインタフェース14を有する。メモリ12には後述するストレージ管理プログラムがロードされており、CPU11がストレージ管理プログラムを実行することによって、後述する各種処理が行われる。管理サーバ1は、LAN6を介してストレージ装置10の設定を行ったり、あるいはストレージ装置10から構成情報の収集を行ったりする。
 また管理サーバ1は、キーボード、マウス等の入力デバイスと、ディスプレイ等の出力デバイスを有する。ストレージ装置10の管理者は、入力デバイスを用いて、ストレージ装置10の管理操作(ボリュームの定義や、後述するコピーペアの操作)を行うことができる。また管理サーバ1は出力デバイスに、ストレージ装置10やボリュームの状態を表示する。
 各アプリケーションサーバ2~4は、SAN7を介してストレージ装置10に接続され、ストレージ装置10が提供するボリュームにアクセスを行う。SAN7は、たとえば1以上のファイバチャネルスイッチとファイバチャネルケーブルで構成されるネットワークである。アプリケーションサーバ2~4の構成は同じであるため、以下ではアプリケーションサーバ2について主に説明する。
 アプリケーションサーバ2は、CPU21、メモリ22、アプリケーションサーバ2をSAN7に接続するためのSANインタフェース23、アプリケーションサーバ2をLAN6に接続するためのインタフェース24が設けられている。アプリケーションサーバ2はストレージ装置10が提供するボリュームにアクセスする時、SANインタフェース23を介してアクセスする。アプリケーションサーバ2のメモリ22には、アプリケーションサーバ2のユーザが使用するアプリケーションプログラム(たとえばデータベース管理システム(DBMS)や表計算プログラム等)がロードされており、CPU21がアプリケーションプログラムを実行することによって、ボリュームにアクセスする等の処理を行う。
 なお、アプリケーションサーバ3、4も上記アプリケーションサーバ2と同様に構成され、所定のアプリケーションプログラムを実行することで、SAN7を介してストレージ装置10が提供するボリュームにアクセスする。
 次にストレージ装置10(10-0~10-3)の構成について説明する。以下ではストレージ装置10-0を例にとって構成の説明を行うが、ストレージ装置10-1~10-3も同様の構成である。また本実施例では、ストレージ装置10-1~10-3の集合を、「ストレージシステム」と呼ぶ。
 ストレージ装置(ストレージサブシステム)10-0は、ディスクユニット104と、アプリケーションサーバ2や管理サーバ1から受け付けるリクエストの処理を行うコントローラ100を含んでいる。ディスクユニット104は複数の記憶デバイス(図中では“Disk”と表記される)を有する。記憶デバイスは、たとえばHDD(Hard Disk Drive)あるいはSSD(Solid State Device)である。
 コントローラ100には、CPU101、メモリ102、SAN7に接続されるフロントエンドインタフェース103(図中では“FE I/F103”と表記)、LAN6に接続されるLANインタフェース105(図中では“LAN I/F105”と表記)及びディスクユニット104内の記憶デバイスに接続されるバックエンドインタフェース106(図中では“BE I/F106”と表記)が設けられている。
 フロントエンドインタフェース103はSAN7に接続されて、アプリケーションサーバ2~4からのリードデータまたはライトデータの送受信を行う。また、LANインタフェース105はLAN6に接続され、管理サーバ1との通信に用いられる。なお、フロントエンドインタフェース103の数は1つに限られず、コントローラ100内に複数設けられていてもよい。フロントエンドインタフェース103がコントローラ100内に複数ある場合、各フロントエンドインタフェース103の用途は限定されていてもよい。たとえば、あるフロントエンドインタフェース103はアプリケーションサーバ2~4との通信を行うためにのみ用いられ、別のフロントエンドインタフェース103は他のストレージ装置(10-1~10-3)と通信するためのみに用いられるように構成されていてもよい。
 メモリ102には制御プログラムがロードされており、CPU101が制御プログラムをメモリ102から読み出して実行することによって、管理サーバ1の指令に基づくボリュームの設定処理や、アプリケーションサーバ2~4からのI/O要求や、ボリューム間またはストレージ装置間のデータレプリケーション等が行われる。
 また、ストレージ装置10-1~10-3も上記ストレージ装置10-0と同様に構成され、またストレージ装置10-0と同様の機能を有する。そのため図中では、ストレージ装置10-1~10-3のコントローラの具体的な構成の記載は略している。
 また、図中ではSAN7は単一のネットワークとして記載されているが、2つの物理的に(または論理的に)分離したネットワークであってもよい。たとえば、アプリケーションサーバ2~4とストレージ装置10000間を接続する第1のネットワークと、アプリケーションサーバ2~4には接続されず各ストレージ装置同士を接続する第2のネットワークから構成されていてもよい。
 また、計算機システムの別の構成例として、管理者が使用する入出力デバイス(ディスプレイやキーボードなど)を備えたクライアント端末が計算機システム内に設けられてもよい。そして管理サーバ1は、コピートポロジーの表示内容やアラートの表示内容を、クライアント端末のディスプレイに出力するように構成されていてもよい。
(2)ストレージ装置の機能
 続いてストレージ装置10の有する機能について説明を行う。ストレージ装置10では、コントローラ100内のCPU101が制御プログラムを実行している。制御プログラムが実行されることで、コントローラ100は1以上の記憶デバイスの記憶領域を用いて、論理的な記憶領域を1または複数個形成する。本実施例ではこの論理的な記憶領域のことを、ボリュームまたは論理ユニットと呼ぶ。論理ユニットはLUと略記されることもある。ストレージ装置10はアプリケーションサーバ2~4にボリュームを提供し、アプリケーションサーバ2~4はストレージ装置10から提供されるボリュームに対して、I/O要求(リードコマンド、ライトコマンド等)を発行する。コントローラ100はホスト1から受信したI/O要求に応じて、ボリュームに対するデータアクセスを実行する。
(2-1)レプリケーション機能とコピーペア
 ストレージ装置10はさらにボリュームの複製を作成するレプリケーション機能を有する。本実施例において、“レプリケーション”は、あるボリューム(第1ボリュームと呼ぶ)に対してデータの書き込みが行われた時、そのデータの複製を別のボリューム(第2ボリュームと呼ぶ)にも書き込む処理を意味する。以下では、この第1ボリュームと第2ボリュームの組を、ボリュームペア、またはコピーペアと呼ぶ。
 また、コピーペアを構成する2つのボリュームのうち、最初にデータが格納されるボリュームのことは「プライマリボリューム」または「P-VOL」と呼ばれる。そして2番目にデータが格納されるボリュームは「セカンダリボリューム」または「S-VOL」と呼ばれる。また、あるP-VOLとコピーペアの関係にあるS-VOLのことを、P-VOLのペアボリュームと呼ぶ。逆に、あるS-VOLとコピーペアの関係にあるP-VOLのことを、S-VOLのペアボリュームと呼ぶ。
 P-VOLとS-VOLは、同じストレージ装置10にあってもよいし、それぞれが異なるストレージ装置10にあってもよい。P-VOLとS-VOLが同じストレージ装置10にある場合、P-VOLに書き込まれたデータをS-VOLに複製するオペレーションを、ローカルコピーまたはローカルレプリケーションと呼ぶ。ローカルコピーが行われるコピーペアは「ローカルコピーペア」と呼ばれる。逆にP-VOLとS-VOLがそれぞれ異なるストレージ装置10にある場合、P-VOLに書き込まれたデータをS-VOLに複製するオペレーションを、リモートコピーまたはリモートレプリケーションと呼ぶ。リモートコピーが行われるコピーペアは「リモートコピーペア」と呼ばれる。
 リモートコピーのオペレーションには、同期型リモートコピーと非同期型リモートコピーがある。図2を用いて同期型リモートコピーと非同期型リモートコピーの説明を行う。図2の(a)は同期型リモートコピーの概念を表した図である。ストレージ装置10-0にP-VOLがあり、このP-VOLのペアボリュームがストレージ装置10-1にある構成を想定する。
 アプリケーションサーバ2がP-VOLに対してライト要求とライトデータを送信すると(S1)、ストレージ装置10-0はP-VOLにライトデータを書き込むとともに、ストレージ装置10-1に対し、S-VOLにライトデータを書き込むよう指示する(S2)。ストレージ装置10-1はS-VOLにライトデータを書き込んだ後、ストレージ装置10-0に書き込みが完了した旨を応答する(S3)。ストレージ装置10-1からの応答を受領した後、ストレージ装置10-0はアプリケーションサーバ2にライト要求で指定されたライトデータの書き込みが完了した旨を応答する(S4)。そのため同期型リモートコピーによるレプリケーションが行われる場合、P-VOLとS-VOLの内容は常に同じ状態が保たれる。
 図2の(b)は非同期型リモートコピーの概念を表した図である。ストレージ装置10-0にP-VOLがあり、このP-VOLのペアボリュームがストレージ装置10-1にある構成を想定する。アプリケーションサーバ2がP-VOLに対してライト要求とライトデータを送信すると(S1’)、ストレージ装置10-0はP-VOLにライトデータを書き込み、アプリケーションサーバ2にライト要求で指定されたライトデータの書き込みが完了した旨を応答する(S2’)。その後ストレージ装置10-0はストレージ装置10-1に対し、S-VOLにライトデータを書き込むよう指示する(S3’)。そのため非同期型リモートコピーによるレプリケーションが行われる場合、P-VOLとS-VOLの内容は必ずしも同じであるとは限らず、P-VOLに書き込まれたデータの複製がS-VOLにまだ格納されていない状態であることもある。
 以下ではリモートコピーペアのうち、同期型リモートコピーが行われるリモートコピーペアのことを「同期リモートコピーペア」と呼び、非同期型リモートコピーが行われるリモートコピーペアのことを「非同期リモートコピーペア」と呼ぶ。
(2-2)ペアステータス
 各コピーペアは、以下に説明するいずれかの状態を有する。これらの状態のことを本実施例では「ペアステータス」と呼ぶ。ストレージ装置10はペアステータスとして、以下の状態を管理する。ペアステータスは、ストレージ装置10の管理者が管理サーバ1やアプリケーションサーバ2~4からストレージ装置10に指示を発行することで変更することも可能であるが、ストレージ装置10に発生した障害のために、ストレージ装置10が自発的にペアステータスを変更することもある。
 (a)Duplex状態(sync状態):
 ストレージ装置10は、コピーペアを形成する際、最初にP-VOLの内容をすべてS-VOLへとコピーする処理(初期コピー処理と呼ばれる)を行う。初期コピー処理または後述する再同期処理が完了して、P-VOLの内容とS-VOLの内容が同一になったコピーペアの状態を、Duplex状態(またはSync状態)と呼ぶ。
 (b)Suspend(error)状態:
 コピーペアのペアステータスがDuplex状態にある時は、コピーペアのP-VOLに対して書き込まれたデータはS-VOLにも書き込まれる(なお、P-VOLに書き込まれたデータがS-VOLに反映されるオペレーションは、「P-VOLからS-VOLへデータが書き込まれる(またはコピーされる)」と表現されることもある)。一方、P-VOLの内容がS-VOLに反映されない状態のことを、Suspend状態と呼ぶ。コピーペアがSuspend状態になる場合には、たとえば以下の2ケースがある。
 第1のケースは、P-VOLを有するストレージ装置10と、このP-VOLのペアボリューム(S-VOL)を有するストレージ装置10を接続する伝送線(SAN7)が遮断される障害が発生したために、コピーが不可能になった場合である。本実施例では、コピーペアがこのような状態になった場合、“Suspend(error)”状態または“error”状態と呼ぶ。なお、コピーペアがerror状態になった場合、もしP-VOLへのデータ書き込みが可能な状態にある場合、ストレージ装置10はP-VOLへのデータライトは実施するが、S-VOLへのデータ複製は実施しない。
 (c)Suspend(normal)状態:
 コピーペアがSuspend状態になる第2のケースは、ユーザからの指示によって、コピーペアの状態がSuspend状態に変更されるケースである。たとえばユーザが現時点のP-VOLの内容をS-VOLに保存したい時、ユーザはこのコピーペアの状態を、Duplex状態からSuspend状態に変更するよう、ストレージ装置10に指示する。これによりP-VOLからS-VOLへのデータコピーが中断され、S-VOLには、コピーペアの状態がSuspend状態に変更された時点のデータが保存されることになる。
 本実施例ではこのように、ユーザからの指示によってコピーペアがSuspend状態になった場合、このコピーペアの状態を“Suspend(normal)”状態、または単にSuspend状態と呼ぶ。
 (d)Copy-Pending状態:
 ストレージ装置10はSuspend状態(またはerror状態)のコピーペアを、Duplex状態に戻すこともできる(ただしerror状態のコピーペアは、障害が発生した要因が取り除かれている必要がある)。Suspend状態からDuplex状態に遷移するまでの過渡状態にあるコピーペアの状態は“Copy-Pending”状態または“Copying”状態と呼ばれる。
 この状態の時、Suspend状態にあったコピーペアについて、P-VOLとS-VOLの内容を一致(同期)させるため、P-VOL(またはS-VOL)のデータがS-VOL(またはP-VOL)へとコピーされる。コピーが完了した時点で、そのコピーペアの状態は「Duplex状態」になる。「Suspend状態」のコピーペアをDuplex状態に遷移させる処理のことを、再同期処理(リシンク処理)と呼ぶ。
 なお、ストレージ装置10がコピーペアに対して初期コピー処理を行っている状態も、P-VOLとS-VOLの内容を同期させている状態であるので、この時のコピーペアの状態も、“Copy-Pending”状態または“Copying”状態と呼ばれる。
 (e)Simplex状態:
 コピーペアを構成していたボリュームが、コピーペアを構成しない状態になった時、それらのボリュームの状態は「Simplex状態」と呼ばれる。
(2-3)コンシステンシーグループ
 アプリケーションサーバ2~4で実行される、アプリケーションプログラム等の各プログラムは、複数のボリュームを使用することがある。複数のボリュームを使用する各プログラムは、特にこれらのプログラムがミッションクリティカル業務で用いられるものの場合、ボリュームに対してライトされた各データが、ライト要求の発行順にボリュームに書き込まれることを期待して設計されている。その場合、複数のコピーペアに書き込まれるデータの一貫性が保証されることが求められる。本実施例において、それぞれのS-VOLに格納される複製データが、アプリケーションサーバ2~4からP-VOLに対して書き込まれる各データの書き込み順と同じ順で、S-VOLに格納される場合、データ一貫性が保証されていると呼ぶ。
 これについて、図3を用いて具体的に説明する。図3において、ストレージ装置10-0とストレージ装置10-1には2つのコピーペアが定義されている。P-VOL111とS-VOL151が1つめのコピーペアで、P-VOL112とS-VOL152が2つめのコピーペアである。そしてアプリケーションサーバ2が時刻t0にデータD1をP-VOL111に書き込むことを指示するライト要求を発行し、そして時刻t1にデータD2をP-VOL112に書き込むことを指示するライト要求を発行したケースを想定する(なお、t0<t1の関係にある)。
 この場合、ストレージ装置10-0は、データD1をP-VOL111に書き込んでからデータD2をP-VOL112に格納する。さらにストレージ装置10-1が、データD1をS-VOL151に書き込んでからデータD2をS-VOL152に格納する場合、この2つのコピーペアはデータ一貫性が保証されている状態にある。
 本実施例に係るストレージ装置10は、コンシステンシーグループと呼ばれる、データ一貫性を保証したい複数のコピーペアから成るグループを定義することができる。コンシステンシーグループの定義は、アプリケーションサーバ2~4のユーザまたはストレージ装置10(あるいは計算機システム)の管理者が行う。また、複数のコンシステンシーグループが定義されてもよい。
 ストレージ装置10は、同一のコンシステンシーグループに属する複数のコピーペアに対する書き込みを受領すると、これらのコピーペアについては、P-VOLへのデータの書き込み順とS-VOLへのデータの書き込み順が同じになるように、書き込み処理の制御を行う。
 なお、1つのコンシステンシーグループにコピーペアが1つだけ所属している状態も許される。またデータ一貫性が保証される必要がない場合は、コンシステンシーグループは定義されなくともよい。ただし本実施例では、各コピーペアはいずれかのコンシステンシーグループに所属している状態にある例を説明する。なお、コンシステンシーグループはCTGと略記されることもある。またコンシステンシーグループは、コピーグループと呼ばれることもある。
 コンシステンシーグループを構成する際には、いくつかの制約がある。1つのコンシステンシーグループに複数コピーペアが所属している場合、各コピーペアのP-VOLが異なるストレージ装置10に存在する構成は許されない。同様に、同一コンシステンシーグループ内各コピーペアの各S-VOLが異なるストレージ装置10に存在する構成も許されない。また、1つのコンシステンシーグループに複数コピーペアが所属している場合、同期リモートコピーペアと非同期リモートコピーペアが混在する構成も許されない。
 図3の構成を例にとって、具体例の説明を行う。図3において、ボリューム111とボリューム112が同一コンシステンシーグループに属しているが、ボリューム111とボリューム112が異なるストレージ装置10に存在する構成は許されない。同様に、ボリューム151とボリューム152が異なるストレージ装置10に存在する構成も許されない。
 またボリューム111がP-VOLでボリューム112がS-VOLという構成も許されない。さらに、ボリューム111とボリューム151が同期リモートコピーペアで、ボリューム112とボリューム152が非同期リモートコピーペアという構成も許されない。
(2-4)コピーペアの操作
 アプリケーションサーバ2~4のユーザまたはストレージ装置10(あるいは計算機システム)の管理者は、アプリケーションサーバ2~4または管理サーバ1からストレージ装置10に指示を発行することにより、コピーペアの状態を操作(変更)することができる。本実施例に係るストレージ装置10はコピーペアに対し、以下の操作が可能である。
 (A)ペア形成
 ユーザ(または管理者)は、これまでコピーペアでなかった(Simplex状態の)2つのボリュームを、コピーペアとして運用される状態に設定することができる。2つのボリュームを、コピーペアとして運用させるオペレーションを、コピーペアの形成、またはペア形成と呼ぶ。ペア形成が行われると、コピーペアでなかった2つのボリュームがコピーペアとして管理されるようになる。ユーザ(または管理者)がペア形成を行う際、形成されるコピーペアがリモートコピーペアの場合、同期リモートコピーペアにするか、あるいは非同期リモートコピーペアにするかを指定する。また、2つのボリュームについてペア形成が行われると、原則としてそのコピーペアの状態はCopying状態を経由してから、Duplex(Sync)状態になるが、そのコピーペアをSuspend状態にすることもできる。
 (B)ペア解除
 コピーペアとして運用されていた2つのボリュームを、Simplex状態にするオペレーションを、コピーペアの解除、またはペア解除と呼ぶ。
 (C)ペア中断・サスペンド
 Duplex状態のコピーペアの状態を、Suspend(normal)状態に変更するオペレーションを、コピーペアの中断、またはペアサスペンド、と呼ぶ。
 (D)ペア再同期
 Suspend状態のコピーペアをDuplex状態に遷移させるオペレーションのことを、コピーペアの再同期(またはペアリシンク)と呼ぶ。
 (E)ペア反転
 コピーペアを構成する2つのボリューム(P-VOL,S-VOL)について、P-VOLとして運用されていたボリュームをS-VOLにし、そしてS-VOLとして運用されていたボリュームをP-VOLに変更するオペレーションのことを、コピーペアの反転(ペア反転)あるいはコピー方向の反転と呼ぶ。たとえば障害が発生したために、P-VOLに格納されていたデータが壊れた場合等に、S-VOLに格納されていたデータをP-VOLに書き戻す(リストアする)ために、ペア反転が行われる。
 また、管理者またはユーザがコピーペアの操作を行う場合、コピーペアごとに指示を発行することもできるが、コンシステンシーグループごとに指示を発行することが可能である。ストレージ装置10があるコンシステンシーグループに対する操作指示を受領すると、ストレージ装置10は、そのコンシステンシーグループに属する全コピーペアについて、同じ操作を行う。
 たとえばあるコンシステンシーグループのサスペンド指示を発行すると、そのコンシステンシーグループに属する全コピーペアのペア状態をSuspend(normal)状態にする。ただし、ストレージ装置10等で発生した障害のために、特定の1つのコピーペアのペアステータスがSuspend(error)状態に変更された場合、そのコピーペアの属するコンシステンシーグループ内のその他のコピーペアの状態は必ずしも変更されない。
 なお本実施例では、説明が冗長になることを避けるために、管理者またはユーザはコンシステンシーグループごとにコピーペアの操作の指示を行う前提で説明する。そのため原則として、コンシステンシーグループ内の各コピーペアの状態は同じであり、ペア反転が行われる場合も、コンシステンシーグループ内の全コピーペアについて、ペア反転が行われる。
(2-5)コピーペアの連結
 本実施例に係るストレージ装置10では、複数のコピーペア(またはCTG)が連結されることで、コピー元のボリュームのデータの複製が複数のボリュームに格納されるように構成されることも許される。複数のコピーペアが連結される例を図4に示す。
 図4において、参照番号131~134,141,142の付されているオブジェクトはボリュームを表す。また参照番号121~124の付された、点線で示されたオブジェクトは、コンシステンシーグループを表す(なお、この例ではコンシステンシーグループ内に1つのコピーペアしか存在しないため、オブジェクト121~124は、コピーペアであると言ってもよい)。なお、各ボリュームはどのストレージ装置10に存在していてもよい。たとえばボリューム131~134がすべて同一ストレージ装置10内にある構成でも良いし、あるいはボリューム131,132がストレージ装置10-0に、ボリューム133がストレージ装置10-1に、そしてボリューム134がストレージ装置10-2に存在するように構成されていてもよい。
 CTG121には、ボリューム131,132が属しており、CTG121内ではボリューム131がP-VOL、ボリューム132がS-VOLである。CTG122には、ボリューム132,133が属しており、CTG122内ではボリューム132がP-VOL、ボリューム133がS-VOLである。
 つまりボリューム132は、ボリューム131にとってはS-VOLであり、またボリューム133にとってはP-VOLでもある。CTG121,122のように、あるCTG(またはコピーペア)のS-VOLが別のCTG(またはコピーペア)のP-VOLになるように、複数のCTG(コピーペア)が接続される状態を、「カスケード接続」と呼ぶ。
 一方、CTG123は、ボリューム131,134が属しており、CTG123内ではボリューム131がP-VOL、ボリューム134がS-VOLである。つまりボリューム131は、ボリューム132にとってもボリューム134にとってもP-VOLである。CTG121,123のように、あるCTG(またはコピーペア)のP-VOLが別のCTG(またはコピーペア)のP-VOLにもなるように、複数のCTG(コピーペア)が接続される状態を、「マルチターゲット接続」と呼ぶ。
 カスケード接続またはマルチターゲット接続されているすべてのボリュームには、同じデータが格納される。図4において、アプリケーションサーバ2がボリューム131にデータを書き込むと、書き込まれたデータは他の全てのボリューム(つまりボリューム132,133,134)にも複製される(なお、この時のレプリケーションは同期型コピーによって行われても非同期型コピーによって行われても良い)。本実施例では、カスケード接続またはマルチターゲット接続されたコピーペア(またはCTG)の集合のことを、「コピートポロジー」または「トポロジー」と呼ぶ。
 図4の例では、CTG121,122,123(及びCTG121~123に属する各コピーペア)は、1つのコピートポロジーに属している状態といえる。アプリケーションサーバ2がボリューム131にデータを書き込むと、書き込まれたデータは、ボリューム131と同一トポロジーに属する全てのボリューム(つまりボリューム132,133,134)にも複製される。
 一方CTG124に属するボリューム141,142は1つのコピーペアだが、CTG121,122,123に接続(カスケード接続またはマルチターゲット接続)されていないので、CTG124はCTG121~123の属するコピートポロジーとは異なるコピートポロジーに属する。
 本実施例ではまた、トポロジー内のボリュームのうち、全てのボリュームのコピー元となるボリュームのことを「ルートボリューム」と呼ぶ。またルートボリュームをP-VOLとするコピーペアを「ルートペア」と呼び、ルートペアを有するCTGを「ルートグループ」と呼ぶ。ルートボリュームとは別の表現をすると、いずれのコピーペアのS-VOLではないボリュームである。図4の例において、CTG121~123が属するトポロジーの中ではボリューム131がルートボリュームで、CTG121とCTG123がルートグループである。またCTG121に属するコピーペアとCTG123に属するコピーペアがルートペアである。
 なお、図4では説明の簡単化のために、各CTGには1つのコピーペアのみが存在する構成を示しているが、各CTGに複数のコピーペアが存在している場合でも同じである。
 一般に、ある1つの業務(アプリケーションサーバ2~4で実行されるアプリケーションプログラム)が直接使用(アクセス)するボリュームは、P-VOLで、かついずれのコピーペアのS-VOLになっていないボリューム(つまりルートボリューム)であることが多い。そしてルートボリュームの複製が格納される各ボリューム(ルートボリュームと同じコピートポロジーに属するボリューム)も一般的には、ルートボリュームを使用する業務が、バックアップ目的等で使用するボリュームであることが多い。そのため、コピートポロジー単位で各ボリュームの状態等が監視できると、各業務で使用されるボリューム群の状態が一目で把握できることになるため、ユーザにとって分かりやすい。
 なお、コピートポロジーは、管理サーバ1が管理する概念であり、個々のストレージ装置10はコピートポロジーという概念の管理は行わない。また本実施例に係る計算機システムでは、管理サーバ1のストレージ管理プログラムが、各CTG(またはコピーペア)の情報をストレージ装置10から取得することで、各CTG(またはコピーペア)の属するコピートポロジーを自動的に定義(決定)する。ただしストレージ管理プログラムは、ユーザがコピートポロジーを手動で定義できる機能を備えていてもよい。
 コピートポロジーの別の例を、図5に示す。図5において、CTG121’には、ボリューム131’,132’が属しており、CTG121’内ではボリューム131’がP-VOL、ボリューム132’がS-VOLである。CTG123’には、ボリューム131’,134’が属しており、CTG123’内ではボリューム131’がP-VOL、ボリューム134’がS-VOLである。CTG125’には、ボリューム132’,134’が属しており、CTG125’内ではボリューム132’がP-VOL、ボリューム134’がS-VOLである。
 各コピーペア(またはCTG)が図5のように接続される構成は、ストレージ装置10を3拠点に配置する場合に用いられる。以下の説明では、たとえばボリューム131’はストレージ装置10-0に、ボリューム132’はストレージ装置10-1に、そしてボリューム134’はストレージ装置10-2に存在する例を説明する。
 またCTG121’では、同期型リモートコピーによるレプリケーションが行われ、CTG123’では、非同期型リモートコピーによるレプリケーションが行われるように、ペア形成時に指定されている前提とする。そしてCTG125’内の各コピーペア(たとえばボリューム132’と134’)も非同期型リモートコピーによるレプリケーションが行われるように、ペア形成時に指定されるが、CTG125’内の各コピーペアは通常状態(障害の発生していない状態)ではSuspend状態で運用が行われる。つまり通常状態では、ボリューム132’に書き込まれたデータがボリューム134’に複製されることはない。ボリューム134’には、ボリューム131’に書き込まれたデータの複製が格納される。
 災害などが発生したために、ストレージ装置10-0が停止した場合、ボリューム132’にはボリューム131’に格納されたデータと同じデータが格納されている。ボリューム131’とボリューム132’は同期型リモートコピーが行われていたからである。一方、ボリューム131’に格納されたデータのうち、一部のデータはボリューム134’に格納されていないこともある。ボリューム131’とボリューム134’は非同期リモートコピーペアだからである。
 この場合、ストレージ装置10は、ボリューム132’には格納されたが、まだボリューム134’に格納されていないデータ(これをボリューム132’とボリューム134’の差分データと呼ぶ)を、ストレージ装置10-1からストレージ装置10-2に転送し、ボリューム134’の内容をボリューム132’と同じにする(言い換えればボリューム131’の障害直前の状態と同じになるようにする)。以下では、このようなCTG(またはコピーペア)の構成を、3サイトリモートコピー構成と呼ぶ。またボリューム132’とボリューム134’で構成されるコピーペア(つまり通常状態ではSuspend状態で運用が行われ、障害発生時に差分コピーが行われるコピーペア)を、「差分コピーペア」と呼び、差分コピーペアを含むCTG(図5ではCTG125’)を「差分コピーグループ」と呼ぶ。
 また3サイトリモートコピー構成のCTG(またはコピーペア)、つまりCTG121’、123’、125’も、1つのトポロジーに属するものとして管理される。CTG121’、123’、125’は、カスケード接続またはマルチターゲット接続された関係にあるからである。
(3)管理情報
 続いて、本実施例に係る計算機システムで管理される管理情報の説明を行う。図6はストレージ装置10の有する、ペア管理テーブル500の例である。ストレージ装置10は、コピーペアが定義される際に、定義されたコピーペアの情報をペア管理テーブル500に格納する。ペア管理テーブル500内の1行(レコード)が、1つのコピーペアについての属性情報を表している。なお、本実施例に係る計算機システムでは、P-VOLまたはS-VOLの少なくとも一方を有するストレージ装置10はいずれも、ペア管理テーブル500を有する。
 ペア管理テーブル500のレコードは、Pair Status501、Type502、CTG ID503、PDKC#504、P-VOL#505、SDKC#506、S-VOL#507の情報を含む。Pair Status501は、コピーペアのペアステータスである。本実施例ではPair Status501には、0~4の整数値が格納される例を説明する。0がCopy-pending状態を表し、1がDuplex状態、2がSuspend(normal)状態、3がSuspend(error)状態、4がSimplex状態を表す。
 Type502は、コピーペアのコピー種別を表す。本実施例においてコピー種別とは、コピーペアに対して行われるコピーオペレーションの種類を意味する。レコードのType502に0が格納されている場合、そのレコードによって管理されているコピーペア(管理対象コピーペアと呼ぶ)ではローカルコピーが行われること、つまり管理対象コピーペアはローカルコピーペアであることを意味する。一方、Type502に1または2が格納されている場合、管理対象コピーペアはリモートコピーペアであることを意味する。Type502が1の場合、管理対象コピーペアで同期型リモートコピーが行われ、2の場合には、管理対象コピーペアで非同期型リモートコピーが行われる。CTG ID503は、管理対象コピーペアが属するCTGの識別番号(Consistency Group ID、またはCTG IDと呼ばれる)である。
 PDKC#504とP-VOL#505はそれぞれ、管理対象コピーペアのP-VOLが属するストレージ装置10の識別番号(シリアル番号と呼ぶ)と、P-VOLのボリューム番号を表す。一方SDKC#506、S-VOL#507はそれぞれ、管理対象コピーペアのS-VOLが属するストレージ装置10の識別番号(シリアル番号と呼ぶ)と、S-VOLのボリューム番号を表す。コピーペアがリモートコピーペアの場合、PDKC#504とSDKC#506には、それぞれ異なる値が格納され、コピーペアがローカルコピーペアの場合、PDKC#504とSDKC#506には同一の値が格納される。以下では、シリアル番号がxのストレージ装置10内の、ボリューム番号がyのボリュームを、“ボリューム#[x,y]”(xとyは整数値とする)と表記する。
 続いて管理サーバ1が有する管理情報である、コピーペア情報700、コピーグループ情報750、トポロジー情報800について説明する。これらの情報は、管理サーバ1のメモリ12またはディスク装置13に格納される。
 図7は、コピーペア情報700の例である。管理サーバ1で実行されるストレージ管理プログラムは、各ストレージ装置10からペア管理テーブル500を取得して、取得したペア管理テーブル500の情報をもとにコピーペア情報700を作成または更新する。
 コピーペア情報700のレコードに含まれる情報の多くは、ペア管理テーブル500のレコードの情報と同じである。コピーペア情報700のPair Status701、Type702、CTG ID703、PDKC#704、P-VOL#705、SDKC#706、S-VOL#707は、ペア管理テーブル500のPair Status501、Type502、CTG ID503、PDKC#504、P-VOL#505、SDKC#506、S-VOL#507と同じ情報である。
 ただしコピーペア情報700のPair Status701には、0~5のいずれかの整数値が格納される。0~4の数値の意味は、ペア管理テーブル500のPair Status501に格納されるものと同じ意味である。Pair Status701に“5”が格納される場合、ストレージ管理プログラムではコピーペアのペア状態が判断できない状態であることを意味し、この状態はUnknown状態と呼ばれる。たとえばストレージ管理プログラムが、ストレージ装置10からペア状態を取得できなかった場合に、Unknown状態になる。
 Alert708は、ストレージ管理プログラムがPair Status701の状態に応じて設定する情報で、0か1の値をとる。Alert708の初期値は0である。ストレージ管理プログラムは、Pair Status701があらかじめ定められた特定の状態になった時、Alert708に“1”を設定する。なお、この特定の状態は、管理者が事前設定可能である。
 Alert708の主な使用目的は、特に管理対象コピーペアが、管理者に警告すべき状態になった時に、管理者にそれを通知することである。たとえばコピーペアが、データコピーできない状態になった時は、管理者はいち早くその事実を知ることができることが望ましい。そのため管理者はたとえば、ペア状態がSuspend(error)状態になった時にAlert708に“1”が設定されるように、管理サーバ1を設定しておくとよい。以下では、Alert708に“1”が設定されるオペレーションを、「アラート設定」と呼ぶ。またAlert708に“1”が設定された状態を、「アラート状態」と呼ぶ。
 コピーペア情報700とペア管理テーブル500の違いは、コピーペア情報700にはAlert708という情報が含まれることである。また、コピーペア情報700とペア管理テーブル500のもう1つの違いは、コピーペア情報700には計算機システム内の全ストレージ装置10のコピーペアの情報が格納されるのに対し、ペア管理テーブル500はストレージ装置10がそれぞれ持つ情報であるから、1つのストレージ装置10内で管理されるコピーペアの情報しか格納されない点である。
 続いて、管理サーバ1が有するコピーグループ情報750の例を、図8を参照しながら説明する。コピーグループ情報750は、ストレージ管理プログラムがストレージ装置10内のコンシステンシーグループについての情報を管理するためのテーブルである。コピーグループ情報750のレコードには、Group#751、Group Name752、CTG ID753、Type754、Copy Status755、Alert756が含まれる。
 ストレージ管理プログラムは、ストレージ装置10内のコンシステンシーグループごとに、コピーグループIDとコピーグループ名を付して管理する。コピーグループ名は、管理者により設定される名称であり、各コンシステンシーグループのコピーグループ名は、計算機システム内で一意な名称でなければならない。コピーグループIDは、ストレージ管理プログラムがコピーグループ名に基づいて生成する番号であり、ストレージ装置10が管理しているCTG IDと異なっていてもよい。なお、コピーグループIDは、必ずしも数値である必要はなく、文字列を含んだ識別子でよい。
 Group#751とGroup Name752には、ストレージ管理プログラムが定義した、コピーグループIDとコピーグループ名が格納される。CTG ID753、Type754とタイプは、管理対象コピーグループ(コンシステンシーグループ)のCTG IDとコピー種別である。
 Copy Status755には、管理対象コピーグループに含まれるコピーペアの状態を集約した結果が格納される。以下では、コピーグループに含まれるコピーペアの状態を集約した内容のことを、「コピーグループの状態」と呼ぶ。Copy Status755に格納される情報の種類は、コピーペア情報700のPair Status701に格納されるものと同じ、つまり0~5の整数値が格納される。0がCopy-pending状態を表し、1がDuplex状態、2がSuspend(normal)状態、3がSuspend(error)状態、4がSimplex状態、5がUnknown状態を表す。また、Copy Status755に格納される内容の決定方法は後述する。
 Alert756は、ストレージ管理プログラムがCopy Status755等の状態に応じて設定する情報である。Alert708と同様に、Copy Status755があらかじめ定められた状態になった時、ストレージ管理プログラムはAlert756に“1”を設定する。
 続いて、管理サーバ1が有するトポロジー情報800の例を、図9を参照しながら説明する。トポロジー情報800は、コピートポロジーの情報を管理するためのテーブルである。ストレージ管理プログラムは、コピーペア情報700、コピーグループ情報750をもとに、計算機システム内に存在するコピートポロジーを特定し、特定されたコピートポロジーの情報をトポロジー情報800に記録する。
 トポロジー情報800のレコードには、Topology#801、Topology Name802、Copy Group List803、Copy Status(local)804、Copy Status(remote)805、Alert806が含まれる。
 Topology#801とTopology Name802にはそれぞれ、管理対象コピートポロジーの識別子(トポロジーIDと呼ばれる)と、管理対象コピートポロジーのトポロジー名称が格納される。これらはストレージ管理プログラムがコピートポロジーを定義(作成)した時に、ストレージ管理プログラムによって自動生成される。ただしトポロジー名称は、後から管理者が変更してもよい。コピーグループ名等と同様、各トポロジーのトポロジーIDとトポロジー名称は、計算機システム内で一意な名称でなければならない。またトポロジーIDは、必ずしも数値である必要はなく、文字列を含んだ識別子でよい。たとえばルートグループのコピーグループIDを含んだ情報が、トポロジーIDに採用されてもよい。
 Copy Group List803には、管理対象コピートポロジーに属する全コピーグループのコピーグループIDが格納される。
 Copy Status(local)804、Copy Status(remote)805には、管理対象コピートポロジーに含まれるコピーペアの状態を集約した結果が格納される。Copy Status(local)804には、管理対象コピートポロジーに含まれるコピーペアのうち、ローカルコピーペアの状態を集約した結果が格納され、Copy Status(remote)805には、管理対象コピートポロジーに含まれるコピーペアのうち、リモートコピーペアの状態を集約した結果が格納される。管理対象コピートポロジーにローカルコピーペアが含まれていなければ、Copy Status(local)804にはNULLが格納される。同様に、管理対象コピートポロジーにリモートコピーペアが含まれていなければ、Copy Status(remote)805にはNULLが格納される。
 Alert806は、ストレージ管理プログラムがCopy Status(local)804やCopy Status(remote)805の状態に応じて設定する情報であり、詳細は後述する。
(4)処理の流れ
 続いて、ストレージ管理プログラムの処理の流れを説明する。図10はストレージ管理プログラムがトポロジー情報800を更新する時の処理の流れを表している。この処理はストレージ管理プログラムが定期的に行う。あるいはユーザがコピーグループ(またはコピーペア)の操作を行ったことにより、コピーグループ(またはコピーペア)の状態が変更された場合等にも実施される。なお、図10以降の各図において、参照番号の前に付されているアルファベットの“S”は、「ステップ」を意味する。
 S1001:ストレージ管理プログラムは、計算機システム内の各ストレージ装置10から、ペア管理テーブル500を収集する。
 S1002:ストレージ管理プログラムは、現在のコピーペア情報700とコピーグループ情報750とトポロジー情報800を、メモリ12またはディスク装置13に退避する。以下ではここで退避されたコピーペア情報700、コピーグループ情報750、トポロジー情報800をそれぞれ、「旧コピーペア情報」、「旧コピーグループ情報」、「旧トポロジー情報」と呼ぶ。
 S1003:ストレージ管理プログラムは、コピーペア情報700に格納されている全レコードを削除し、S1001で収集したペア管理テーブル500内のレコードを元に、コピーペア情報700に格納すべきレコードを作成し、作成したレコードをメモリ12上のコピーペア情報700に格納する。なお、ペア管理テーブル500のレコードには、Alert708に相当する情報は含まれていないため、コピーペア情報700に格納すべきレコードを作成する際、まずAlert708には何も格納されていないレコードを作成する。Alert708への情報格納については後述する。
 また、リモートコピーペアの情報は、2台のストレージ装置10が有している。具体的にはP-VOLを有するストレージ装置10のペア管理テーブル500と、S-VOLを有するストレージ装置10のペア管理テーブル500の両方に、リモートコピーペアの情報が含まれている。そのためストレージ管理プログラムは、同じ内容のレコードが重複してコピーペア情報700に格納されないようにする。
 さらにストレージ管理プログラムは、コピーペア情報700に格納された各コピーペアの情報から、Alert708に情報を設定する。先に述べたとおり、ストレージ管理プログラムは、Pair Status701が特定の状態になった時、Alert708に“1”を設定する。たとえばPair Status701が“3”(error状態)だった場合、Alert708に“1”が設定され、Pair Status701が“3”以外の値の時には、Alert708に“0”が設定されるとよい。
 S1004:ストレージ管理プログラムは、S1003で作成されたコピーペア情報700を元にして、コピーグループ情報750を作成する。この処理は後述する(図11)。
 S1005:ストレージ管理プログラムは、S1003とS1004で作成されたコピーペア情報700及びコピーグループ情報750、そしてS1002で退避された旧コピーペア情報、旧コピーグループ情報、旧トポロジー情報を用いて、トポロジー情報800の作成(または更新)を行う。この処理は後述する(図12)。
 S1006:ストレージ管理プログラムは、S1005で作成されたトポロジー情報800の各レコードについて、Copy Status(local)804、Copy Status(remote)805、Alert806への情報格納を行う。この処理は後述する(図13)。
 S1007:ストレージ管理プログラムは、トポロジー情報800を用いて、管理サーバ1のディスプレイに各トポロジーの状態について表示することで、ユーザ(管理者)に各トポロジーの状態の通知を行う。このとき、Alert806が“1”の場合、ディスプレイにアラートの表示を行う。
 ここでの表示の方法は任意で良い。たとえば図17に示されるように、ストレージ管理プログラムは各トポロジーについて、トポロジー名、コピー状態(リモートコピーグループの状態とローカルコピーグループの状態、つまりCopy Status(local)804、Copy Status(remote)805に格納されている内容)、そしてアラートをディスプレイに表示してもよい。表示の際、トポロジー情報800に格納されている情報(数値情報)をそのまま表示すると、ユーザがトポロジーの状態を把握しづらい。そのため図17に示されているように、トポロジー情報800に格納されている数値情報を、状態が一目でわかるようなアイコンに置き換えたものが表示されると好ましい。あるいはストレージ管理プログラムは、(たとえば図4や図5のように)コピートポロジー内の各コピーグループ(またはコピーペア)の接続関係をディスプレイに表示し、Alert708が“1”の場合、表示されたコピートポロジー上に、障害等が発生していることを示すマークが表示されるようにしてもよい。あるいはストレージ管理プログラムは、管理サーバ1のディスプレイにアラート状態である旨を表示する代わりに、アプリケーションサーバ2~4或いは非図示のクライアント計算機等に.コピートポロジーがアラート状態であることを通知するための情報を送信するようにしてもよい。もちろん、管理サーバ1のディスプレイへのアラートの表示と、アプリケーションサーバ2~4或いは非図示のクライアント計算機への情報送信の両方が行われてもよい。
 続いて、コピーグループ情報750の作成処理を、図11を参照しながら説明する。
 S1401:ストレージ管理プログラムはコピーペア情報700の中から、コピーペアレコードを1つ選択する。
 S1402:続いてストレージ管理プログラムは、コピーペア情報700内の各レコードのうち、CTG ID703が、S1401で選択したコピーペアレコードのCTG ID703と等しいレコードをすべて抽出する。
 S1403:ストレージ管理プログラムは、選択されたコピーペアレコードの情報をもとに、コピーグループ情報750に格納されるレコードを作成する。具体的にはストレージ管理プログラムは、S1401,S1402で選択されたコピーペアレコードのコピー種別、CTG ID(つまりType702,CTG ID703)を特定し、それを元にコピーグループ情報750に格納されるレコードを作成する。たとえばS1401,S1402で選択されたコピーペアのコピー種別がローカルコピーで、CTG IDが“1”であれば、CTG ID753に“1”が、そしてType754に“0”が格納されたレコードが作成されるとよい。また、Group#751、Group Name752については、以下の手順で設定される。まずストレージ管理プログラムは、ユーザにコピーグループ名を指定させる。そしてストレージ管理プログラムは、ユーザから指定されたコピーグループ名をGroup Name752に格納し、Group Name752に格納された情報をもとにGroup#751に格納する内容を生成する。ただし別の実施形態として、ストレージ管理プログラムが自動的にGroup#751、Group Name752を決定してもよい。また、コピーグループ名をユーザが決定する場合もストレージ管理プログラムが自動生成する場合も、Group#751、Group Name752には、すでにコピーグループ情報750に記録されているレコードに付されている物とは異なるコピーグループIDとコピーグループ名が設定される必要がある。
 S1404:ストレージ管理プログラムは、選択されたコピーペアレコードの情報をもとに、コピーグループのペア状態(Copy Status755)に格納される値、つまりコピーグループの状態を決定し、決定された状態をCopy Status755に格納する。コピーグループの状態は、以下のルールに基づいて決定される。
 ストレージ管理プログラムでは、コピーペアのペア状態には優先度が定められている。コピーグループの状態は、コピーグループに属する各コピーペアのうち、最も優先度の高いペア状態を有するコピーペアのペア状態と同じものに設定される。本実施例に係る計算機システムでは、コピーペアのペア状態の優先度は以下の順と定められており、この優先度に従ってコピーグループの状態が決定される。
(1) error
(2) suspend
(3) copying
(4) sync
(5) simplex
(6) unknown
 図14を用いて流れを説明する。ストレージ管理プログラムは、コピーグループに属する各コピーペアの中に“error”状態のコピーペアがある場合(S2001:YES)、Copy Status755に“3”(error状態)を格納する(S2002)。
 続いてストレージ管理プログラムは、コピーグループに属する各コピーペアの中に“Suspend”状態のコピーペアがある場合(S2003:YES)、Copy Status755に“2”(Suspend状態)を格納する(S2006)。“Suspend”状態のコピーペアは無く、“Copying”状態のコピーペアがある場合(S2007:YES)、ストレージ管理プログラムはCopy Status755に“0”(Copying状態)を格納する(S2008)。
 “Copying”状態のコピーペアは無く、“sync”状態のコピーペアがある場合(S2009:YES)、ストレージ管理プログラムはCopy Status755に“1”(Sync状態)を格納する(S2010)。もし“Sync”状態のコピーペアは無く、“Simplex”状態のコピーペアがある場合(S2011:YES)、ストレージ管理プログラムはCopy Status755に“4”(Simplex状態)を格納する。Simpex状態のコピーペアも存在しなかった場合には、ストレージ管理プログラムはCopy Status755に“5”(Unknown状態)を格納する。
 つまり、コピーグループに“error”状態のコピーペアがあれば、コピーグループの状態は“error”になる。コピーグループに“error”状態のコピーペアがなく、“Suspend”状態のコピーペアがあれば、コピーグループの状態は“Suspend”になる。また、コピーグループに1つのコピーペアしか存在しない場合、コピーグループの状態は、そのコピーグループに存在するコピーペアのペア状態と同じになる。
 S1405:ストレージ管理プログラムは、コピーグループのアラート設定(Alert756への情報設定)を行う。この処理はS1003と同様である。たとえばストレージ管理プログラムは、Copy Status755が特定の状態(たとえば“3”)だった場合、Alert756に“1”を格納し、それ以外の場合にはAlert756に“0”を格納する。
 S1406:ストレージ管理プログラムは、S1401またはS1402で選択されたコピーペアレコード以外に、コピーペア情報700内にレコードが残っていないか判定する。まだS1401またはS1402で選択されていないコピーペアレコードがコピーペア情報700内に残っている場合(S1406:NO)、再びS1401から処理が行われる。すべてのコピーペアレコードが選択された場合は(S1406:YES)、処理は終了する。
 続いて、トポロジー情報800の作成処理(S1005)を、図12を参照しながら説明する。
 S1501:ストレージ管理プログラムは、コピーペア情報700の複製を作成する。ここで作成された複製を、「作業用コピーペア情報」と呼ぶ。
 S1502:ストレージ管理プログラムは、作業用コピーペア情報と、S1002で作成された旧コピーペア情報の内容を比較することで、ペア反転が行われたコピーペアが存在するか判定する。具体的にはストレージ管理プログラムは、作業用コピーペア情報内のコピーペアレコードと、旧コピーペア情報のコピーペアレコードとを比較し、PDKC#704とP-VOL#705の組が、SDKC#706とS-VOL#707の組と入れ替わっているコピーペアレコードがあるか判定する。
 たとえば図7において、行724のレコードでは、PDKC#704とP-VOL#705は“0”で、SDKC#706とS-VOL#707にはそれぞれ、“1”と“2”が格納されている。一方図18に示すコピーペア情報700の例では、行721,722,724の内容は、図7に示されたコピーペア情報と同じだが、行723’では、PDKC#704とP-VOL#705にはいずれも“1”が格納され、SDKC#706とS-VOL#707にはそれぞれ、“0”と“2”が格納されている。つまり行723と行723’では、PDKC#704とP-VOL#705の組が、SDKC#706とS-VOL#707の組と入れ替わっており、行724’で管理されるコピーペアはペア反転が行われたことを意味する。S1502では、このようなコピーペアレコードがあるか判定する。
 このようなコピーペアレコードがある場合(S1502:YES)、ストレージ管理プログラムはS1503を実行する。このようなコピーペアレコードがない場合には、S1503はスキップされる。
 S1503:ストレージ管理プログラムは、作業用コピーペア情報内のコピーペアレコードのうち、ペア反転が行われたコピーペアのコピーペアレコードを、ペア反転前の状態に変更する。具体的にはストレージ管理プログラムは、ペア反転が行われたコピーペアのコピーペアレコードについて、PDKC#704とSDKC#706の値を入れ替え、またP-VOL#705とS-VOL#707の値を入れ替える。
 S1504:ストレージ管理プログラムは、作業用コピーペア情報を参照することで、ルートボリューム及びルートグループを特定する。ルートボリュームとは先に述べたとおり、いずれのコピーペアのS-VOLになっていないボリュームである。たとえば作業用コピーペア情報の内容が図7の例の通りである場合を想定する。図7ではたとえば、PDKC#704が0で、P-VOL#705が1の行(行721,722)があるので、ボリューム#[0,1]がP-VOLであることがわかる。ただし図7には、SDKCD#706が0、S-VOL#707が1の行は存在しないので、ボリューム#[0,1]をS-VOLとするコピーペアがないことを意味する。そのため作業用コピーペア情報の内容が図7の例の通りの場合、ストレージ管理プログラムはボリューム#[0,1]はルートボリュームであると判断する。一方、行723及び行721を参照すると、ボリューム#[0,2]はP-VOLであるとともにS-VOLでもある。そのためストレージ管理プログラムは、ボリューム#[0,2]はルートボリュームでないと判断する。また、ルートグループはルートボリュームの属するコピーグループであるから、ストレージ管理プログラムはルートボリュームが判明した後、作業用コピーペア情報とコピーグループ情報750を参照することで、ルートグループを特定することができる。
 S1505:ストレージ管理プログラムは作業用コピーペア情報を参照することで、S1504で特定されたルートボリュームの複製が格納されるボリューム、及びそのボリュームを有するコピーペアをすべて特定する。ここで特定された全コピーペアは、S1504で特定されたルートボリュームと同じトポロジーに属するものとして管理される。ここでの特定作業の具体的な手順は以下の通りである。
 まずストレージ管理プログラムは、ルートボリュームを含むコピーペア、及びそのコピーペアのS-VOLを特定する。ルートボリュームを含むコピーペアのS-VOLは、ルートボリュームの複製が格納されるボリュームだからである。さらに、特定されたコピーペアのS-VOLをP-VOLとするコピーペアがあった場合、それらのコピーペアはルートボリュームの複製が格納されるコピーペアである。そのためストレージ管理プログラムは、コピーペアのS-VOLをP-VOLとするコピーペアを探索する作業を繰り返す。具体的にはこの探索は、コピーペアのS-VOLをP-VOLとするコピーペアが見つからなくなるまで繰り返される。
 たとえば図4の構成例では、ルートボリュームであるボリューム131を含むコピーペアは、CTG121内のペアとCTG123内のペアであるから、ボリューム132及び134がルートボリュームの複製が格納されるボリュームとして特定される。さらに、ストレージ管理プログラムは、ボリューム132または134をP-VOLとするコピーペアを特定する。図4の場合、ボリューム134をP-VOLとするコピーペアは無いため、ボリューム134についてはこれ以上の探索は行われない。
 一方、ボリューム132をP-VOLとするコピーペアはある(ボリューム132及び133のコピーペア)ため、ストレージ管理プログラムは、次にボリューム133をP-VOLとするコピーペアがあるか判定する。図4の例では、ボリューム133をP-VOLとするコピーペアは無いため、ここで探索は終了する。この探索の結果、図4の例では、ボリューム131,132,133,134が1つのトポロジーに属するボリュームの集合と決定される(また、ボリューム131と132のコピーペア、ボリューム131と134のコピーペア、ボリューム132と133のコピーペアが、1つのトポロジーに属するコピーペアの集合と決定される)。
 S1507:ストレージ管理プログラムはコピーグループ情報750を参照することで、S1505で特定されたコピーペアの属するコピーグループを全て特定する。つまりS1505で決定されたトポロジーに属するコピーグループの特定が行われる。そしてストレージ管理プログラムは、特定されたコピーグループの集合を、トポロジー情報800に登録する。
 コピーグループの集合をトポロジー情報800に登録する際、ストレージ管理プログラムは旧コピーペア情報、旧コピーグループ情報、旧トポロジー情報を参照し、旧トポロジー情報に記録されている各トポロジーの、ルートボリューム及びルートグループを特定する。ここでは旧トポロジー情報に記録されているトポロジーのことを「旧トポロジー」と呼ぶ。
 なお、ルートボリューム及びルートグループの特定は、S1504で説明した方法と同様の方法が行われればよい(ただし参照する情報は旧コピーペア情報と旧コピーグループ情報である)。さらにストレージ管理プログラムは、特定されたルートグループを含む旧トポロジーを、旧トポロジー情報を参照することで特定する。
 そしてS1504で特定されたルートグループと同じルートグループを有する旧トポロジーがあった場合、ストレージ管理プログラムはコピーグループの集合をトポロジー情報800に登録する際に、旧トポロジーに付されていたトポロジーIDとトポロジー名称をそれぞれ、今回トポロジー情報800に登録されるトポロジーのTopology#801、Topology Name802に設定する。
 これにより、旧トポロジーと共通のルートグループを有するトポロジーは、トポロジーの識別子、トポロジーの名称が旧トポロジーと同じになる。たとえばあるトポロジーからルートグループ以外のコピーグループ(以下ではこれを「グループA」と呼ぶ)が削除された後、ストレージ管理プログラムがトポロジー情報800を更新すると、S1505で決定されたトポロジー(これを「新トポロジー」と呼ぶ)には、旧トポロジーに属していたグループAが含まれない。ただしその場合、新トポロジーは旧トポロジーと同じトポロジーであるように、ユーザに提示されることが望ましい。S1505で決定されたトポロジーと旧トポロジーは、ルートグループが同じであるので、同じ業務/用途で用いられているボリューム群である可能性が高いからである。
 そのため本実施例に係るストレージ管理プログラムでは、旧トポロジーと共通のルートボリューム(またはルートペアあるいはルートグループ)を有するトポロジーは、トポロジーの識別子、トポロジーの名称を旧トポロジーと同じにし、トポロジー情報800の更新前後で、計算機システム内に存在するトポロジーに変動がないようにしている。これによりユーザには、ストレージシステムの構成変更前後(たとえばコピーグループの削除)で、これまであったトポロジーが消失し、まったく別のトポロジーが作成されたように見えることがない。同様に、あるトポロジーにコピーグループが追加された場合でも、新トポロジーと旧トポロジーの有するルートボリューム(またはルートペアあるいはルートグループ)が同じである限りは、新トポロジーは旧トポロジーと同じトポロジーであるように、ユーザに提示される。
 S1508:ストレージ管理プログラムは、S1506でトポロジー情報800に登録されたコピーグループに属するコピーペアの情報を、作業用コピーペア情報から削除する。
 S1509:ストレージ管理プログラムは、作業用コピーペア情報にコピーペアレコードが残っているか判定し、コピーペアレコードが残っている場合(S1509:YES)、再びS1504を実行する。コピーペアレコードが残っていない場合(S1509:NO)、処理は終了する。
 なお、S1502及びS1503の処理が行われる理由(つまりペア反転前の状態を作り出す理由)は、以下の通りである。ペア反転は、たとえば障害後のデータ復旧のために、S-VOLに格納されていたデータをP-VOLに書き戻す(リストアする)ために行われる。たとえば図4のコピーペアの構成例において、CTG121に属するボリュームに障害が発生した、あるいはこれらのボリュームにアプリケーションサーバ2から誤ったデータが書き込まれた場合、CTG122内のS-VOL(ボリューム133)のデータをCTG121に属するボリュームに書き戻すことがある。この時CTG122内のコピーペア(ボリューム132及び133のペア)の反転が行われる。
 図4のコピーペアのうち、ボリューム132及び133のペアについてペア反転が行われた後の構成例を図16に示す。ペア反転の結果、ボリューム133がP-VOLに、そしてボリューム132はボリューム133の複製が格納されるS-VOLに変化する。なおボリューム132は、ボリューム131(P-VOL)のS-VOLでもある。仮に、図16のような状態にあるコピーペアについて、トポロジー情報800の作成処理(図12)が行われると(ただしS1502及びS1503の処理は行わないものとする)、ボリューム132及び133のペアは、ルートボリューム(ボリューム131)の複製が格納されるコピーペアとみなされず、CTG122は、CTG121やCTG123の属するトポロジーとは異なるコピートポロジーに属するものと判定される。
 しかし図16の状態は一時的な状態であり、一般的にはボリューム133のデータがCTG121に書き戻された後、CTG122は再び図4の状態に戻される。つまりボリューム132及び133のペアは本来図4のような構成であり、CTG121やCTG123の属するトポロジーに含まれているべきものであるから、仮に各コピーペアの状態が図16の状態であったとしても、ペア反転前の状態に基づいてコピートポロジーが作成されるほうが、ユーザからもわかりやすい。そのためストレージ管理プログラムは、ペア反転が発生したことが検出された場合、ペア反転前の状態に基づいてコピートポロジーの作成を行う。
 続いてS1006の処理、つまり各コピートポロジーのコピー状態の集約処理の流れを、図13~図15を用いて説明する。
 S1601:ストレージ管理プログラムは、トポロジー情報800の中から、以下のS1602,S1603の処理が行われていないトポロジーレコードを1つ選択する。
 S1602:ストレージ管理プログラムは、S1601で選択されたトポロジーレコードに含まれているコピーグループのうち、ローカルコピーペアを有するコピーグループ(これを「ローカルコピーグループ」と呼ぶ)を抽出し、それらのコピーグループの状態を集約し、結果をトポロジーレコードのCopy Status(local)804に格納する。この処理は、S1404と同様の処理である。つまりストレージ管理プログラムはローカルコピーグループのうち、最も優先度の高いコピーグループの状態を有するものを特定し、そのコピーグループの状態を、Copy Status(local)804に格納する。
 S1603:ストレージ管理プログラムは、S1601で選択されたトポロジーレコードに含まれているコピーグループのうち、リモートコピーペアを有するコピーグループ(これを「リモートコピーグループ」と呼ぶ)を抽出し、それらのコピーグループの状態を集約し、結果をトポロジーレコードのCopy Status(remote)805に格納する。この処理の詳細は後述する(図15)。集約されたコピーグループの状態がCopy Status(remote)805に格納された後、ストレージ管理プログラムはAlert806への情報設定を行う。この処理は、S1003やS1405と同様である。たとえばストレージ管理プログラムは、Copy Status(local)804またはCopy Status(remote)805が特定の状態(たとえば“3”)だった場合、Alert806に“1”を格納し、それ以外の場合にはAlert806に“0”を格納する。
 S1604:トポロジー情報800内に全てのトポロジーレコードについて処理が完了している場合には(S1604:YES)処理は終了する。未処理のトポロジーレコードが残っている場合(S1604:NO)、ストレージ管理プログラムは再びS1601から処理を実行する。
 S1603の処理、つまりトポロジー内のリモートコピーグループの状態の集約方法について説明する。リモートコピーグループの状態の集約方法は、コピーグループ内のコピーペア状態の集約方法と類似しており、トポロジー内のリモートコピーグループのうち、最も優先度の高い状態をリモートコピーグループの状態が、トポロジーレコードのCopy Status(remote)805に格納される。コピーグループの状態の優先度は、コピーペア状態の優先度とほとんど同じである。
(1) error
(2) (差分コピーグループ以外のコピーグループの状態が)suspend
(3) copying
(4) sync
(5) simplex
(6) (差分コピーグループの状態が)suspend
(7) unknown
 つまりリモートコピーグループの状態の集約が行われる際、リモートコピーグループが差分コピーグループであるか否かによって、集約結果が異なる。図15を用いてリモートコピーグループのコピー状態の集約方法を説明する。図15の処理は多くの部分で図14の処理と同じである。S2001’、S2007’、S2009’、S2011’の判定は、図14のS2001、S2007、S2009、S2011の判定処理と殆ど同じである。ただし図14の各判定では、コピーグループに属する各ペアのコピー状態について判定が行われるのに対し、図15のS2001’、S2007’、S2009’、S2011’の判定では、各リモートコピーグループの状態(つまりCopy Status755)を参照することで判定が行われる。
 また、S2002’、S2006’、S2008’、S2010’、S2012’、S2013’の処理は図14のS2002、S2006、S2008、S2010、S2012、S2013とほとんど同じだが、図15の処理では、Copy Status755に結果を格納する代わりに、トポロジー情報800のCopy Status(remote)805に結果を格納する点が異なる。
 また図15の処理では、リモートコピーグループの中にSuspend状態のリモートコピーグループが存在する場合(S2003’:YES)、図14の処理とは異なった判定が行われる。以下では主に、S2003’~S2006’について説明する。
 リモートコピーグループの中にSuspend状態のリモートコピーグループが存在する場合(S2003’:YES)、ストレージ管理プログラムは、リモートコピーグループの中に差分コピーグループが存在するか判定する(S2004’)。この処理では以下のような判定が行われる。
 ストレージ管理プログラムは処理対象のコピートポロジーの中に、以下の条件(条件1及び条件2)を満たすリモートコピーペア(これを「コピーペアA」と呼ぶ)を有するコピーグループが存在するか判定する。
 (条件1) コピーペアAのP-VOLをS-VOLとするコピーペアで、かつそのコピーペアが同期リモートコピーペアである。
なお、以下では条件1に該当するコピーペアのことを「コピーペアB」と呼ぶ。
 (条件2) コピーペアAのS-VOLをS-VOLとし、コピーペアBのP-VOLをP-VOLとするコピーペアが存在する。
 図5の例を参照しながら説明する。先に述べたとおり、ボリューム131’及び132’で構成されるコピーペアは同期リモートコピーペアで、ボリューム131’及び134’で構成されるコピーペアは非同期リモートコピーペアである。またボリューム132’及び134’も、リモートコピーペアである。
 ボリューム132’及び134’で構成されるコピーペア(これを以下では「ペアA」と呼ぶ)を有するコピーグループ(CTG125’)は、ボリューム131’及び132’で構成される同期リモートコピーペアのS-VOL(ボリューム132’)をP-VOLとして運用される(つまり条件1に合致する)。そしてボリューム131’及び134’で構成されるコピーペアは、ペアAのS-VOL(ボリューム134’)をS-VOLとし、ボリューム131’及び132’で構成されるコピーペアのP-VOL(ボリューム131’)をP-VOLとして運用される(つまり条件2に合致する)。そのため、上で述べた条件1及び条件2を満たすリモートコピーペアを特定することで、差分コピーペア(または差分コピーグループ)を特定することができる。
 なお、ここでは条件1,2を満たすコピーペアの有無を判定する例を説明したが、コピーペアの代わりに条件1,2を満たすコピーグループの有無が判定されてもよい。
 S2004’において、差分コピーグループがないと判定された場合(S2004’:NO)、S2006’が行われる(トポロジー情報800のCopy Status(remote)805に“2”が格納される)。一方差分コピーグループがある場合(S2004’:YES)、次にストレージ管理プログラムは、S2004’で特定された差分コピーグループ以外のコピーグループの状態(Copy Status755)がすべて“5”(Unknown)か判定する(S2005’)。
 S2004’で特定された差分コピーグループ以外のコピーグループの状態(Copy Status755)がすべて“5”の場合には(S2005’:YES)、S2006’が行われる。もし状態(Copy Status755)が“5”でないコピーグループが含まれている場合には(S2005’:NO)、S2007’以降の処理が行われる。S2007’以降の処理は、図14のS2007以降の処理と同様であるため、ここでの説明は略す。
 “Suspend”状態の差分コピーグループが含まれる場合だけ、集約方法が異なる理由を以下に説明する。図5の説明でも述べたとおり、差分コピーグループは通常、Suspend状態で運用される。つまり、差分コピーグループ以外のコピーグループの状態は通常(たとえばsync状態)で、差分コピーグループだけがSuspend状態であれば、そのコピートポロジーは通常の運用状態(障害などの発生していない状態)といえる。そのため、差分コピーグループ以外のリモートコピーグループがSuspend状態であれば(S2004’:NO)、トポロジー情報800のCopy Status(remote)805は“2”(Suspend)に設定されるが、差分コピーグループだけがSuspend状態で、その他のコピーグループの状態が通常の状態(“Unknown”以外の状態)であれば(S2004’:YES,かつS2005’:NO)、ストレージ管理プログラムは差分コピーグループの状態がCopy Status(remote)805に反映されないようにしている。
 以上、本発明の実施例を説明したが、これは、本発明の説明のための例示であって、本発明の範囲をこれらの実施例にのみ限定する趣旨ではない。すなわち、本発明は、他の種々の形態でも実施する事が可能である。
 たとえば上で説明した実施例では、アプリケーションサーバとは別に管理サーバ1が設けられ、ストレージ管理プログラムが管理サーバ1で実行される構成が説明された。しかし別の実施形態として、管理サーバ1を設ける代わりに、複数のアプリケーションサーバのうちいずれかのアプリケーションサーバでストレージ管理プログラムが実行されるようにしてもよい。
1:管理サーバ
2,3,4:アプリケーションサーバ
6:LAN
7:SAN
10(10-0,10-1,10-2,10-3):ストレージ装置

Claims (15)

  1.  プライマリボリュームと、前記プライマリボリュームの複製が格納されるセカンダリボリュームで構成されるコピーペアを複数有するストレージシステムと、前記ストレージシステムの管理を行う管理サーバと、を有する計算機システムにおいて、
     前記管理サーバが、
     1) 前記ストレージシステムから前記コピーペアの情報を収集し、
     2) 前記コピーペアの情報を用いて、前記コピーペアに属するボリュームのうち、いずれのコピーペアのセカンダリボリュームではないボリュームであるルートボリュームを特定し、
     3) 前記コピーペアの情報を用いて、前記ルートボリュームの複製が格納される全てのボリュームをすべて特定し、
     4) 前記ルートボリューム、及び前記ルートボリュームの複製が格納される全てのボリュームの集合であるトポロジーを定義する、
    工程を実行する、ストレージシステムの管理方法。
  2.  前記管理サーバが前記4)の後、
     5) 前記トポロジーに含まれる全ての前記コピーペアのステータスを集約し、前記集約されたステータスを前記トポロジーのステータスとしてユーザに通知する、
    工程を実行する、請求項1に記載のストレージシステムの管理方法。
  3.  前記コピーペアの情報のそれぞれには、少なくとも前記コピーペアに属するプライマリボリューム及びセカンダリボリュームの識別子と、前記コピーペアのステータスが含まれており、
     前記ステータスは、
     プライマリボリュームからセカンダリボリュームへのデータコピーが正常に行われている第1状態、
     障害によりプライマリボリュームからセカンダリボリュームへのデータコピーができなくなった第2状態、
     ユーザからの指示によりプライマリボリュームからセカンダリボリュームへのデータコピーが中断された第3状態、
    のいずれかが含まれ、
     前記ステータスは、前記第1状態が最も優先度の低い状態で、前記第3状態が最も優先度の高い状態である、
    請求項2に記載のストレージシステムの管理方法。
  4.  前記5)で前記管理サーバは、
     前記トポロジーに含まれる全ての前記コピーペアのステータスのうち、最も優先度の高い状態を有する前記コピーペアのステータスを、前記集約されたステータスと決定する、
    請求項3に記載のストレージシステムの管理方法。
  5.  前記ストレージシステムは、第1ボリュームを有する第1ストレージ装置、第2ボリュームを有する第2ストレージ装置、第3ボリュームを有する第3ストレージ装置を含み、
     前記ストレージシステムは、前記第1ボリュームと前記第2ボリュームを第1コピーペアとし、前記第1ボリュームと前記第3ボリュームを第2コピーペアとし、前記第2ボリュームと前記第3ボリュームを第3コピーペアとして構成し、
     前記第1コピーペアは、前記第1ボリュームのデータを同期型リモートコピーにより前記第2ボリュームに複製し、前記第2コピーペアは、前記第1ボリュームのデータを非同期型リモートコピーにより前記第3ボリュームに複製するよう構成されており、
     前記管理サーバは、
     前記4)で、前記第1コピーペアと前記第2コピーペアと前記第3コピーペアで構成されるトポロジーを定義し、
     前記5)で、前記第1コピーペア及び第2コピーペアが前記第1状態で、前記第3コピーペアが前記第3状態にある時、前記トポロジーのステータスが前記第1状態であるとユーザに通知する、
    請求項3に記載のストレージシステムの管理方法。
  6.  前記1)で、収集した前記コピーペアの情報から、コピー方向が反転された前記コピーペアが見つかった場合、前記管理サーバは、
     前記コピーペアの情報を、コピー方向反転前のコピーペアの情報を生成し、前記生成されたコピー方向反転前のコピーペアの情報に基づいて、前記2)から4)の工程を実行する、
    請求項1に記載のストレージシステムの管理方法。
  7.  前記管理サーバは、前記トポロジーごとに一意な識別子を付して管理しており、
    前記コピーペアの状態が変更された時、前記管理サーバが、
     6) 前記1)~前記4)を実行することで、前記トポロジーの再定義を行い、
     7) 前記再定義されたトポロジーが、再定義前のトポロジーに含まれていたルートボリュームと同じボリュームを含む場合、前記再定義されたトポロジーに、前記再定義前のトポロジーの識別子を付す、
    請求項1に記載のストレージシステムの管理方法。
  8.  プライマリボリュームと、前記プライマリボリュームの複製が格納されるセカンダリボリュームで構成されるコピーペアを複数有するストレージシステムと、
     前記ストレージシステムの管理を行う管理サーバと、を有し、
     前記管理サーバは、
     1) 前記ストレージシステムから前記コピーペアの情報を収集し、
     2) 前記コピーペアの情報を用いて、前記コピーペアに属するボリュームのうち、いずれのコピーペアのセカンダリボリュームではないボリュームであるルートボリュームを特定し、
     3) 前記コピーペアの情報を用いて、前記ルートボリュームの複製が格納される全てのボリュームをすべて特定し、
     4) 前記ルートボリューム、及び前記ルートボリュームの複製が格納される全てのボリュームの集合であるトポロジーを定義する、
    工程を実行する、計算機システム。
  9.  前記管理サーバが前記4)の後、
     5) 前記トポロジーに含まれる全ての前記コピーペアのステータスを集約し、前記集約されたステータスを前記トポロジーのステータスとしてユーザに通知する、
    工程を実行する、請求項8に記載の計算機システム。
  10.  前記コピーペアの情報のそれぞれには、少なくとも前記コピーペアに属するプライマリボリューム及びセカンダリボリュームの識別子と、前記コピーペアのステータスが含まれており、
     前記ステータスは、
     プライマリボリュームからセカンダリボリュームへのデータコピーが正常に行われている第1状態、
     障害によりプライマリボリュームからセカンダリボリュームへのデータコピーができなくなった第2状態、
     ユーザからの指示によりプライマリボリュームからセカンダリボリュームへのデータコピーが中断された第3状態、
    のいずれかが含まれ、
     前記ステータスは、前記第1状態が最も優先度の低い状態で、前記第3状態が最も優先度の高い状態である、
    請求項9に記載の計算機システム。
  11.  前記5)で前記管理サーバは、
     前記トポロジーに含まれる全ての前記コピーペアのステータスのうち、最も優先度の高い状態を有する前記コピーペアのステータスを、前記集約されたステータスと決定する、
    請求項10に記載の計算機システム。
  12.  前記ストレージシステムは、第1ボリュームを有する第1ストレージ装置、第2ボリュームを有する第2ストレージ装置、第3ボリュームを有する第3ストレージ装置を含み、
     前記ストレージシステムは、前記第1ボリュームと前記第2ボリュームを第1コピーペアとし、前記第1ボリュームと前記第3ボリュームを第2コピーペアとし、前記第2ボリュームと前記第3ボリュームを第3コピーペアとして構成し、
     前記第1コピーペアは、前記第1ボリュームのデータを同期型リモートコピーにより前記第2ボリュームに複製し、前記第2コピーペアは、前記第1ボリュームのデータを非同期型リモートコピーにより前記第3ボリュームに複製するよう構成されており、
     前記管理サーバは、
     前記4)で、前記第1コピーペアと前記第2コピーペアと前記第3コピーペアで構成される構成されるトポロジーを定義し、
     前記5)で、前記第1コピーペア及び第2コピーペアが前記第1状態で、前記第3コピーペアが前記第3状態にある時、前記トポロジーのステータスが前記第1状態であるとユーザに通知する、
    請求項10に記載の計算機システム。
  13.  前記1)で、収集した前記コピーペアの情報から、コピー方向が反転された前記コピーペアが見つかった場合、前記管理サーバは、
     前記コピーペアの情報を、コピー方向反転前のコピーペアの情報を生成し、前記生成されたコピー方向反転前のコピーペアの情報に基づいて、前記2)から4)の工程を実行する、
    請求項8に記載の計算機システム。
  14.  前記管理サーバは、前記トポロジーごとに一意な識別子を付して管理しており、
    前記コピーペアの状態が変更された時、前記管理サーバが、
     6) 前記1)~前記4)を実行することで、前記トポロジーの再定義を行い、
     7) 前記再定義されたトポロジーが、再定義前のトポロジーに含まれていたルートボリュームと同じボリュームを含む場合、前記再定義されたトポロジーに、前記再定義前のトポロジーの識別子を付す、
    請求項8に記載の計算機システム。
  15.  プライマリボリュームと、前記プライマリボリュームの複製が格納されるセカンダリボリュームで構成されるコピーペアを複数有するストレージシステムの管理を行う管理サーバのプロセッサに、
     1) 前記ストレージシステムから前記コピーペアの情報を収集し、
     2) 前記コピーペアの情報を用いて、前記コピーペアに属するボリュームのうち、いずれのコピーペアのセカンダリボリュームではないボリュームであるルートボリュームを特定し、
     3) 前記コピーペアの情報を用いて、前記ルートボリュームの複製が格納される全てのボリュームをすべて特定し、
     4) 前記ルートボリューム、及び前記ルートボリュームの複製が格納される全てのボリュームの集合であるトポロジーを定義する、
    工程を実行させる、プログラムが記録された記憶媒体。
PCT/JP2016/055441 2016-02-24 2016-02-24 ストレージシステムの管理方法 WO2017145286A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/055441 WO2017145286A1 (ja) 2016-02-24 2016-02-24 ストレージシステムの管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/055441 WO2017145286A1 (ja) 2016-02-24 2016-02-24 ストレージシステムの管理方法

Publications (1)

Publication Number Publication Date
WO2017145286A1 true WO2017145286A1 (ja) 2017-08-31

Family

ID=59685962

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/055441 WO2017145286A1 (ja) 2016-02-24 2016-02-24 ストレージシステムの管理方法

Country Status (1)

Country Link
WO (1) WO2017145286A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006134164A (ja) * 2004-11-08 2006-05-25 Hitachi Ltd ストレージシステムの管理方法
JP2008293433A (ja) * 2007-05-28 2008-12-04 Hitachi Ltd ストレージシステム及びストレージシステム管理方法
JP2011081467A (ja) * 2009-10-05 2011-04-21 Hitachi Ltd 記憶装置のデータ移行制御方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006134164A (ja) * 2004-11-08 2006-05-25 Hitachi Ltd ストレージシステムの管理方法
JP2008293433A (ja) * 2007-05-28 2008-12-04 Hitachi Ltd ストレージシステム及びストレージシステム管理方法
JP2011081467A (ja) * 2009-10-05 2011-04-21 Hitachi Ltd 記憶装置のデータ移行制御方法

Similar Documents

Publication Publication Date Title
US9405590B2 (en) Method, apparatus, and system for issuing partition balancing subtask
US8448167B2 (en) Storage system, and remote copy control method therefor
JP5137476B2 (ja) 連携して動作する複数のアプリケーションが使用するデータのバックアップ環境の設定を行う計算機及び方法
US7725776B2 (en) Method for displaying pair state of copy pairs
US7254684B2 (en) Data duplication control method
JP4327831B2 (ja) ストレージシステム、管理計算機及びコピーペア監視方法
JP5968554B2 (ja) ディザスタリカバリ仮想化の方法及び装置
JP2004334574A (ja) ストレージの運用管理プログラム、運用管理方法及び管理計算機
US7596658B2 (en) Method for expanding capacity of replication volume
US20060031647A1 (en) Storage system and data processing system
US20100223428A1 (en) Snapshot reset method and apparatus
WO2014083598A1 (en) Hierarchical storage system and file management method
US7908510B2 (en) Storage system and method of designing disaster recovery constitution
JP2010079391A (ja) レプリケーション環境構築方法およびストレージシステム
JP2009266015A (ja) ストレージシステム及びその監視条件変更方法
US10747624B2 (en) Storage system and control method of storage system using asynchronous remote copying to backup volume at specific time points
JP2007047892A (ja) 計算機システム及び計算機システムの状態管理方法
JP2007241486A (ja) 記憶装置システム
JP2003015933A (ja) 記憶装置のファイルレベルリモートコピー方法
JP6227771B2 (ja) 論理ボリュームを管理するためのシステム及び方法
US10671482B2 (en) Providing consistency in a distributed data store
WO2015145680A1 (ja) 管理計算機、及び計算機システム
JP2009116474A (ja) ストレージシステムおよびストレージサブシステム
JP2009151677A (ja) ストレージ制御装置、ストレージ制御プログラムおよびストレージ制御方法
US20080294858A1 (en) Storage system and data management method

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

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

Ref document number: 16891443

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 16891443

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP