Cross-zone replicated block storage devices

US11494108B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11494108-B2
Application numberUS-201916579626-A
CountryUS
Kind codeB2
Filing dateSep 23, 2019
Priority dateSep 23, 2019
Publication dateNov 8, 2022
Grant dateNov 8, 2022

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.

The present disclosure generally relates to creating virtualized block storage devices whose data is replicated across isolated computing systems to lower risk of data loss even in wide-scale events, such as natural disasters. The virtualized device can include at least two volumes, each of which is implemented in a distinct computing system. Each volume can be implemented by at least two computing devices, a first of which is configured as a primary device to which reads from and writes to the volume are directed. Of the two volumes, one can be indicated as primary, indicating authority to accept reads to and writes from the virtualized device. A primary device of the primary volume, on obtaining a write to the volume, can replicate the write to both a secondary device of a primary volume and to the secondary volume.

First claim

Opening claim text (preview).

What is claimed is: 1. A system to provide data volumes replicated across at least two isolated computing systems, the system comprising: a first computing system storing a first replicated data volume implemented by at least a first computing device and a second computing device; and a second computing system storing a second replicated data volume implemented by at least a third first computing device and a fourth computing device, wherein the second computing system is in communication with the first computing system via a communication network but is electrically and physically isolated from the first computing system; wherein the first computing device is configured to: obtain from a client device a write to the first replicated data volume; store the write at the first computing device; replicate the write to both i) the second computing device and i) the second replicated data volume; and after acknowledgement of replication of the write to both the second computing device and the second replicated data volume, acknowledge the write to the client device; and wherein the third computing device is configured to: obtain from the first computing device the write replicated to the second replicated data volume; store the write at the third computing device; replicate the write to the fourth computing device; and acknowledge the write to the first computing device. 2. The system of claim 1 , wherein the client device is a virtual machine instance, and wherein first and second replicated data volumes represent a virtualized block storage device of the virtual machine instance. 3. The system of claim 1 , wherein first computing device is further configured to obtain reads of the first replicated data volume from the client device and to respond to the reads by providing data stored at the first computing device. 4. The system of claim 1 , wherein the write is stored at the first computing device within a write journal, and wherein the first computing device is further configured to persist the write to a physical storage device. 5. The system of claim 4 , wherein first computing device persists the write to a physical storage device using erasure coding. 6. A computer-implemented method to provide redundancy in a virtualized storage device replicated across at least two volumes, each volume being implemented by at least two computing devices and each volume existing in a computing network that is physically isolated from the other, the method computer-implemented comprising, at a first computing device of the at least two computing devices implementing a first volume of the at least two volumes: obtaining a write to the virtualized storage device from a client device; storing the write at the first computing device; replicating the write to both i) a second computing device of the at least two computing devices implementing the first volume and i) a second volume of the at least two volumes; and after acknowledgement of replication of the write to both the second computing device and the second volume, acknowledging the write to the client device. 7. The computer-implemented method of claim 6 , wherein the second computing device is configured to replicate the write to the second volume, and wherein replicating, by the first computing device, the write to the second volume of the at least two volumes comprises transmitting the write to the second computing device and obtaining acknowledgement from the second computing device that the write has been further transmitted and acknowledged at the second volume. 8. The computer-implemented method of claim 6 further comprising: obtaining an indicating that communications between the first volume and the second volume fail to satisfy a performance metric; obtaining a subsequent write to the virtualized storage device from the client device; and acknowledging the subsequent write to the client device after acknowledgement of replication of the subsequent write to the second computing device without awaiting acknowledgement of replication of the subsequent write to the second volume. 9. The computer-implemented method of claim 6 , wherein: the write represents data in a first encrypted form; replicating the write to the second computing device comprises replicating the write to the second computing device in the first encrypted form; and replicating the write to the second volume comprises transmitting the write to an encryption device configured to decrypt the data in the first encrypted form, to reencrypt the data in a second encrypted form, and to transmit the data to the second volume in the second encrypted form. 10. The computer-implemented method of claim 6 further comprising, prior to storing the write at the first computing device, verifying that the first computing device has authority as a primary computing device of the at least two computing devices implementing the first volume and that the first volume has authority as a primary volume of the at least two volumes. 11. The computer-implemented method of claim 6 further comprising periodically transmitting to a control plane device performance metrics of the first computing device. 12. The computer-implemented method of claim 11 , wherein the performance metrics include at least one of a latency incurred to replicate the write the second computing device, a number of failures to replicate writes to the second computing device, a latency incurred to replicate the write to the second volume, a number of failures to replicate writes to the second volume, a latency required to acknowledging the write to the client device after obtaining the write, or a number of failures to acknowledging writes to the client device. 13. A system to provide redundancy in a virtualized storage device replicated across at least two volumes, each volume being implemented by at least two computing devices and each volume existing in a computing network that is physically isolated from the other, the system comprising: a first computing device of the at least two computing devices implementing a first volume of the at least two volumes, the first computing device configured to: obtain a write to the virtualized storage device from a client device; store the write at the first computing device; replicate the write to both i) a second computing device of the at least two computing devices implementing the first volume and i) a second volume of the at least two volumes; and after acknowledgement of replication of the write to at least one of the second computing device and the second volume, acknowledge the write to the client device. 14. The system of claim 13 , wherein the first computing device is configured to acknowledge the write to the client device only after acknowledgement of replication of the write to both the second computing device and the second volume. 15. The system of claim 13 , wherein the first computing device is further configured to: obtain a request to attach the virtualized storage device to the client device; request i) a verification that the first computing device is a primary computing device of the at least two computing devices implementing the first volume and ii) a verification that the first volume is a primary volume of the at least two volumes replicating the virtualized storage device; and accept the request after obtaining the verification that that the first computing device is the primary computing device and the verification that the first volume is the primary volume. 16. The system of claim 15 , wherein the verification that that the first co

Assignees

Inventors

Classifications

  • G06F3/0617Primary

    in relation to availability · CPC title

  • using more than 2 mirrored copies · CPC title

  • Asynchronous techniques · CPC title

  • G06F3/065Primary

    Replication mechanisms · CPC title

  • Command handling arrangements, e.g. command buffers, queues, command scheduling · 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 US11494108B2 cover?
The present disclosure generally relates to creating virtualized block storage devices whose data is replicated across isolated computing systems to lower risk of data loss even in wide-scale events, such as natural disasters. The virtualized device can include at least two volumes, each of which is implemented in a distinct computing system. Each volume can be implemented by at least two compu…
Who is the assignee on this patent?
Amazon Tech Inc
What technology area does this patent fall under?
Primary CPC classification G06F3/0617. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Nov 08 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).