Patent Publication Number: US-2009228672-A1

Title: Remote copy system and check method

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application relates to and claims priority from Japanese Patent Application No. JP2008-059776, filed on Mar. 10, 2008, the entire disclosure of which is incorporated herein by reference. 
     BACKGROUND 
     1. Field of the Invention 
     The present invention relates to a remote copy system in which data consistency is required and a check method, and is particularly suited for use in a technique for copying common data plural times. 
     2. Description of Related Art 
     Recently, a remote copy, in which a storage apparatus is located in a position remote from a certain storage apparatus and a copy for data stored in the certain storage apparatus is stored in the remotely-located storage apparatus, has been known. 
     In the storage apparatuses used in the remote copy system, a logical volume (hereinafter referred to as a volume) is formed in a storage area provided by a hard disk. Data from a host computer (a host system) is stored in this volume. With a volume in the certain storage apparatus serving as a copy-source volume, copy data is stored in a copy-destination volume in the remotely-installed storage apparatus. 
     Reference 1 (JP2007-220112 A) discloses a technique capable of checking the copy-destination volume that has been set as a paired volume for the copy-source volume, in which data has been lost due to a failure or the like in a certain storage apparatus, and switching to the copy-destination volume to have it serve as the copy-source volume. 
     In the remote system, the storage apparatuses include a command device for processing a control command from the host computer. The command device is a dedicated volume or software used by the storage apparatus to exchange control commands with the host computer. When the host computer writes data (a control command) in the command device provided in the storage apparatus, the storage apparatus processes the control command stored in the command device. 
     Reference 2 (JP2007-140601 A) discloses a technique using this command device. In the technique in reference 2, a host computer connected to a first storage apparatus can issue a control command to be processed to a second storage apparatus that is connected to the first storage apparatus without the need for providing a host computer connecting to the second storage apparatus. 
     In recent remote copy systems, copy from the copy-source volume to the copy-destination volume is performed more than once, like in the technique disclosed in reference 1. In many of the recent remote copy systems, common data is copied plural times from the copy-source volume to the copy-destination volume and from the copy-destination volume to a subsequent copy-destination volume. 
     However, in such cases, the remote copy system has to stop data handling in the copy-source volume, perform data copy between the copy-destination volume and the subsequent copy-destination volume, stop copy between the copy-destination volume and the subsequent copy-destination volume and temporarily interrupt the communication between the volumes (hereinafter referred to as “partition”, and this causes a problem—an administrator, having commanded the copying, has to check with each of the storage apparatuses if the data in each pair of data volumes between which data copy has been performed plural times is consistent, and manually check the path for data copy. 
     SUMMARY 
     It light of the above circumstances, it is an object of this invention to propose a remote copy system and a check method capable of reducing the manual work of checking the operation of a storage apparatus performed by an administrator, and of managing continuous data copy. 
     In order to achieve the object, provided according to an aspect of this invention is a remote copy system that includes at least: a host system; 
     a first storage apparatus connected to the host system so as to enable communication therebetween; and a second storage apparatus connected to the first storage apparatus so as to enable communication therebetween, in which the first storage apparatus and second storage apparatus each include: a logical device in which a control command from the host system is written; one or more logical volumes that are provided by storage areas in plural hard disks and store data; and pair information regarding pairs formed from the plural logical volumes, and the remote system further includes a check unit that checks based on the pair information, when the control command from the host computer is written in each logical device, a copy path from a logical volume designated as a start point by the host system to a final logical volume in which data same as that in the start point logical volume is stored. 
     Accordingly, the administrator will not need to manually check the copy path any longer. Also, the remote copy system can integrally check the copy path. 
     Provided according to another aspect of this invention is a check method for a remote copy system that includes at least: a host system; a first storage apparatus connected to the host system so as to enable communication therebetween; and a second storage apparatus connected to the first storage apparatus so as to enable communication therebetween, the method comprising the steps of: the first storage apparatus and second storage apparatus having a control command from the host system written in a logical device, storing data in one or more logical volumes provided by storage areas in plural hard disks, and managing pair information regarding pairs formed from the plural logical volumes; and the remote system comprising a check step of checking, when the control command from the host computer is written in each logical device, a copy path from a logical volume designated as a start point by the host system to a final logical volume in which data same as that in the start point logical volume is stored, based on the pair information. 
     Accordingly, the administrator will not need to manually check the copy path any longer. Also, the remote copy system can integrally check the copy path. 
     This invention reduces the manual work of checking the operation of the storage apparatuses performed by the administrator and enables the remote copy system to integrally manage continuous data copy. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a block diagram showing the configuration of a remote copy system according to a first embodiment. 
         FIG. 2  is a block diagram showing the configuration of a storage apparatus according to the above first embodiment. 
         FIG. 3  is a table showing a command device table according to the above first embodiment. 
         FIG. 4  is a table showing a copy path table according to the above first embodiment. 
         FIG. 5  is a table showing a volume table according to the above first embodiment. 
         FIG. 6  is a table showing a copy pair table according to the above first embodiment. 
         FIG. 7  is a flowchart for check processing according to the above first embodiment. 
         FIG. 8  is an example of a screen in the check processing according to the above first embodiment. 
         FIG. 9  is an example of a screen in the check processing according to the above first embodiment. 
         FIG. 10  is an example of a screen in the check processing according to the above first embodiment. 
         FIG. 11  is a flowchart for check execution processing according to the above first embodiment. 
         FIG. 12  is a diagram explaining how a control command is processed in the storage apparatus according to the above first embodiment. 
         FIG. 13  is a diagram explaining how the control command is processed in the storage apparatus according to the above first embodiment. 
         FIG. 14  is a diagram explaining a modification in the above first embodiment. 
         FIG. 15  is a flowchart showing check recovery execution processing according to the above first embodiment. 
         FIG. 16  is a flowchart showing the check recovery execution processing according to the above first embodiment. 
         FIG. 17  is an example of a screen in the check recovery execution processing according to the above first embodiment. 
         FIG. 18  is a block diagram showing the configuration of a remote copy system according to a second embodiment. 
         FIG. 19  is a block diagram showing the content of a shared memory according to the above second embodiment. 
         FIG. 20  is a flowchart for check processing according to the above second embodiment. 
         FIG. 21  is a flowchart for check recovery execution processing according to the above second embodiment. 
         FIG. 22  is a flowchart for the check recovery execution processing according to the above second embodiment. 
         FIG. 23  is a diagram explaining access between agents according to the above second embodiment. 
         FIG. 24  is a diagram explaining access between the agents according to the above second embodiment. 
     
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     Embodiments of this invention will be described with reference to the attached drawings. 
     (1) First Embodiment 
     (1-1) System Configuration 
       FIG. 1  is a block diagram relating to the configuration of a remote copy system  1  according to a first embodiment of this invention. 
     In the remote copy system  1 , a host computer  2  is connected via a network  3  to each of a first storage apparatus  5 A installed in a first site, a second storage apparatus  5 B installed in a second site and a third storage apparatus  5 C installed in the third site. The first storage apparatus  5 A and the second storage apparatus  5 B are connected to each other via a copy network  4  and the second storage apparatus  5 B and the third storage apparatus are connected to each other via the copy network  4 . 
     The second site is located in a short or medium distance from the first site and the third site is located in a long distance from the first site. In the below description, the symbols A, B and C will be omitted except when there is the need to distinguish one storage apparatus  5  from the others. 
     The host computer  2  is a host system including information processing resources such as a CPU (not shown) and a memory  21 , and the host computer  2  may be a personal computer, work station, main frame, etc. The host computer  2  also includes: information input devices (not shown) such as a keyboard, switch, pointing device or microphone; and information output devices (not shown) such as a monitor display or speaker. The host computer  2  has installed software referred to as a RAID manager  22  (shown as “RM” in the drawings). 
     The RAID manager  22  is an agent for commanding the storage apparatuses  5  to execute controls such as commanding copy, handling pair relationships and retrieving the status of a volume Vol. 
     The memory  21  in the host computer  2  stores a command device table  210 , a copy path table  21   1 , a check program  212  and a check recovery program  213 . Each of the above tables will be described later. 
     The check program  212  is a program for checking a copy path via which common data is stored plural times, and it is executed by the RAID manager  22 . 
     The check recovery program  213  is a program for checking a copy path via which common data is stored plural of times, recovering, if the copy path is disconnected at a zone between certain volumes, the copy path, and copying the common data. The check recovery program  213  is executed by the RAID manager  22 . 
     The network  3  and the copy network  4  are each configured by, for example, a SAN (Storage Area Network), a LAN (Local Area Network), and the Internet, a public line or a private line. In this embodiment, the SAN is used as the network  3  and the copy network  4 , and the host computer  2  and each storage apparatus  5  communicate with each other based on a fibre channel protocol. 
     The configuration of the storage apparatuses  5  will be described with reference to  FIGS. 1 and 2 . The storage apparatus  5  includes a disk  7  configured from plural hard disks HDD and a controller  6  that manages the plural hard disks by a RAID (Redundant Array of Independent/inexpensive Disks) method. 
     The hard disks are each configured by an expensive disk such as SCSI (Small Computer System Interface) or an inexpensive disk such as SATA (Serial AT Attachment) or an optical disc. Volumes Vol are formed in storage areas provided by the hard disks. 
     The controller  6  includes plural channel adapters  60 , a connector  61 , a shared memory  62 , a cache memory  63  and plural disk adapters  64 . 
     Each channel adapter  60  is configured as a microcomputer system having a microprocessor  600 , a memory  601  and a communication interface, and includes a port (not shown) for connecting itself to the network  3 . Each channel adapter  60  interprets various commands transmitted from the host computer  2  and performs required processing. The port in each channel adapter  60  is assigned a network address (e.g., an IP address and WWN) for identifying the relevant channel adapter  60  and this enables each channel adapter  6  to serve as an individual NAS (Network Attached Storage.) In this embodiment, an SCSI communication interface is used for communication with the raid manager  22 . 
     The memory  601  in each channel adapter  60  also includes a command device CMD. When a control command from the host computer  2  is written in the command device, the microprocessor  600  in the channel adapter  60  processes the control command stored in the command device. 
     The connector  61  is also connected to the shared memory  62 , the cache memory  63  and the disk adapter  64 , in addition to the channel adapter  60  described above. Data or commands are exchanged between the channel adapter, the shared memory  62 , the cache memory  63  and the disk adapter  64  via the connector. The connector may be configured by a switch or a bus—for example, an ultra-high-speed cross bus switch for performing data transmission by high-speed witching. 
     The shared memory  62  is a storage memory shared by the channel adapters  60  and the disk adapters  64 . The shared memory  62  is mainly used for storing system configuration information and various control programs read from the volumes Vol when the storage apparatus  5  is turned on and for storing commands from the host computer  2 . The shared memory  62  stores a volume table  620 , a copy pair table  621  and a copy program  622  for performing data copy. The volume table  620  and the copy pair table  621  stored in the shared memory  62  will be described later. 
     The cache memory  63  is also shared by the channel adapters  60  and the disk adapters  64 . The cache memory  63  is used mainly for temporarily storing user data input to or output from the storage apparatus  5 . 
     Each disk adapter  64  is configured as a microcomputer system having a microprocessor (not shown) and memory (not shown), and serves as an interface for providing protocol control when communicating with the disk  7 . 
     (1-2) Configuration of Tables 
     Next, the tables  210  and  211  held in the host computer  2  and the tables  620  and  621  held in each storage apparatus  5  will be described below. 
     (1-2-1) Command Device Table 
     The command device table  210  is a table held in the memory  21  in the host computer  2  and manages an order for issuing check commands to the plural command devices to check a copy path for common data. 
     As shown in  FIG. 3 , the command device table  210  includes a “command device number” field  2100 , a “next pointer” field  2101 , a “device name” field  2102  and a “storage apparatus manufacturing number” field  2103 . 
     The “command device number” field  2100  shows an identifier assigned in the host computer  2  so that the host computer  2  can identify each command device in each storage apparatus  5 . 
     The “next pointer” field  2101  shows a pointer value that indicates the next table address used for checking the copy path. For example, as shown in  FIG. 3 , the pointer “0x9f9a80” shows command device information in a second row as the next table address. Likewise, the pointer “0x9f9e78” shows command device information as the next table address. The pointer “0” indicates there is no next table address. 
     The “device name” field  2102  shows a file name for the command device corresponding to the command device number. In other words, the RAID manager  22  in the host computer  2  writes a control command in the specified file. 
     The “storage apparatus manufacturing number” field  2103  shows the manufacturing number of the storage apparatus  5  having the relevant command device. 
     (1-2-2) Copy Path Table 
     The copy path table  211  is held in the memory in the host computer  2  and manages check results of the copy path check for the common data. The copy path table  211  is created every time the copy path is checked. 
     As shown in  FIG. 4 , the copy path table  211  includes a “next pointer” field  2110 , a “storage apparatus manufacturing number” field  2111  and a “volume number” field  2112 . 
     The “next pointer” field  2110  shows a pointer value indicating the next table address showing the copy path. For example, as shown in  FIG. 4 , the pointer “0x8f9a80” indicates the copy path information in the second row as the next table address. The pointer “0” indicates that there is no table address. 
     The “storage apparatus manufacturing number” field  2111  shows the manufacturing number of the storage apparatus  5  providing a volume Vol in which the common data is stored. 
     The “volume number” field  2112  shows the volume number of the volume in which the common data is stored. 
     The example of the table  211  in  FIG. 4  shows that the volume with the number “2830” assigned, the volume with the number “2233” assigned and the volume with the number “90” assigned constitute a volume group in which common data is stored as a result of data copy performed plural times. Accordingly, this example shows that the volume from which the copy is started is the volume having the number “2830” and the volume at which the copy is terminated is the volume having the number “90.” 
     (1-2-3) Volume Table 
     The volume table  620  is a table held in the shared memory  62  in each storage apparatus  5  and manages volumes provided by each storage apparatus  5 . 
     The volume table  620  includes a “volume number” field  6200  showing an identification number assigned to each volume provided by the storage apparatus  5  and a “status” field  6201  showing the status of the relevant volume Vol. 
     In the example shown in the table  620  in  FIG. 5 , the volume “0” stores information “SIMPLEX” indicating that this volume is not a target for a copy pair, and the volume “2830” stores information “REMOTE COPY IN PROGRESS” indicating that a remote copy is now in progress. 
     (1-2-4) Copy Pair Table 
     The copy pair table  621  is a table held in the shared memory  62  in each storage apparatus  5  and manages paired volumes. 
     The copy pair table  621  includes a “volume number” field  6210  showing a copy-source volume Vol, a “status” field  6211 , a “copy-destination storage apparatus manufacturing number” field  6212  showing a copy-destination storage apparatus and the “copy-destination volume number” field  6213  showing a copy-destination volume. 
     In the example of the table  621  shown in  FIG. 6 , the “status” field  6211  stores pair-setting information for the copy-source volume and the copy-destination volume Vol. Once the copy-destination volume is determined and the pair is set between the copy-source volume and this copy-destination volume, the information “PAIR” is stored. 
     (1-3) Check Processing 
     Next, processing in which the host computer  2  checks a copy path using the above tables will be described. The check processing is executed by the RAID manager  22  in the host computer  2  in accordance with the check program  212 . 
     For convenience of explanation, the below description will be provided on the premise that a storage apparatus as a check target is that the first storage apparatus  5 A, a check target volume is a copy-source volume included in the first storage apparatus  5 A, a copy-destination volume is included in the second storage apparatus  5 B and a subsequent copy-destination volume is included in the third storage apparatus  5 C. 
       FIG. 7  is a flowchart showing the check processing. First the RAID manager  22  refers to the command device table  210  and issues to the check target storage apparatus  5 A a retrieval command for retrieving the manufacturing number of that storage apparatus and the number of the copy-source, and starts the check processing (S 1 ). 
     Next, the RAID manager  22  retrieves information about the check target storage apparatus  5 A manufacturing number and the copy-source volume number from this storage apparatus  5 A (S 2 ) 
     The RAID manager  22  then performs check execution processing for checking a copy path from the copy-source volume as a start point to the copy-destination volume in which copied data is finally stored (S 3 ). This check execution processing will be described later in detail. 
     If the result of the check processing is not an error and the RAID manager  22  can retrieve information about the copy-destination volume as a final destination (S 4 : No), the RAID manager  22  judges whether or not the retrieved last volume can be set as the final destination (S 5 ). 
     If the retrieved last volume can be set as the final destination (S 5 : Yes), the RAID manager  22  Vol terminates the check processing normally (S 7 ). 
     When the check processing is terminated normally, the RAID manager  22  registers the check result in the copy path table  211 . 
     On the other hand, if the RAID manager  22  determines that the retrieved last volume cannot be set as the final destination (S 5 : No), the check processing ends with an error (S 6 ). 
     In step S 4 , if an error result is obtained as the execution result of the check processing (S 4 : Yes), the RAID manager  22  terminates the check processing as an error (S 6 ). 
     Here, the administrator can check the execution result of the check processing on a screen of the host computer  2 . 
       FIG. 8  shows a screen S 1  displayed when the information regarding the final copy-destination volume can be retrieved in step S 4 . The screen S 1  shows, as a result of the check of the copy path for the volume number “2830” in the storage apparatus manufacturing number “65321”, that the first copy destination is the volume with the volume number “2233” in the storage apparatus with the manufacturing number “65542,” the subsequent copy-destination is the volume with the volume number “12” in the storage apparatus with the manufacturing number “8321” and the final copy-destination is the volume with the volume number “90” in the storage apparatus with the manufacturing number “8321.” 
       FIG. 9  shows a screen S 2  displayed when the information regarding the final copy-destination volume cannot be retrieved in step S 4 . This screen S 2  shows that, as a result of the copy path check for the volume number “2830” in the storage apparatus manufacturing number “65321,” the copied data is not stored in the final copy destination—the volume with the volume number “90” in the storage apparatus with the manufacturing number “8321”—and that an error has occurred. 
       FIG. 10  shows a screen S 3  displayed when the RAID manager  22  checks that the last retrieved volume Vol is set as the final destination in step S 5 . The screen S 3  shows that the start point copy source is the volume with the volume number “2830” in the storage apparatus with the manufacturing number “65321” and when the volume with the volume number “90” in the storage apparatus with the manufacturing number “8321” is set as the final copy destination, the copy path is formed properly. Since the content of this copy path is the same as that of the copy path described with reference to the screen in  FIG. 8 , its description will be omitted. 
     (1-4) Check Execution Processing 
     Next, the check execution processing in step S 3  will be described. This check execution processing is also performed by the RAID manager  22  in the host computer  2  in accordance with the check program  212 . Copy between volumes is performed in accordance with the copy program  622  in the channel adapter  60  when a control command containing a copy command is written in the command device. 
     As shown in  FIG. 11 , first, when retrieving the information about the storage apparatus  5 A manufacturing number and the copy-source volume number from the check target storage apparatus  5 A, the RAID manager  22  starts the check execution processing (S 10 ). 
     Next, if the retrieved storage apparatus  5 A is connected to the host computer  2  and is available (S 11 : YES), the RAID manager  22  issues a retrieval command for pair information regarding the retrieved volume number. Then the check-target storage apparatus  5 A refers to the copy pair table  621  and transmits the pair information regarding the retrieved volume number to the host computer  2 . 
     When receiving the pair information from the check target storage apparatus  5 A (S 13 ), the RAID manager  22  judges if there is a volume having been set as a pair partner for the retrieved volume number (S 14 ). 
     If it is determined that there is no set paired volume for the retrieved volume number based on the pair information (S 14 : No), the RAID manager  22  retrieves the retrieved current volume as the final destination (S 15 ) and terminates the check execution processing (S 22 ). 
     On the other hand, if it is determined, based on the pair information, that there is a volume set as a paired volume for the retrieved volume number (S 14 : Yes), the RAID manager  22  checks if the copy has been completed (S 16 ). Specifically, the RAID manager  22  issues a retrieval request for copy information to the check target storage apparatus  5 A. The check target storage apparatus  5 A receiving the copy information retrieval request refers to the volume table  620  and transmits the copy information regarding the check target volume number to the host computer  2 . 
     If it is determined that the copy has not been completed based on the copy information (S 16 : No), the RAID manager  22  stands by until the copy is complete (S 17 ) and then performs the processing in step S 18 . 
     On the other hand, if it is determined that the copy has been completed based on the copy information (S 16 : Yes), the RAID manager  22  retrieves the manufacturing number of the copy-destination storage apparatus and the number of the copy-destination volume (S 18 ). 
     Then the RAID manager  22  refers to the command device table  210  and if it is determined that the retrieved copy-destination volume number indicates the final volume from the retrieved storage apparatus manufacturing number (S 19 : Yes), the RAID manager  22  retrieves the copy-destination volume number as the final volume (S 21 ) and terminates the check execution processing (S 22 ). 
     On the other hand, if the RAID manager  22  referring to the command device table  210  determines that there is a next check target and the retrieved copy-destination volume number is not the final volume (S 19 : No), the RAID manager  22  retrieves from the command device table  210  a storage apparatus manufacturing number corresponding to the next command device (S 20 ). The RAID manager  22  performs the processing from steps S 11  to S 21  on the next check target storage apparatus  5 B, and repeats the check execution processing until the final volume is retrieved. Here, the RAID manager  22  issues a control command to the command device in the next check target storage apparatus  5 B. 
     In step S 11 , if the retrieved storage apparatus  5 A is not connected to the host computer  2  and is unavailable (S 11 : No), the RAID manager  22  terminates the processing as an error (S 12 ). 
     Next, the exchange of information between the host computer  2  and the check target storage apparatus  5 A will be described. Here, the “information” is information about the check target storage apparatus that the host computer  2  wants to retrieve, e.g., copy information and pair information. For convenience of explanation, the below description will describe an example where the pair information is retrieved, but the information retrieved is not limited to the pair information. 
     First, as shown in  FIG. 12 , the RAID manager  22  in the host computer  2  transmits pair information C 2 , which it desires to retrieve, together with a write command C 1  to the command device in the check target storage apparatus  5 A (P 1 ). 
     When receiving the write command C 1 , the check target storage apparatus  5 A writes the write command C 1  in the command device (P 2 ) and imports the desired pair information C 2  as command content directly in a local memory  601 A in a channel adapter  60 A (P 3 ). 
     Then a microprocessor  600 A in the channel adapter  60 A accesses a shared memory  62 A (P 4 ), fetches corresponding pair information I 1  from a copy pair table  621 A, and stores the fetched pair information I 1  in the local memory  601 A (P 5 ). 
     Then the channel adapter  60 A provides to the host computer  2  a status report indicating that the write command C 1  has been normally completed (P 6 ). 
     As shown in  FIG. 13 , the host computer  2  receiving the status report transmits a retrieval request C 4  for retrieving pair information stored in the local memory  601  A together with a read command C 3  to the command device in the check target storage apparatus  5 A (P 7 ). 
     When receiving the read command C 3 , the check target storage apparatus  5 A writes the read command C 3  in the command device (P 8 ) and imports the desired pair information C 4  as command content directly to the local memory  601 A in the channel adapter  60 A (P 9 ). 
     The microprocessor  600 A in the channel adapter  60 A transmits the pair information I 1  to the host computer  2  (P 10 ). 
     Then the channel adapter  60 A provides to the host computer  2  a status report indicating that the read command C 3  has been completed normally (P 11 ). 
     Next, a modification of this embodiment will be described. 
     As shown in  FIG. 14 , a remote copy system  10  in this modification has a configuration in which the first storage apparatus  5 A is connected to the host computer  2  while the second storage apparatus  5 B and the third storage apparatus  5 C are not connected to the host computer  2 . Each storage apparatus  5  further includes a remote command device RCMD. 
     The remote command device is, like the command device, a dedicated volume or software used by each storage apparatus  5  to communicate a control command with the host computer. When the host computer  2  writes data (a control command) in the remote command device provided in the first storage apparatus  5 A, the first storage apparatus  5 A processes the write command stored in the remote command device. At this time, the control command written in the remote command device is the control command transmitted to the second storage apparatus  5 B or the third storage apparatus  5 C. The remote command device transmits the control command from the host computer  2  to the second storage apparatus  5 B. 
     If the control command from the host computer  2  is the command transmitted to the second storage apparatus  5 B, the second storage apparatus  5 B writes this control command in its remote command device. On the other hand, if the control command from the host computer  2  is the control command transmitted to the third storage apparatus  5 C, the second storage apparatus  5 B writes this control command in its remote command device and also transmits it to the third storage apparatus  5 C. The third storage apparatus  5 C writes the control command in its command device and executes the processing in accordance with the content of the command. 
     The information retrieved by the second storage apparatus  5 B or the third storage apparatus  5 C is transmitted from the first storage apparatus  5 A to the host computer  2 . 
     With such a configuration, check processing for the copy path can be executed only by receiving a command from the host computer with only one storage apparatus, so a network environment can be simplified and the load on the entire remote copy system can be reduced. 
     As described above, in the check processing, the host computer transmits a control command to each storage apparatus, and each storage apparatus receiving this control command executes processing in accordance with the control command and transmits information stored in each storage apparatus to the host computer, so the host computer can integrally manage the storage apparatuses. This check processing provides a method capable of managing a copy path for data and checking a copy source and copy destination for the data. In addition, the check processing provides a method capable of checking the consistency of back up data. 
     (1-5) Check Recovery Processing 
     Next, check recovery processing for checking a copy path and recovering the copy path if a failure is found in the copy path while the host computer  2  is checking the copy path. 
     Here, examples of the failure in a copy path include when the copy path is physically disconnected and when the copy path is intentionally interrupted. 
     The following description will describe an example in which a failure occurs on a copy path between the second storage apparatus  5 B and the third storage apparatus  5 C. For convenience of explanation, the below description will be provided on the premise that the check target storage apparatus is the first storage apparatus  5 A, the check target volume is a copy-source volume in the first storage apparatus  5 A, a copy-destination volume Vol is included in the second storage apparatus  5 B, and a subsequent copy-destination volume is included in the third storage apparatus  5 C. 
     This check recovery processing is performed by the RAID manager  22  in the host computer  2  in accordance with the check recovery program  213 . 
     This check recovery processing is premised on a copy path for common data having been formed in the past. 
     First, the RAID manager  22  performs the check recovery processing in accordance with the processing procedure from steps S 1  to S 7  described with reference to  FIG. 7 . The check recovery processing is performed using the same procedure as that of the check processing described above, except step  3 . In step S 3 , the RAID manager  22  performs the check recovery execution processing. 
       FIGS. 15 and 16  show flowcharts for the check recovery execution processing. 
     When retrieving information about the storage apparatus manufacturing number and the copy-source volume number from the check target storage apparatus  5 A, the RAID manager  22  starts the check recovery execution processing (S 30 ). 
     Next, the RAID manage  22  performs the processing from steps S 31  to S 33  by the same procedure as in steps from S 11  to S 13 . 
     When receiving the pair information, the RAID manager  22  judges whether or not remote copy is currently in progress between the check target volume and the paired copy-destination volume (S 34 ), and if it is determined that the copy is not currently in progress (S 34 : No) the RAID manager  22  performs the processing from step S 54 . If the copy is not in progress, that means there is no pair including the check target volume as the start point. 
     When it is determined that the copy is not currently in progress between the check target volume and the paired copy-destination volume (S 34 : No), the RAID manager  22  transmits a control command to the command device in each of these volumes in order to judge whether or not these volumes are partitioned. 
     If it is determined that the check target volume and the copy-destination volume are partitioned, as a result of receiving partition information from the first storage apparatus  5 A and the second storage apparatus  5 B (S 54 : Yes), the RAID manager  22  transmits to the command device in each of the storage apparatuses a control command for copying data in the check target volume to the copy-destination volume. If a received copy result shows that the copy has been successfully completed (S 56 : No), the RAID manager  22  performs the processing from step S 58 . 
     On the other hand, the received copy result shows the copy has failed, (S 56 : Yes) the RAID manager terminates the processing as an error (S 57 ). 
     If it is determined that the copy is currently in progress between the check target volume and the paired copy-destination volume in step S 34  (S 34 : Yes), the RAID manager  22  judges whether or not the check target volume was the final volume in the copy path formed in the past (S 35 ). 
     If it is determined that the check target volume was the final volume in the past (S 35 : Yes), the RAID manager  22  retrieves the check target volume as a final destination (S 36 ), and terminates the check recovery execution processing (S 64 ). 
     On the other hand, if it is determined that the check target volume was not the final volume in the past (S 35 : No), the RAID manager  22  retrieves the manufacturing number of the copy-destination second storage apparatus and the number of copy-destination volumes from the pair information (S 37 ). 
     Then if the retrieved copy-destination second storage apparatus  5 B is connected to the host computer  2  and is available (S 38 : Yes), the RAID manager  22  extracts volume information for the retrieved copy-destination volume from a volume table  620 B and retrieves volume information from the command device in the second storage apparatus  5 B (S 40 ). 
     If it is determined that copy is not currently in progress between the copy-destination volume and the subsequent copy-destination volume from the retrieved volume information (S 41 : Yes), the RAID manager  22  transmits a control command for forming a pair between the check target volume and the copy-destination volume to the command device in each of the first storage apparatus  5 A and the second storage apparatus  5 B. 
     The first storage apparatus  5 A and the second storage apparatus  5 B form the pair based on the content of the command devices in which the control command has been written (S 42 ), and if a report indicating that the pair has been successfully formed is received from the storage apparatus (S 43 : No), the RAID manager  22  performs the processing from step S 54 . If a report indicating that the pair has not been successfully formed is received from the first storage apparatus  5 A and the second storage apparatus  5 B, the RAID manager  22  determines that there is a failure for which recovery processing cannot be performed and terminates this processing as an error (S 44 ). 
     If it is determined that the copy is in progress between the copy-destination volume and the subsequent copy-destination volume (S 41 : Yes), the RAID manager  22  transmits a control command for partitioning the copy path between these volumes to the command device (S 45 ). 
     When receiving a report indicating that the partition has been performed successfully from the second storage apparatus  5 B and the third storage apparatus  5 C (S 46 : No), the RAID manager  22  issues a control command for commanding the first storage apparatus  5 A and the second storage apparatus  5 B to form again the copy path between the check target volume and the copy-destination volume (S 48 ) and executes copy between these volumes. 
     When receiving a report indicating the copy has been performed successfully from the first storage apparatus  5 A and the second storage apparatus  5 B (S 49 : No), the RAID manager  22  issues a control command for commanding the second storage apparatus  5 B and the third storage apparatus  5 C to form again a copy path between the copy-destination volume and the subsequent copy-destination volume (S 51 ), and executes copy between these volumes. The recovery processing is performed in this step. 
     When receiving a report indicating that the copy has been performed successfully from the second storage apparatus  5 B and the third storage apparatus  5 C (S 52 : No), the RAID manager  22  performs processing from step S 58 . 
     On the other hand, when receiving a report indicating that the partition has not been performed successfully (S 46 : Yes), re-formation has not been performed successfully (S 49 : Yes) and the copy has not been performed successfully (S 52 : Yes) from the storage apparatuses, the RAID manager  22  judges there is a failure that cannot be recovered and terminates the processing as an error (S 47 , S 50  and S 53 ). 
     Then the RAID manager  22  performs the processing from step S 58  to step S 63  by the same procedure as in steps S 16  to S 21 , and terminates the check recovery execution processing (S 64 ). 
     Here, the administrator can check the execution result of the check recovery processing on a screen S 4  in the host computer  2 . 
       FIG. 17  is the screen S 4  on which the administrator checks whether or not common data has been successfully stored in the volumes up to the final copy-destination volume in step S 52 . The screen S 4  shows that, as a result of checking the recovery of the copy path starting from the volume with the volume number “2830” in the storage apparatus with the manufacturing number “65321,” the first copy-destination is the volume with the volume number “2233” in the storage apparatus with the manufacturing number “65542,” the subsequent copy-destination is the volume with the volume number “12” in the storage apparatus with the manufacturing number “8321” and the final copy-destination is the volume with the volume number “90” in the storage apparatus with the manufacturing number “8321.” 
     The screen S 4  shows that this copy path has been recovered in a zone between the subsequent copy-destination volume with the volume number “12” in the storage apparatus with the manufacturing number “8321” and the final copy-destination volume with the volume number “90” in the storage apparatus with the manufacturing number “8321” and that the common data has been stored in the volumes up to the final volume Vol. 
     As described above, the host computer transmits a control command to each storage apparatus and each storage apparatus receiving this control command executes the processing in accordance with the control command and transmits information stored in the relevant storage apparatus to the host computer, so the host computer can also integrally manage the check recovery processing. In addition, even if the copy path is disconnected for some reason, the copy path can be recovered and the common data can be stored in the volumes on the common copy path. This embodiment provides a method capable of managing the copy path of data and of checking the copy source and the copy destination of that data. In addition, this embodiment provides a method capable of checking the consistency of backup data. 
     (1-6) Advantage of First Embodiment 
     According to this embodiment, since the host computer performs the check processing and the check recovery processing, the manual work of checking the operation of the storage apparatuses performed by the administrator can be reduced and continuous data copy can be managed. 
     (2) Second Embodiment 
     A second embodiment of this invention will be described with reference to the attached drawings. 
     (2-1) System Configuration 
       FIG. 18  is a block diagram showing the configuration of a remote copy system  100  according to the second embodiment. 
     Although the check processing and the check recovery processing are performed in the host computer  2  in the first embodiment, the check processing and check recovery processing are performed by a check-target storage apparatus  5  in the second embodiment. 
     In the first embodiment, the command device retrieves information based on the content of the control command from the host computer  2  and transmits that information to the host computer  2 . However, in this embodiment, an agent  60 ′ performs processing based on the content of a control command from a host computer  2 ′. The agent  60 ′ is different from the command device in the first embodiment in that it can actually perform the check processing and the check recovery processing based on the content of the control command. Although the channel adapter  60  serves as the agent  60 ′ in this embodiment, the agent  60 ′ is not limited to the channel adapter  60  and the disk adapter  64  may also serve as the agent  60 . 
     As shown in  FIG. 19 , a shared memory  62 ′ in a storage apparatus  5 ′ in this embodiment stores a check recovery program  623 ′. Other components are the same as those in the first embodiment, so their description will be omitted. 
     (2-2) Check Processing 
     Next, processing in which the host computer′ checks a copy path will be described. The RAID manager  22  in the host computer  2 ′ performs the check processing in accordance with the check program  212 . 
     For convenience of explanation, the below description will be provided on the premise that a check target storage apparatus  5  is a first storage apparatus  5 Aα, a check target volume is a copy-source volume included in the first storage apparatus  5 αA, a copy-destination volume is included in a second storage apparatus  5 ′B, and a subsequent copy-destination volume is included in a third storage apparatus  5 ′C. 
       FIG. 20  is a flowchart showing the check processing. 
     First, the RAID manager  22  refers to the command device table  210  and issues a retrieval request for the manufacturing number of the check target storage apparatus  5 ′A and the copy-source volume number from the check target storage apparatus  5 ′A, and starts the check processing (S 70 ). 
     Then the RAID manager  22  retrieves the storage apparatus  5 ′A manufacturing number and the copy-source volume number from the check target storage apparatus  5 ′A (S 71 ). 
     The RAID manager  22  commands the first storage apparatus  5 ′A to perform the check recovery processing for checking a copy path from the start copy-source volume to the copy-destination volume in which the copy data is finally stored (S 72 ). This check recovery processing will be descried later. 
     When receiving the check recovery processing execution result (S 73 ), the RAID manager  22  performs the processing from steps S 74  to S 77  by the same procedure as that for the processing from steps S 4  to S 7 . 
     (2-3) Check Recovery Processing 
     The check execution processing in step S 72  will be described. The check execution processing will be performed by the agent  60 ′A in accordance with the check recovery program  623  and the copy program  622 . 
     First, as shown in  FIGS. 21 and 22 , when the agent  60 ′A receives a check recovery processing command from the RAID manager  22 , the agent  60 ′A in the first storage apparatus  5 ′A starts the check recovery processing (S 80 ). The check recovery processing command includes a command for checking a copy path starting from the start volume in the check target first storage apparatus  5 ′A and recovering the copy path if there is a failure on the copy path. 
     Next, if the check target first storage apparatus  5 ′A is connected to the host computer  2  and is available (S 81 : Yes), the agent  60 ′A in the check target first storage apparatus  5 ′A refers to the copy pair management table  621  to retrieve pair information regarding the check command target volume number (S 83 ). 
     Then the agent  60 ′A performs the processing from steps S 84  to S 114  using the same procedure as that for the processing in steps S 34  to S 64 . 
     However, the agent  60 ′A communicates with an agent  60 ′B in the copy destination to retrieve volume information for the copy-destination (S 90 ). 
     At this time, the request-source agent  60 ′A can retrieve the information according to the requested content by communicating with the request-destination agent  60 ′B. Although the below description will be provided with the agent  60 ′A serving as a requesting agent and the agent  60 ′B serving as the requested agent, possible configurations are not limited to this. 
     Specifically, as shown in  FIG. 23 , the request-source agent  60 ′A logs in to the request-destination agent  60 ′B (S 120 ) and confirms that a response indicating that the login has been successfully made is returned from the request-destination agent  60 ′B (S 121 ). 
     Then the request-source agent  60 ′A transmits a command to the request-destination agent  60 ′B (S 122 ). The command is a retrieval command for volume information about the copy destination. 
     The agent  60 ′B receiving this command transmits data about a pair status, the storage apparatus manufacturing number and the volume number based on a copy pair table in a shared memory  62 ′B in the request-destination agent  60 ′B (S 123 ). 
     The request-destination agent  60 ′B transmits a report reporting that the transmission to the request-source agent  60 ′A (S 124 ) has been completed. 
     When a pair is formed in step S 92 , the copy path is partitioned in step S 95  and copy is executed in steps S 101  and S 105 , and the request-source agent  60 ′A can retrieve by communicating with the agent  60 ′B as shown in  FIG. 24 . 
     Specifically, the request-source agent  60 ′A logs in to the request-destination agent  60 ′B (S 130 ) and confirms a response indicating that the login has been made successfully is returned from the request-destination agent  60 ′B (S 131 ). 
     Then the request-source agent  60 ′A transmits a command to the request-destination agent  60 ′B (S 132 ). The command here is a command for forming a pair, partitioning the copy path and executing the copy. 
     The request-destination agent  60 ′B receiving this command executes the command content in accordance with the copy program  622  in a shared memory  62 ′ in the request-destination agent  60 ′B (S 133 ). 
     The request-destination agent  60 ′B transmits the execution result to the request-source agent  60 ′A (S 134 ). 
     As described above, when the host computer  2 ′ transmits a check command to the first storage apparatus  5 ′A, the agent  60 A′ receiving this check command executes the check and transmits the check result to the host computer  2 ′. With this configuration, the host computer  2 ′ in this embodiment can integrally manage the check processing. In addition, all the host computer  2 ′ has to do is to transmit the command, so load on the host computer  2 ′ is smaller compared to that in the configuration in the first embodiment. Furthermore, even if the copy path is disconnected for some reason, the remote copy system  100  in this embodiment can recover the copy path and store common data in the volumes on the common copy path. This embodiment provides a method capable of managing a copy path for data and checking the copy source and the copy destination of the data. In addition, this embodiment provides a method capable of checking the consistency of backup data. 
     (2-2) Advantage of Second Embodiment 
     With the configuration of this embodiment, since the agent in the storage apparatus performs the check recovery processing based on a command from the host computer, the work of manually checking the operation of the storage apparatus performed by the administrator can be reduced and continuous data copy can be managed. 
     This invention is widely applicable in a remote copy system having one or more storage apparatuses and other types of remote copy systems. 
     While the invention has been described with respect to a limited number of embodiments, those skilled in the art, having benefit of this disclosure, will appreciate that other embodiments can be devised that do not depart from the scope of the invention as disclosed herein. Accordingly, the scope of the invention should be limited only by the attached claims.