This application relates to and claims priority from Japanese Patent Application No. 2006-240782, filed on Sep. 5, 2006, the entire disclosure of which is incorporated herein by reference.
1. Field of the Invention
The present invention relates to a data migration system for a storage system, that does not need to stop I/O access from a host computer when migrating data from a first storage subsystem to a second storage subsystem and switching the connection destination of the host computer from the first storage subsystem to the second storage subsystem.
2. Description of Related Art
In storage systems, in order to replace a first storage subsystem, to which a host computer is currently connected, with a second storage subsystem, data stored in the first storage subsystem volumes is copied to the second storage subsystem.
The method for migration between storage subsystems disclosed in Japanese Patent Laid-open Publication No. H11-184641 is known as a migration method that does not stop read/write (I/O) access from the host computer during the above copying process.
More specifically, according to the above method, a plurality of first access paths is provided between a CPU and an old subsystem; a plurality of second access paths is provided between the CPU and a new subsystem; and a plurality of third access paths is provided between the old and new subsystems. The connection destination is changed from the old (migration source) subsystem to the new (migration destination) subsystem by switching the first access paths to the second access paths over several cycles. If the new subsystem is accessed by the CPU via the second access paths provided on the new subsystem's side while the connection destination is being changed, a path migration controller provided in the new subsystem handles that access by transferring it to the old subsystem via the third access paths. After all first access paths have been switched to the second access paths, data migration is performed from the old subsystem to the new subsystem.
In the above prior art method, paths are created between a migration source storage subsystem and a migration destination storage subsystem, and using the paths, a host computer accessing the migration destination storage subsystem can access a migration source volume in the migration source storage subsystem.
In the above prior art method, if a migration destination volume is not assigned the same identifier as that of the migration source volume, a host computer cannot access the migration destination volume while data is being copied, and consequently has to stop online processing. However, in some cases, the migration destination storage subsystem has already assigned a volume the same identifier as that of the migration source volume, which means it is necessary to stop access from the host computer and redefine the migration source volume and migration destination volume in the host computer.
In light of the above, an object of the present invention is to provide a method and system that can realize data migration between volumes accessed by a host computer, without stopping the host computer accessing the volumes.
In order to achieve the above object, in the present invention, a data migration destination storage subsystem is configured to be able to recognize access from a host computer to a migration destination volume based on identification information on a migration source volume and distinguish that access from access to other volumes in the migration destination storage subsystem, and also to be able to send unique information concerning the migration source volume to the host computer. Accordingly, even if the migration destination storage subsystem has already used a volume having the same identification information as that of the migration source volume, the migration destination storage subsystem can correctly recognize access from the host computer, which was till then connected to the migration source storage subsystem, to the migration destination volume. Furthermore, since the migration destination storage subsystem is configured to send unique information concerning the migration source volume back to the host computer, the host computer recognizes the migration destination volume as the migration source volume.
For example, while the host computer connected to the migration source storage subsystem (first storage subsystem) is being changed to be connected to the migration destination storage subsystem (second storage subsystem), the second storage subsystem directs access from the host computer based on identification information concerning a first volume to the first volume in the first storage subsystem. If the second storage subsystem receives access from the host computer based on the first volume identification information while data is being migrated, the second storage subsystem either directs that access to the first volume in the first storage subsystem, or changes that access to access directed to a second volume by referring to control information specifying the association of the first volume identification information with the second volume identification information. Furthermore, after data migration has been completed, the second storage subsystem converts access from the host computer based on the first volume identification information to access directed to the second volume, in accordance with the above control information. In this way, throughout the data migration, and even after the completion of the data migration, definition information concerning the migration source volume does not need to be changed in the host computer.
As a result, when changing the connection destination of the host computer from the migration source storage system to the migration destination storage system and migrating data from the first volume to the second volume, there is no need to stop online processing in the host computer.
The present invention can realize data migration between volumes accessed by a host computer, without stopping the host computer accessing the volumes.
Other aspects and advantages of the invention will be apparent from the following description and the appended claims.
Next, an embodiment of the invention will be described below, with reference to the attached drawings.
The channel adapter unit 16 is configured to include a plurality of ports 26, via which input/output processing to/from the host computer 10 is executed, and a control processor 28 for executing I/O processing. The disk adapter unit 22 is configured to include a port 30, via which input/output processing to/from each storage device 24 is executed, and a control processor 32 for executing I/O processing. Meanwhile, the storage subsystem 14, which is regarded as a second storage subsystem (migration destination subsystem) or a migration destination disk controller, is configured to include a channel adapter unit 34, cache memory 36, shared memory 38, a disk adapter unit 40, a plurality of storage devices 42, and a service processor 44 for executing processing in response to user commands.
The channel adapter unit 34 is configured to include a plurality of ports 46, via which input/output processing to/from the host computer 10 is executed, and a control processor 48 for executing I/O processing. The disk adapter unit 40 is configured to include a port 50, via which input/output processing to/from each storage device 42 is executed, and a control processor 52 for executing I/O processing. The host computer 10 and the storage subsystem 12 are connected via paths 54 and 56, and the storage subsystems 12 and 14 are mutually connected via paths 58 and 60.
The storage system according to this embodiment is characterized in that, even while the host computer 10 continues executing processing online, data stored in an old volume (a first volume) in the storage subsystem 12 can be migrated to a new volume (a second volume) in the storage subsystem 14 without interrupting the above online processing, and the storage subsystem 14 being able to accept access from the host computer 10 even while data is being migrated.
Next, more details of the above will be explained with reference to the flowchart shown in
In the processing in steps S2 and S3, and in the subsequent steps S4 and S5, the content of a pair volume information table T1 shown in
For example, port 46 #00 and port 46 #02 are set as migration ports. The new volume identification information 104 indicates the hierarchical structure of a control unit CU and a device DEV (as an address), which is associated with the hierarchical structure of a control unit CU and a device DEV indicated in the old volume identification information 106. For example,
Examples of the old volume's unique information 108 include: information unique to a storage subsystem, such as the manufacturing number, manufacturer, storage type, supporting function information, number of devices, number of logical paths, cache size, and NVS size; and information unique to devices, such as the device type, capacity (number of cylinders), and VOLSER (volume serial number). The port conversion table T2 stores port numbers 110 of “00,” “01,” “02,” . . . , set in association with system group numbers 112 of “0,” “1,” “0,” “1,” . . . .
Next, explaining the processing in steps S2 and S3 in more detail with reference to
When setting a new volume, the service processor 44 judges whether a new volume is to be designated by the user or not (S23), and if it determines that a new volume is to be selected by the user, it sets a new volume based on the user's command (S24). If the user has chosen automated setting of a new volume, the service processor 44 checks whether any control unit CU number has been designated for a migration destination volume (S25). If a particular CU number has been designated, the service processor 44 sets the designated number as a target CU number (S26), and if no number has been designated, the service processor 44 sets all CU numbers as target CU numbers (S26). After that, the service processor checks the content of the volumes in the target control unit(s) CU (S28).
More specifically, in response to a command from the service processor 44, the channel adapter unit 34 executes the processing shown in
If the channel adapter unit 34 determines in the above step S41 that no unused volume table T3 has been generated, the channel adapter unit 34 checks volumes in all control units CU (S42), and checks whether volumes in all control units CU have been checked (S43). Until all volumes have been checked, the channel adapter unit 34 repeats the steps of: judging whether a target volume includes any logical path or not (S44); and obtaining information about the volume if the target volume has no logical path (S45) and registering that volume in an unused volume table T3, sorting it in ascending order of the number of cylinders (S46).
When all volumes have been checked, the channel adapter unit 34 judges whether the number of cylinders in an unused volume is larger than the number of cylinders in the old volume (S47), and if the number of cylinders in an unused volume is larger than the number of cylinders in the old volume, the channel adapter unit 34 deletes that unused volume from the table T3 (S48), and creates a “with an applicable volume” setting [for the old volume] (S49). On the other hand, if the number of cylinders in an unused volume is smaller than the number of cylinders in the old volume, the channel adapter unit 34 judges whether there are any other unused volumes (S50), and if there are no other unused volumes, creates a “with no applicable volume” setting (S51), and if there is another unused volume, the channel adapter unit 34 selects the next unused volume (S52) and returns to the process in step S47.
When the service processor 44 has finished searching for a volume in step S28 in
In the above step S33, as shown in
After that, the service processor 44 checks whether the content displayed on the screen is accepted by the user or not (S34). If the user inputs “OK,” the service processor ends the pairing processing (S35). If the user does not input “OK,” the service processor 44 goes back to the process in step S23 and the processing in the current routine ends.
Referring back to
Next, the user takes the path 54 off-line, connects that path 54 to port 46 #n in the storage subsystem 14, and then brings it on-line, as shown in
After that, as shown in
More specifically, the host computer 10 sends requests for I/O processing to the storage subsystem 14, designating a control unit CU and device DEV, as indicated in the old volume identification information 106 in the pair volume information table T1, as an address. So, the channel adapter unit 34 refers to the pair volume information table T1 and performs conversion processing between the old volume identification information 106 and new volume identification information 104, and thereby can execute I/O processing requested by the host computer 10 without stopping the data migration processing (S10).
Explaining in more detail with reference to
Meanwhile, if the requested processing is determined to be write processing in step S65, the channel adapter unit 34 executes write processing using the data read from the old volume 62 (S69), writes the relevant data to the new volume 64 (S70), and sets the relevant track as a copied track (S71). Then, the channel adapter unit 34 judges whether to update the old volume 62 or not (S72). If the old volume 62 is to be updated, the channel adapter unit 34 executes write processing for the old volume 62 (S73), and then ends the I/O processing (S74).
After the processing to migrate data in the old volume 62 to the new volume 64 has been completed, I/O processing and other processing is executed via the paths 54 and 56 between the host computer 10 and the storage subsystem 14, as shown in
As described above, a storage subsystem (second storage subsystem) 14 includes: a path 58 (or paths 58 and 60) connected to a storage subsystem (first storage subsystem) 12; a channel adapter unit (control circuit) 34 for controlling data migration; new volume identification information 104 and old volume identification information 106 used as control information for associating an old volume (first volume) 62 with a new volume (second volume) 64; shared memory 38 including the old volume's (first volume) unique information 108; and specific port(s) 46 to be connected to a host computer 10. When the connection destination of the host computer 10 is switched from the storage subsystem (first storage subsystem) 12 to the port(s) 46 in the storage subsystem (second storage subsystem) 14, the channel adapter unit 34 sends the unique information 108 to the host computer 10 in response to access from the host computer 10 to the new volume (second volume) 64 via the switched port 46 #01 or #n. After the connection destination has been switched from the storage subsystem (first storage subsystem) 12 to the port 46 #01 or #n in the storage subsystem (second storage subsystem) 14, the channel adapter unit 34 migrates data in the old volume (first volume) 62 to the new volume (second volume) 64 via the path 58 (or paths 58 and 60), and while data is being migrated from the old volume (first volume) 62 to the new volume (second volume) 64, the channel adapter unit 34 accepts access from the host computer 10 via the port 46 #01 or #n.
After data migration has been started from the old volume (first volume) 62 to the new volume (second volume) 64, if the channel adapter unit 34 receives access from the host computer 10 to the storage subsystem (second storage subsystem) 14 via the specific port mentioned earlier based on the old volume (first volume) identification information 106, the channel adapter unit 34 converts that access into access directed to the new volume (second volume) 64, and also converts that access from the host computer 10 to access having the new volume (second volume) identification information 104, in accordance with the control information.
Also, while the connection destination of the host computer 10 is being changed to the ports 46 #01 and #n, the channel adapter unit 34 directs access from the host computer 10 via the ports 46 based on the old volume (first volume) identification information 106 to the storage subsystem (first storage subsystem) 12. Furthermore, if the channel adapter receives access from the host computer 10 based on the old volume (first volume) identification information 106 while data in the old volume (first volume) 62 is being migrated to the new volume (second volume) 64, the channel adapter unit 34 either directs that access to the storage subsystem (first storage subsystem) 12, or converts it to access directed to the new volume (second volume) 64 by referring to information specifying the association (association between the old volume identification information 106 and the new volume identification information 104). After data in the old volume (first volume) 62 has been completely migrated to the new volume (second volume) 64, the channel adapter unit 34 changes access from the host computer 10 based on the old volume (first volume) identification information 106 into access directed to the new volume (second volume), referring to the information specifying the association.
According to this embodiment, it is possible to achieve data migration between volumes 62 and 64 accessed by the host computer 10, without stopping the host computer 10 accessing those volumes.
More specifically, according to prior art methods, if the migration destination volume has an identifier (address) that does not match the identifier of the migration source volume, a host computer cannot access the migration destination volume when data is being copied, and has to stop its online processing. In contrast, in this embodiment, the channel adapter unit 34 refers to the pair volume information table T1 and executes conversion processing between the old volume identification information 106 and the new volume identification information 104, and accordingly, if the host computer 10 sends an I/O request to the storage subsystem 14 designating the old volume 62 address while data migration (data copy) is being processed, the storage subsystem 14 can find the new volume 64 address associated with the old volume 62 address and execute the necessary I/O processing based on the new volume 64 address.
Also, according to this embodiment, a migration destination volume address will not be in conflict with another address in the migration destination storage subsystem. Obviously, there is a possibility that a migration source old volume address has already been used in the migration destination storage subsystem. So, in order to solve this problem, a specific port in the migration destination storage subsystem is set as a migration port, and for any host I/O access received via that migration port, the target new volume address for that host I/O access in the migration destination storage subsystem will be determined based on the pair volume information table.
Data migration between storage subsystems 12 and 14 explained in the above-described embodiment is one-to-one data migration between one storage subsystem 12 and one storage subsystem 14. However, as shown in
For example, when migrating data from the storage subsystem 12A to the storage subsystem 14B, and from the storage subsystem 12B to the storage subsystem 14B, respectively, port 26A #00 is connected to port 46B #02 with a path 70; port 26B #00 is also connected to port 46B #n with a path 72; and thereby data in old volumes 62 is migrated to new volumes 64 under the control of a service processor 44B. Also, when migrating data from the storage subsystem 12B to the storage subsystem 14A, port 26B #01 is connected to port 46A #02 with a path 74, and thereby data in an old volume 62 in the storage subsystem 12B is migrated to a new volume 64 in the storage subsystem 14A under the control of a service processor 44A.
In that case, under the control of the service processors 44A and 44B, each channel adapter unit in the storage subsystems 14A and 14B refers to a pair volume information table T1 and executes conversion processing between old volume identification information 106 and new volume identification information 104, and as a result, even if the host computers 10A and 10B send requests for I/O processing to the storage subsystems 14A and 14B designating an old volume 62 address while data is being migrated (copied), the storage subsystem 14A and 14B can execute that I/O processing, obtaining the new volume 64 address that is associated with the received old volume 62 address.
According to the above embodiment, even in data migration between m-to-n source storage subsystems and destination storage subsystems, data can be migrated between the volumes 62 and 64 accessed by the host computers 10A-10C, without stopping the host computers 10A-10C accessing those volumes.
Each of the above embodiments has been explained for mainframe type systems, but the present invention can also be applied to open type systems. Furthermore, the above embodiments describe data migration between a plurality of storage subsystems. However, this invention can also be applied to the case where one storage subsystem is divided into several virtual clusters, and data is migrated and the connection destination of a host computer is changed between the clusters.
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 which 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.
Number | Date | Country | Kind |
---|---|---|---|
2006-240782 | Sep 2006 | JP | national |
Number | Name | Date | Kind |
---|---|---|---|
6108748 | Ofek et al. | Aug 2000 | A |
6240494 | Nagasawa et al. | May 2001 | B1 |
20050055428 | Terai et al. | Mar 2005 | A1 |
20050108485 | Perego | May 2005 | A1 |
20050216591 | Sato | Sep 2005 | A1 |
20060059308 | Uratani et al. | Mar 2006 | A1 |
Number | Date | Country |
---|---|---|
0 926 585 | Jun 1999 | EP |
1 357 476 | Apr 2003 | EP |
11-184641 | Dec 1997 | JP |
Number | Date | Country | |
---|---|---|---|
20080059745 A1 | Mar 2008 | US |