Virtualizing shared computing resources
US-2022066807-A1 · Mar 3, 2022 · US
US12093576B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12093576-B2 |
| Application number | US-202117155381-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 22, 2021 |
| Priority date | Jan 22, 2021 |
| Publication date | Sep 17, 2024 |
| Grant date | Sep 17, 2024 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A technique for deploying virtual volumes in a metro cluster across first and second arrays includes impersonating a third array that purports to host single-site virtual volumes. The technique further includes mapping the single-site virtual volumes purportedly hosted by the third array to respective pairs of actual virtual volumes. Each pair includes a first virtual volume in the first array and a second virtual volume in the second array and realizes a stretched virtual volume, with writes being mirrored between the virtual volumes of each pair.
Opening claim text (preview).
What is claimed is: 1. A method of deploying virtual volumes in a metro cluster involving a first array and a second array, comprising: operating a software component that impersonates a third array for hosting single-site virtual volumes, the third array and the single-site virtual volumes of the third array existing virtually as constructions of the software component but not physically; transforming, by the software component, a single-site virtual volume hosted by the third array to first and second virtual volumes hosted by the first and second arrays, respectively, such that the first and second virtual volumes form a stretched virtual volume corresponding to the single-site virtual volume; and configuring mirroring between the first virtual volume and the second virtual volume to maintain data consistency therebetween, wherein the method further comprises operating a VMAM (virtual machine administrative manager) that recognizes single-site virtual volumes but does not recognize stretched virtual volumes, and administering the single-site virtual volume that corresponds to the stretched virtual volume using the VMAM. 2. The method of claim 1 , wherein the software component is operatively coupled to the VMAM configured to administer single-site virtual volumes, wherein the VMAM is configured to administer the single-site virtual volume hosted by the third array and one or more virtual machines stored therein, and wherein the method further comprises mapping a command from the VMAM pertaining to the single-site virtual volume to corresponding instructions pertaining to the first and second virtual volumes. 3. The method of claim 2 , further comprising creating a stretched storage container that spans between the first array and the second array, the stretched storage container including a first storage container operating in the first array and a second storage container operating in the second array, the first storage container and the second storage container having a common identifier. 4. The method of claim 3 wherein, in response to creating a new virtual volume in the stretched container, the method further comprises implementing the new virtual volume as a stretched virtual volume having a first instance in the first array and a second instance in the second array. 5. The method of claim 4 , wherein creating the new virtual volume is performed in response to the software component receiving a command from the VMAM to create a new virtual volume. 6. The method of claim 4 , wherein creating the new virtual volume in the stretched container includes configuring the first instance in the first array and the second instance in the second array with a common virtual-volume identifier, such that the first instance and the second instance share the same virtual-volume identifier. 7. The method of claim 4 wherein, in response to creating another virtual volume outside the stretched container, the method further comprises implementing the other virtual volume as an un-stretched virtual volume that exists in only one of the first array or the second array. 8. The method of claim 1 , wherein the first and second virtual volumes are deployed with uniform host connectivity, such that a host has access to both virtual volumes of the stretched virtual volume in the respective arrays. 9. The method of claim 8 , further comprising: establishing a first protocol endpoint (PE) in the first array for enabling host access to the first virtual volume; establishing a second PE in the second array for enabling host access to the second virtual volume; and providing a shared identifier for both the first PE and the second PE, such that the first PE and the second PE form a stretched PE that appears as a single PE to hosts. 10. The method of claim 9 , further comprising: the first array exposing the stretched PE to the host as ALUA (Asymmetric Logical Unit Access) active optimized; and the second array exposing the stretched PE to the host as ALUA active non-optimized. 11. The method of claim 1 , wherein the first and second virtual volumes are deployed with non-uniform host connectivity, such that a host has access to the first virtual volume in the first array but not to the second virtual volume in the second array. 12. The method of claim 11 , further comprising: binding the first virtual volume in the first array to a first protocol endpoint (PE); binding the second virtual volume in the second array to a second PE; and providing the first PE and the second PE with respective identifiers that are different from each other. 13. A method of deploying virtual volumes in a metro cluster involving a first array and a second array, comprising: forming a stretched storage container between the first array and the second array at least in part by assigning a first common identifier to both a first storage container in the first array and a second storage container in the second array; forming a stretched virtual volume in the stretched storage container between the first array and the second array at least in part by assigning a second common identifier to both a first virtual volume in the first storage container and a second virtual volume in the second storage container; operating a software component that impersonates a third array for hosting single-site virtual volumes, the third array and the single-site virtual volumes of the third array existing virtually as constructions of the software component but not physically; and exposing the first virtual volume and the second virtual volume of the stretched virtual volume via respective protocol endpoints to one or more hosts, wherein the method further comprises operating a VMAM (virtual machine administrative manager) that recognizes single-site virtual volumes but does not recognize stretched virtual volumes, and administering a single-site virtual volume that corresponds to the stretched virtual volume using the VMAM. 14. A computer program product including a set of non-transitory, computer-readable media having instructions which, when executed by control circuitry of a computerized apparatus, cause the computerized apparatus to perform a method of deploying virtual volumes in a metro cluster involving a first array and a second array, the method comprising: operating a software component that impersonates a third array for hosting single-site virtual volumes, the third array and the single-site virtual volumes of the third array existing virtually as constructions of the software component but not physically; transforming, by the software component, a single-site virtual volume hosted by the third array to first and second virtual volumes hosted by the first and second arrays, respectively, such that the first and second virtual volumes form a stretched virtual volume corresponding to the single-site virtual volume; and configuring mirroring between the first virtual volume and the second virtual volume to maintain data consistency therebetween, wherein the method further comprises operating a VMAM (virtual machine administrative manager) that recognizes single-site virtual volumes but does not recognize stretched virtual volumes, and administering the single-site virtual volume that corresponds to the stretched virtual volume using the VMAM. 15. The computer program product of claim 14 , wherein the first and second virtual volumes are deployed with uniform host connectivity, such that a host has access to both virtual volumes of the stretched virtual volume in the respective arrays. 16. The computer program product of claim 15 , wherein
Improving or facilitating administration, e.g. storage management · CPC title
Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title
Disk arrays, e.g. RAID, JBOD · CPC title
Replication mechanisms · CPC title
at area level, e.g. provisioning of virtual or logical volumes · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.