IP Library Granted Patent US 9,720,606
Granted Patent B2
US 9,720,606 · App. 12/912,416 · Granted Aug 1, 2017

Methods and structure for online migration of data in storage systems comprising a plurality of storage devices

Inventors: Keith W. Holt (Wichita, KS); John G. Logan (Long Beach, CA); Kevin Kidney (Lafayette, CO)
Assignee: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
G06F3/0617G06F3/0647G06F3/0689
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 9,720,606
App. No.
12/912,416
Granted
Aug 1, 2017
Kind
B2
Abstract

Methods and structure for online migration of data in a storage system comprising a plurality of storage devices. The method comprises redefining a volume of a storage system mapped according to a first mapping structure by defining a second mapping structure. The method further comprises quiescing processing of host I/O requests directed to the volume and transitioning control of the volume from a first to a second volume manager so as to utilize the benefits of the second mapping structure. The method further comprises commencing processing of host I/O requests directed to the volume wherein the volume is mapped according to the second mapping structure. The method further comprises migrating, via the second volume manager, volume data to any of a plurality of storage devices of the system, online, without interrupting processing of host I/O requests directed to the volume. This migrates volume data without significant downtime or wasted space.

Claims (64)

1. A method for online migration of data in a storage system comprising a plurality of storage devices, the method comprising:

controlling, by operation of a first volume manager, a volume of the storage system mapped according to a first mapping structure, wherein the first mapping structure constrains the volume to a fixed subset of the plurality of storage devices;

defining a second mapping structure based on information defining the volume;

quiescing processing of host I/O requests directed to the volume as presently mapped according to the first mapping structure;

transitioning control of the volume from the first volume manager to a second volume manager;

commencing processing of the host I/O requests directed to the volume wherein the volume is mapped according to the second mapping structure; and

migrating, by operation of the second volume manager, data of the volume to any of the plurality of storage devices, wherein the migration is performed without interrupting processing of host I/O requests directed to the volume.

2. The method of claim 1 , wherein:

migrating data of the volume further comprises selecting, by operation of the second volume manager, a preferred set of storage devices from the plurality of storage devices on which to store the data of the volume, wherein the preferred storage devices share similar performance attributes.

3. The method of claim 1 , wherein:

transitioning further comprises reporting an error if the storage system determines that host I/O requests may not be quiesced without resulting in a host I/O timeout.

4. The method of claim 1 , wherein:

transitioning further comprises reporting an error if the storage system predicts the transitioning will take longer than a predefined time limit.

5. The method of claim 1 , wherein:

migrating further comprises distributing the data of the volume from the fixed subset of storage devices to a second subset of storage devices wherein the second subset comprises at least one storage device that is not part of the fixed subset.

6. The method of claim 1 , wherein:

the method further comprises:

blocking operations that would modify the configuration of the volume prior to defining; and

allowing operations that would modify the configuration of the volume after transitioning.

7. The method of claim 1 , wherein:

the method further comprises disabling routing of the host I/O requests to the first volume manager after transitioning the volume.

8. A storage controller adapted to be coupled with a plurality of storage devices, the storage controller comprising:

a first volume manager adapted to be coupled with the plurality of storage devices and further adapted to control operation of a volume residing on a fixed subset of the plurality of storage devices according to a first mapping structure; and

a second volume manager adapted to be coupled with the plurality of storage devices;

wherein the storage controller is adapted to receive host I/O requests directed to the volume via a front end logic and further adapted to route the host I/O requests to one of the first volume manager and second volume manager,

wherein the storage controller is further adapted to perform I/O operations with one or more of the plurality of storage devices at the direction of the first volume manager and second volume manager to process received host I/O requests via a back end logic,

wherein the storage controller is further adapted to define a second mapping structure based on information defining the volume,

wherein the storage controller is further adapted to quiesce processing of the host I/O requests directed to the volume,

wherein the storage controller is further adapted to transition control of the volume from the first volume manager to the second volume manager,

wherein the storage controller is further adapted to commence processing of the host I/O requests under control of the second volume using the second mapping structure,

wherein the second volume manager is adapted to migrate data of the volume to any of the plurality of storage devices,

wherein the migration is performed without interrupting processing of the host I/O requests directed to the volume.

9. The storage controller of claim 8 , wherein:

the second volume manager is further adapted to select preferred storage devices from the plurality of the storage devices on which to migrate the data of the volume,

wherein the preferred storage devices share similar performance attributes.

10. The storage controller of claim 8 , wherein:

the storage controller is further adapted to report an error if the storage controller determines that host I/O requests may not be quiesced without resulting in a host I/O timeout.

11. The storage controller of claim 8 , wherein:

the storage controller is further adapted to report an error if the storage controller predicts that transitioning control of the volume from the first volume manager to the second volume manager will take longer than a predefined time limit.

12. The storage controller of claim 8 , wherein:

the second volume manager is further adapted to migrate the volume from the fixed subset of storage devices to a second subset of the plurality of storage devices wherein the second subset comprises at least one storage device that is not part of the fixed subset.

13. The storage controller of claim 8 , wherein:

the storage controller is further adapted to block operations that would modify the configuration of the volume before the second mapping structure is defined; and allow operations that would modify the configuration of the volume after control of the volume has been transitioned from the first volume manager to the second volume manager.

14. The storage controller of claim 8 , wherein:

the storage controller is further adapted to disable routing of the host I/O requests to the first volume manager after transitioning control of the volume.

15. A non transitory computer readable medium embodying programmed instructions that, when executed by a processor, cause a system to perform a method for online migration of data in a system comprising a plurality of storage devices, the method comprising:

controlling, by operation of a first volume manager, a volume of the storage system mapped according to a first mapping structure, wherein the first mapping structure constrains the volume to a fixed subset of the plurality of storage devices;

defining a second mapping structure based on information defining the volume;

quiescing processing of host I/O requests directed to the volume as presently mapped according to the first mapping structure;

transitioning control of the volume from the first volume manager to a second volume manager;

commencing processing of the host I/O requests directed to the volume wherein the volume is mapped according to the second mapping structure; and

migrating, by operation of the second volume manager, data of the volume to any of the plurality of storage devices, wherein the migration is performed without interrupting processing of host I/O requests directed to the volume.

16. The storage medium of claim 15 , wherein:

migrating data of the volume further comprises selecting, by operation of the second volume manager, a preferred set of storage devices from the plurality of storage devices on which to store the data of the volume, wherein the preferred storage devices share similar performance attributes.

17. The storage medium of claim 15 , wherein:

transitioning further comprises reporting an error if the storage system determines that host I/O requests may not be quiesced without resulting in a host I/O timeout.

18. The storage medium of claim 15 , wherein:

transitioning further comprises reporting an error if the storage system predicts the transitioning will take longer than a predefined time limit.

19. The storage medium of claim 15 , wherein:

the method further comprises:

blocking operations that would modify the configuration of the volume prior to defining; and

allowing operations that would modify the configuration of the volume after transitioning.

20. The storage medium of claim 15 , wherein:

the method further comprises disabling routing of the host I/O requests to the first volume manager after transitioning the volume.

Assignments (8)
CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE PREVIOUSLY RECORDED AT REEL: 047422 FRAME: 0464. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 6, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 048883/0702 →
MERGER Recorded Oct 5, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047422/0464 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041710/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037808/0001 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (RELEASES RF 032856-0031) Recorded Feb 2, 2016
From: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
To: LSI CORPORATION; AGERE SYSTEMS LLC
Reel/Frame 037684/0039 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 3, 2015
From: LSI CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 035390/0388 →
PATENT SECURITY AGREEMENT Recorded May 8, 2014
From: LSI CORPORATION; AGERE SYSTEMS LLC
To: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
Reel/Frame 032856/0031 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 27, 2010
From: HOLT, KEITH W.; KIDNEY, KEVIN; LOGAN, JOHN G.
To: LSI CORPORATION
Reel/Frame 025203/0153 →
Continuity (1)
Related Publication 20120102286A1 · Apr 26, 2012