Unified management of sync and async replication for block and file objects
First Claim
1. A method of managing replication in a data storage system, comprising:
- storing, in the data storage system, a file that provides a realization of a host file system;
establishing settings for performing (i) synchronous replication of the host file system and (ii) asynchronous replication on the host file system;
mapping the file that provides the realization of the host file system to a logical volume;
operating, by a replication session manager, a synchronous replication session on the host file system, including, in response to receiving an IO request specifying data to be written to the host file system, (i) expressing the IO request as a block-based request specifying data to be written to the logical volume, (ii) storing the data specified in the block-based request at a synchronous replication site in accordance with the established settings for performing synchronous replication on the host file system, and (iii) processing the block-based request to effect a write operation on the file that provides the realization of the host file system;
operating, by the replication session manager, an asynchronous replication session on the host file system in accordance with the established settings for performing asynchronous replication on the host file system;
storing, in the data storage system, a second file that provides a realization of a LUN;
mapping the second file to a second logical volume representing the LUN;
establishing settings for performing synchronous replication of the LUN; and
operating, by the replication session manager, a synchronous replication session on the LUN, including, in response to receiving an IO request specifying data to be written to the LUN, (i) expressing the IO request as a second block-based request specifying data to be written to the second logical volume, (ii) storing the data specified in the second block-based request at a synchronous replication site for the LUN in accordance with the established settings for performing synchronous replication on the LUN, and (iii) processing the second block-based request to effect a write operation on the second file that provides the realization of the LUN.
9 Assignments
0 Petitions
Accused Products
Abstract
A technique for managing synchronous replication and asynchronous replication of both block-based objects and file-based objects employs a common replication session manager configured from a common GUI application. The replication session manager can access different settings for different data objects (e.g., LUNs, file systems, block-based vVOLs (virtual volumes), file-based vVOLs, VMDKs, etc.), with replication settings maintained on a per-data-object basis. The replication session manager can also orchestrate synchronous and/or asynchronous replication sessions, failover, and/or recovery, for any given data object in accordance with the particular data-object-specific settings established for that object.
-
Citations
18 Claims
-
1. A method of managing replication in a data storage system, comprising:
-
storing, in the data storage system, a file that provides a realization of a host file system; establishing settings for performing (i) synchronous replication of the host file system and (ii) asynchronous replication on the host file system; mapping the file that provides the realization of the host file system to a logical volume; operating, by a replication session manager, a synchronous replication session on the host file system, including, in response to receiving an IO request specifying data to be written to the host file system, (i) expressing the IO request as a block-based request specifying data to be written to the logical volume, (ii) storing the data specified in the block-based request at a synchronous replication site in accordance with the established settings for performing synchronous replication on the host file system, and (iii) processing the block-based request to effect a write operation on the file that provides the realization of the host file system; operating, by the replication session manager, an asynchronous replication session on the host file system in accordance with the established settings for performing asynchronous replication on the host file system; storing, in the data storage system, a second file that provides a realization of a LUN; mapping the second file to a second logical volume representing the LUN; establishing settings for performing synchronous replication of the LUN; and operating, by the replication session manager, a synchronous replication session on the LUN, including, in response to receiving an IO request specifying data to be written to the LUN, (i) expressing the IO request as a second block-based request specifying data to be written to the second logical volume, (ii) storing the data specified in the second block-based request at a synchronous replication site for the LUN in accordance with the established settings for performing synchronous replication on the LUN, and (iii) processing the second block-based request to effect a write operation on the second file that provides the realization of the LUN. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A data storage apparatus, comprising a set of processing units and memory, the memory coupled to the set of processing units, the set of processing units and the memory together forming a controller constructed and arranged to:
-
store, in the data storage system, a file that provides a realization of a host file system; establish settings for performing synchronous replication of the host file system; establish settings for performing asynchronous replication on the host file system; map the file that provides the realization of the host file system to a logical volume; operate, by a replication session manager, a synchronous replication session on the host file system, including in response to receipt of an IO request specifying data to be written to the host file system, (i) expressing the IO request as a block-based request specifying data to be written to the logical volume, (ii) storing the data specified in the block-based request at a synchronous replication site in accordance with the established settings for performing synchronous replication on the host file system, and (iii) processing the block-based request to effect a write operation on the file that provides the realization of the host file system; operate, by the replication session manager, an asynchronous replication session on the host file system in accordance with the established settings for performing asynchronous replication on the host file system store, in the data storage system, a second file that provides a realization of a LUN; map the second file to a second logical volume representing the LUN; establish settings for performing synchronous replication of the LUN; and operate, by the replication session manager, a synchronous replication session on the LUN, including, in response to receipt of an IO request specifying data to be written to the LUN, (i) expressing the IO request as a second block-based request specifying data to be written to the second logical volume, (ii) storing the data specified in the second block-based request at a synchronous replication site for the LUN in accordance with the established settings for performing synchronous replication on the LUN, and (iii) processing the second block-based request to effect a write operation on the file that provides the realization of the LUN. - View Dependent Claims (13, 14)
-
-
15. A computer program product having a non-transitory computer-readable medium including instructions which, when executed by a controller of a data storage apparatus, cause the controller to perform a method of managing replication in a data storage system, the method comprising:
-
storing, in the data storage system, a file that provides a realization of a host file system; establishing settings for performing (i) synchronous replication of the host file system and (ii) asynchronous replication on the host file system; mapping the file that provides the realization of the host file system to a logical volume; operating, by a replication session manager, a synchronous replication session on the host file system, including, in response to receiving an IO request specifying data to be written to the host file system, (i) expressing the IO request as a block-based request specifying data to be written to the logical volume, (ii) storing the data specified in the block-based request at a synchronous replication site in accordance with the established settings for performing synchronous replication on the host file system, and (iii) processing the block-based request to effect a write operation on the file that provides the realization of the host file system; operating, by the replication session manager, an asynchronous replication session on the host file system in accordance with the established settings for performing asynchronous replication on the host file system; storing, in the data storage system, a second file that provides a realization of a LUN; mapping the second file to a second logical volume representing the LUN; establishing settings for performing synchronous replication of the LUN; and operating, by the replication session manager, a synchronous replication session on the LUN, including, in response to receiving an IO request specifying data to be written to the LUN, (i) expressing the IO request as a second block-based request specifying data to be written to the second logical volume, (ii) storing the data specified in the second block-based request at a synchronous replication site for the LUN in accordance with the established settings for performing synchronous replication on the LUN, and (iii) processing the IO request to effect a write operation on the second file that provides the realization of the LUN. - View Dependent Claims (16, 17)
-
-
18. A method of managing replication in a data storage system, comprising:
-
storing, in the data storage system, (i) a first file that provides a realization of a host file system and (ii) a second file that provides a realization of a LUN; establishing settings for (i) performing synchronous replication of the host file system, (ii) performing synchronous replication of the LUN, and (iii) performing asynchronous replication at least one of the host file system and the LUN; mapping (i) the first file to a first logical volume and (ii) the second file to a second logical volume; operating, by a replication session manager, a synchronous replication session on the host file system, including, in response to receiving an IO request specifying data to be written to the host file system, (i) expressing the IO request as a block-based request specifying data to be written to the first logical volume, (ii) storing the data specified in the block-based request at a synchronous replication site in accordance with the established settings for performing synchronous replication on the host file system, and (iii) processing the block-based request to effect a write operation on the first file; operating, by the replication session manager, a synchronous replication session on the LUN, including, in response to receiving an IO request specifying data to be written to the LUN, (i) expressing the IO request as a second block-based request specifying data to be written to the second logical volume, (ii) storing the data specified in the second block-based request at a synchronous replication site for the LUN in accordance with the established settings for performing synchronous replication on the LUN, and (iii) processing the second block-based request to effect a write operation on the second file; and operating, by the replication session manager, an asynchronous replication session on at least one of the host file system and the LUN in accordance with the established settings for performing asynchronous replication on said host file system and/or LUN.
-
Specification