Data migration in cluster environment using host copy and changed block tracking

US9400611B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9400611-B1
Application numberUS-201313798504-A
CountryUS
Kind codeB1
Filing dateMar 13, 2013
Priority dateMar 13, 2013
Publication dateJul 26, 2016
Grant dateJul 26, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Data is non-disruptively migrated from a source LUN to a target LUN in an active-active cluster with coordination of a host-based copy sweep with duplicating of ongoing writes of all hosts, using iteration and changed block tracking (CBT). During a first iteration, one host performs the copy sweep, and the locations of new application writes at other hosts are recorded in respective CBT records. In each subsequent iteration, the data blocks of the CBT-recorded writes are copied to the target LUN while the locations of new writes are recorded in new CBT records. A final iteration is done with I/O suspended to completely synchronize the target LUN with the source LUN, and the migration then proceeds to a committed state in which the target LUN is used in place of the source LUN. The one host may use write cloning or CBT recording like the other hosts.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of migrating data from a source LUN to a target LUN in a data processing system having a cluster of multiple host computers and a storage subsystem containing the source LUN and the target LUN, the data being accessed concurrently by applications of the host computers using an association mechanism in each of the host computers initially associating the data with the source LUN as the location of the data in the system, comprising: performing a synchronization as iterations of concurrent operations at the host computers, a first iteration including a copy sweep by a first host computer to copy all existing data blocks of the source LUN to the target LUN, the first iteration and each subsequent iteration including at each of second host computers recording the locations of data blocks changed by application writes to the source LUN, the recording employing a respective changed-block record of the respective second host computer, each subsequent iteration also including, for each data block location identified in the changed-block record of each of the second host computers for the preceding iteration, copying the corresponding data blocks of the source LUN to the target LUN; and upon completion of the synchronization, performing a commitment including a final iteration and a transition to operation with the target LUN, the final iteration including, for a final set of recorded locations of data blocks in the changed-block record of each of the second host computers, copying the corresponding data blocks of the source LUN to the target LUN, the transition including at each host computer disabling application access to the source LUN and modifying the association mechanism to newly associate the data with the target LUN as the location of the data in the system. 2. A method according to claim 1 , wherein during the first iteration and each subsequent iteration the first host computer clones new application writes for the source LUN to the target LUN, the cloning being coordinated with the copy sweep in the first iteration to prevent the copy sweep from overwriting data of a cloned new application write. 3. A method according to claim 2 , wherein storage space of the source and target LUNs is divided into fixed-size sequential segments and the copy sweep is done on a segment-by-segment basis for all segments of the source LUN, and wherein the cloning is coordinated with the copy sweep in the first iteration by temporarily holding application writes directed to a segment currently being copied and subsequently performing the held application writes after completion of copying of the segment. 4. A method according to claim 2 , wherein each subsequent iteration includes gathering the recorded data block locations from the changed-block records of the second host computers for the preceding iteration at the first host computer, and wherein the copying of the corresponding data blocks is performed by the first host computer, the copying being coordinated with the cloning of the new application writes at the first host computer to prevent the copying from overwriting data of a cloned new application write. 5. A method according to claim 4 , wherein each subsequent iteration includes merging the changed-block records of the second host computers at the first host computer to create a merged set of recorded data block locations, and wherein the copying of the corresponding data blocks is based on the merged set of recorded data block locations. 6. A method according to claim 2 , further including at the first host computer monitoring for failure of a cloned new application write and recording corresponding data block locations for the failed application write in a changed-block record of the first host computer, and subsequently copying the corresponding data blocks of the source LUN to the target LUN. 7. A method according to claim 1 , wherein during the first iteration and each subsequent iteration the first host computer records the locations of data blocks of new application writes for the source LUN in a changed-block record of the first host computer, and wherein each subsequent iteration includes, at the first host computer for data block locations recorded in the changed-block record of the first host computer, copying the corresponding data blocks of the source LUN to the target LUN. 8. A method according to claim 7 , wherein the copying of the corresponding data blocks for the recorded application writes of each of the second host computers is performed by the respective second host computer. 9. A method according to claim 1 , controlled by a migration controller in communication with each of the host computers, the migration controller providing a user interface and performing migration control functions in response to user commands received at the user interface, the migration control functions including initiating and monitoring the synchronization and commitment operations at each of the host computers. 10. A method according to claim 9 , wherein the migration controller is wholly located on an appliance coupled to the host computers by a communications network, and wherein each of the host computers provides an interface over a network connection to the migration controller by which the migration controller initiates and monitors the synchronization and commitment operations at each host computer. 11. A method according to claim 9 , wherein at least the user interface and a high-level control portion of the migration controller are located on the first host computer. 12. A method according to claim 11 , wherein a per-host communications portion of the migration controller is located on an appliance separate from the host computers and communicatively coupled to the first host computer to interface to the high-level control portion of the migration controller. 13. A method according to claim 11 , wherein the entirety of the migration controller is located on the first host computer, the first host computer provides an internal interface to the migration controller by which the migration controller initiates and monitors the synchronization and commitment operations at the first host computer, and each of the second host computers provides an interface over a network connection to the first host computer by which the migration controller initiates and monitors the synchronization and commitment operations at each host computer. 14. A method according to claim 9 , wherein the migration controller ensures that each host is in a setup state before the synchronization is initiated, the setup state including disabling of application access to the target LUN, and further including a transition into the synchronization from the setup state, the transition including enabling the copy sweep at the first host computer, the recording of changed data blocks at the second host computers, and either write cloning or recording of changed data blocks at the first host computer. 15. A method according to claim 9 , wherein the migration controller is operative to control the commitment by a process including: 1) initially suspending input/output to the source LUN on each host computer; 2) subsequently modifying access control at each host computer to permit access to the target LUN and disallow access to the source LUN, and stopping the recording of changed blocks at the each of the second host computers; 3) commanding the final iteration and transition of the commitment, including resuming input/output to the data on every host of the cluster. 16. A method according to claim 9 , wherein the migrati

Assignees

Inventors

Classifications

  • Physics · mapped topic

  • G06F3/0647Primary

    Migration mechanisms · CPC title

  • G06F16/275Primary

    Synchronous replication · CPC title

  • for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS] · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9400611B1 cover?
Data is non-disruptively migrated from a source LUN to a target LUN in an active-active cluster with coordination of a host-based copy sweep with duplicating of ongoing writes of all hosts, using iteration and changed block tracking (CBT). During a first iteration, one host performs the copy sweep, and the locations of new application writes at other hosts are recorded in respective CBT records…
Who is the assignee on this patent?
Emc Corp
What technology area does this patent fall under?
Primary CPC classification G06F3/0647. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jul 26 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).