System and method of non-disruptive data migration between virtual arrays of heterogeneous storage arrays
First Claim
1. A method for non-disruptively migrating data from a source storage array to a destination storage array, the source and destination storage arrays being heterogeneous, wherein heterogeneous storage arrays are different enough from each other to preclude direct communication with each other in order to coordinate and conduct data migration therebetween, the method comprising:
- querying a name server database, used by hosts to learn name and address associations of devices, to obtain port names for each source port of the source storage array;
communicating with the source storage array to obtain information about the source storage array and about each logical unit of storage (LUN) of a source virtual array at the source storage array;
generating a target virtual array spanning at least one physical destination storage array for receiving a copy of data resident in the source virtual array, the target virtual array being configured with at least as many virtual ports as source ports of the source virtual array and with at least as many logical units of storage (LUNs) as LUNs of the source virtual array, each LUN of the source virtual array corresponding to one of the LUNs of the target virtual array and being equal in storage capacity to that corresponding LUN, each virtual port having a virtual port address;
copying data resident in the LUNs of the source virtual array to corresponding LUNs in the target virtual array; and
reconfiguring the name server database to associate port names of the source ports of the source virtual array with the virtual port addresses of the virtual ports of the target virtual array such that the target virtual array appears to a host as the source virtual array.
9 Assignments
0 Petitions
Accused Products
Abstract
Described is non-disruptive data migration from a source virtual array at a source storage array to a target virtual array at a heterogeneous destination storage array. A name server database is queried to obtain port names for each source port. The source storage array is queried to obtain information about each source virtual array LUN. A target virtual array is generated at the destination array for receiving a copy of data resident at the source virtual array. The target virtual array has at least as many ports and at least as many LUNs as the source virtual array. Data resident in the source virtual array LUNs are copied to corresponding target virtual array LUNs. The name server database is reconfigured to associate source port names with the virtual port addresses of the target virtual array such that the target virtual array appears to a host as the source virtual array.
-
Citations
24 Claims
-
1. A method for non-disruptively migrating data from a source storage array to a destination storage array, the source and destination storage arrays being heterogeneous, wherein heterogeneous storage arrays are different enough from each other to preclude direct communication with each other in order to coordinate and conduct data migration therebetween, the method comprising:
-
querying a name server database, used by hosts to learn name and address associations of devices, to obtain port names for each source port of the source storage array; communicating with the source storage array to obtain information about the source storage array and about each logical unit of storage (LUN) of a source virtual array at the source storage array; generating a target virtual array spanning at least one physical destination storage array for receiving a copy of data resident in the source virtual array, the target virtual array being configured with at least as many virtual ports as source ports of the source virtual array and with at least as many logical units of storage (LUNs) as LUNs of the source virtual array, each LUN of the source virtual array corresponding to one of the LUNs of the target virtual array and being equal in storage capacity to that corresponding LUN, each virtual port having a virtual port address; copying data resident in the LUNs of the source virtual array to corresponding LUNs in the target virtual array; and reconfiguring the name server database to associate port names of the source ports of the source virtual array with the virtual port addresses of the virtual ports of the target virtual array such that the target virtual array appears to a host as the source virtual array. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A storage area network comprising:
-
a switch; a name server database that associates names and addresses of ports coupled to the switch, the name server database being accessible to one or more hosts for learning name and address associations; a source storage array having a source virtual array and one or more source ports coupled to the switch, each source port having a source port name and a source port address; a destination storage array having a target virtual array for receiving a copy of data resident in the source virtual array, the source and destination storage arrays being heterogeneous, wherein heterogeneous storage arrays are different enough from each other to preclude direct communication with each other in order to coordinate and conduct data migration therebetween, the target virtual array of the destination storage array being configured with at least as many virtual ports as source ports of the source virtual array and with at least as many logical units of storage (LUNs) as LUNs of the source virtual array, each LUN of the source virtual array corresponding to one of the LUNs of the target virtual array and being equal in storage capacity to that corresponding LUN, each virtual port of the target virtual array having a virtual port name and virtual port address; logic copying data resident in the LUNs of the source virtual array to corresponding LUNs of the target virtual array; and logic induces the name server database to be reconfigured to associate port names of the source ports of the source virtual array with the virtual port addresses of the virtual ports of the target virtual array such that the target virtual array appears to a host as the source virtual array. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer program product comprising:
-
a non-transitory computer-useable medium having a computer-readable program code embodied in said medium for non-disruptively migrating data in a storage area network from a source storage array to one or more destination storage arrays, the source storage array being heterogeneous with respect to the one or more destination storage arrays, wherein heterogeneous storage arrays are different enough from each other to preclude direct communication with each other in order to coordinate and conduct data migration therebetween, the computer readable program code in said medium comprising; computer-readable program code for causing the storage area network to query a name server database, used by hosts to learn name and address associations of devices, to obtain port names for each source port of the source storage array; computer-readable program code for causing the storage area network to communicate with the source storage array to obtain information about the source storage array and about each logical unit of storage (LUN) of a source virtual array at the source storage array; computer-readable program code for causing the storage area network to generate a target virtual array spanning at least one physical destination storage array for receiving a copy of data resident in the source virtual array, the target virtual array being configured with at least as many virtual ports as source ports of the source virtual array and with at least as many logical units of storage (LUNs) as LUNs of the source virtual array, each LUN of the source virtual array corresponding to one of the LUNs of the target virtual array and being equal in storage capacity to that corresponding LUN, each virtual port having a virtual port address; computer-readable program code for causing the storage area network to copy data resident in the LUNs of the source virtual array to corresponding LUNs in the target virtual array; and computer-readable program code for causing the storage area network to reconfigure the name server database to associate port names of the source ports of the source virtual array with the virtual port addresses of the virtual ports of the target virtual array such that the target virtual array appears to a host as the source virtual array. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24)
-
Specification