IP Library Granted Patent US 10,133,743
Granted Patent B2
US 10,133,743 · App. 15/040,300 · Granted Nov 20, 2018

Systems and methods for data migration using multi-path input/output and snapshot-based replication

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,133,743
App. No.
15/040,300
Granted
Nov 20, 2018
Kind
B2
Abstract

A method may include establishing, by a MPIO driver of a host information handling system, an I/O path between the host information handling system and the source storage array as an active I/O path and a path between the host and the target storage array as a passive I/O path. The method may also include performing a snapshot-based iterative replication between the source storage array and the target storage array, wherein successive iterations of the snapshot-based iterative replication comprise I/O to the source storage array occurring during an immediately previous iteration of the snapshot-based iterative replication. The method may further include, upon completion of the snapshot-based iterative replication, establishing, by the MPIO, the I/O path between the host and the source storage array as a passive I/O path and the path between the host and the target storage array as the active I/O path.

Claims (54)

1. A method for migrating data from a source storage array to a target storage array, comprising:

establishing, by a multi-path input/output (MPIO) driver of a host information handling system, an input/output (I/O) path between the host information handling system and the source storage array as an active I/O path and a path between the host information handling system and the target storage array as a passive I/O path;

performing a snapshot-based iterative replication between the source storage array and the target storage array, wherein successive iterations of the snapshot-based iterative replication comprise I/O to the source storage array occurring during an immediately previous iteration of the snapshot-based iterative replication;

upon completion of the snapshot-based iterative replication, establishing, by the MPIO, the I/O path between the host information handling system and the source storage array as a passive I/O path and the path between the host information handling system and the target storage array as the active I/O path;

determining whether convergence of the snapshot-based iterative replication has occurred; and

issuing a notification responsive to a determination that convergence of the snapshot-based iterative replication has occurred.

2. The method of claim 1 , further comprising issuing by the MPIO driver a vendor-specific command to obtain a replication mapping between volumes of the source storage array and the target storage array.

3. The method of claim 1 , further comprising ceasing the snapshot-based iterative replication responsive to a determination that convergence of the snapshot-based iterative replication has occurred.

4. The method of claim 1 , further comprising ceasing the snapshot-based iterative replication responsive to a determination that convergence of the snapshot-based iterative replication has occurred and that a user has set a variable indicating that I/O of the host information handling system is to automatically switch over from the source storage array to the target storage array.

5. The method of claim 1 , wherein determining whether convergence of the snapshot-based iterative replication has occurred comprises determining whether an iteration of the snapshot-based iterative replication will complete within a predetermined period of time.

6. The method of claim 1 , further comprising, upon completion of the snapshot-based iterative replication:

queueing additional I/O from the host information handling system to the source storage array;

failing the queued I/O; and

retrying the failed I/O to the target storage array after the MPIO driver has established the active path between the host information handling system and the target storage array.

7. The method of claim 6 , wherein failing the queued I/O comprises failing the queued I/O with a vendor-specific sense-code qualifier.

8. The method of claim 7 , wherein the MPIO driver establishes the I/O path between the host information handling system and the source storage array as a passive I/O path and the path between the host information handling system and the target storage array as the active I/O path responsive to the vendor-specific sense-code qualifier.

9. A system for migrating data from a source storage array to a target storage array, comprising:

a host information handling system configured to establish an input/output (I/O) path between the host information handling system and the source storage array as an active I/O path and a path between the host information handling system and the target storage array as a passive I/O path; and

a controller configured to execute a migration state machine for performing a snapshot-based iterative replication between the source storage array and the target storage array, wherein successive iterations of the snapshot-based iterative replication comprise I/O to the source storage array occurring during an immediately previous iteration of the snapshot-based iterative replication;

wherein:

the host information handling system is further configured to, upon completion of the snapshot-based iterative replication, establish the I/O path between the host information handling system and the source storage array as a passive I/O path and the path between the host information handling system and the target storage array as the active I/O path; and

the migration state machine is further configured to determine whether convergence of the snapshot-based iterative replication has occurred and issue a notification responsive to a determination that convergence of the snapshot-based iterative replication has occurred.

10. The system of claim 9 , wherein the host information handling system is further configured to issue a vendor-specific command to obtain a replication mapping between volumes of the source storage array and the target storage array.

11. The system of claim 9 , wherein the migration state machine is further configured to cease the snapshot-based iterative replication responsive to a determination that convergence of the snapshot-based iterative replication has occurred.

12. The system of claim 9 , wherein the migration state machine is further configured to cease the snapshot-based iterative replication responsive to a determination that convergence of the snapshot-based iterative replication has occurred and that a user has set a variable indicating that I/O of the host information handling system is to automatically switch over from the source storage array to the target storage array.

13. The system of claim 9 , wherein determining whether convergence of the snapshot-based iterative replication has occurred comprises determining whether an iteration of the snapshot-based iterative replication will complete within a predetermined period of time.

14. The system of claim 9 , wherein the migration state machine is further configured to, upon completion of the snapshot-based iterative replication:

queue additional I/O from the host information handling system to the source storage array;

fail the queued I/O; and

retry the failed I/O to the target storage array after the host information handling system has established the active path between the host information handling system and the target storage array.

15. The system of claim 14 , wherein failing the queued I/O comprises failing the queued I/O with a vendor-specific sense-code qualifier.

16. The system of claim 15 , wherein the host information handling system establishes the I/O path between the host information handling system and the source storage array as a passive I/O path and the path between the host information handling system and the target storage array as the active I/O path responsive to the vendor-specific sense-code qualifier.

17. A method for migrating data from a source storage array to a target storage array, comprising:

establishing, by a multi-path input/output (MPIO) driver of a host information handling system, an input/output (I/O) path between the host information handling system and the source storage array as an active I/O path and a path between the host information handling system and the target storage array as a passive I/O path;

performing a snapshot-based iterative replication between the source storage array and the target storage array, wherein successive iterations of the snapshot-based iterative replication comprise I/O to the source storage array occurring during an immediately previous iteration of the snapshot-based iterative replication; and

upon completion of the snapshot-based iterative replication:

establishing, by the MPIO, the I/O path between the host information handling system and the source storage array as a passive I/O path and the path between the host information handling system and the target storage array as the active I/O path;

queueing additional I/O from the host information handling system to the source storage array;

failing the queued I/O; and

retrying the failed I/O to the target storage array after the MPIO driver has established the active path between the host information handling system and the target storage array.

18. The method of claim 17 , further comprising issuing by the MPIO driver a vendor-specific command to obtain a replication mapping between volumes of the source storage array and the target storage array.

19. The method of claim 17 , wherein failing the queued I/O comprises failing the queued I/O with a vendor-specific sense-code qualifier.

20. The method of claim 19 , wherein the MPIO driver establishes the I/O path between the host information handling system and the source storage array as a passive I/O path and the path between the host information handling system and the target storage array as the active I/O path responsive to the vendor-specific sense-code qualifier.

21. A system for migrating data from a source storage array to a target storage array, comprising:

a host information handling system configured to establish an input/output (I/O) path between the host information handling system and the source storage array as an active I/O path and a path between the host information handling system and the target storage array as a passive I/O path; and

a controller configured to execute a migration state machine for performing a snapshot-based iterative replication between the source storage array and the target storage array, wherein successive iterations of the snapshot-based iterative replication comprise I/O to the source storage array occurring during an immediately previous iteration of the snapshot-based iterative replication;

wherein the host information handling system is further configured to, upon completion of the snapshot-based iterative replication, establish the I/O path between the host information handling system and the source storage array as a passive I/O path and the path between the host information handling system and the target storage array as the active I/O path; and

wherein the migration state machine is further configured to, upon completion of the snapshot-based iterative replication:

queue additional I/O from the host information handling system to the source storage array;

fail the queued I/O; and

retry the failed I/O to the target storage array after the host information handling system has established the active path between the host information handling system and the target storage array.

22. The system of claim 21 , wherein the host information handling system is further configured to issue a vendor-specific command to obtain a replication mapping between volumes of the source storage array and the target storage array.

23. The system of claim 21 , wherein failing the queued I/O comprises failing the queued I/O with a vendor-specific sense-code qualifier.

24. The system of claim 23 , wherein the host information handling system establishes the I/O path between the host information handling system and the source storage array as a passive I/O path and the path between the host information handling system and the target storage array as the active I/O path responsive to the vendor-specific sense-code qualifier.

Assignments (17)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
RELEASE OF SECURITY INTEREST AT REEL 048825 FRAME 0489 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 058000/0916 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Apr 8, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 048825/0489 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
RELEASE OF REEL 038665 FRAME 0041 (TL) Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; SECUREWORKS, CORP.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040028/0375 →
RELEASE OF REEL 038664 FRAME 0908 (NOTE) Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; SECUREWORKS, CORP.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040027/0390 →
RELEASE OF REEL 038665 FRAME 0001 (ABL) Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; SECUREWORKS, CORP.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040021/0348 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (TERM LOAN) Recorded May 11, 2016
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; WYSE TECHNOLOGY, L.L.C.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 038665/0041 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (NOTES) Recorded May 11, 2016
From: DELL SOFTWARE INC.; WYSE TECHNOLOGY, L.L.C.; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS FIRST LIEN COLLATERAL AGENT
Reel/Frame 038664/0908 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (ABL) Recorded May 11, 2016
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; WYSE TECHNOLOGY, L.L.C.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 038665/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 11, 2016
From: VENKAT, PRAKASH; AMBAT, GOPAKUMAR; KONING, G. PAUL
To: DELL PRODUCTS L.P.
Reel/Frame 037711/0963 →