Client-directed placement of remotely-configured service instances
US-10333789-B1 · Jun 25, 2019 · US
US10949131B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10949131-B2 |
| Application number | US-201916457853-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 28, 2019 |
| Priority date | Jun 28, 2019 |
| Publication date | Mar 16, 2021 |
| Grant date | Mar 16, 2021 |
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 first request to create a first storage volume to store a first portion of a first logical volume is received by a first block storage server instance. A second request to create a second storage volume to store a second portion of the first logical volume is received by a second block storage server instance. A third request is sent to a third block storage server instance to create a third storage volume to store the second portion of the first logical volume. The second portion of the first logical volume is stored by the third block storage server instance to the third storage volume. A data store containing an identification of each block storage server instance hosting a portion of the first logical volume is updated to remove an identification of the second block storage server instance and add an identification of the third block storage server instance.
Opening claim text (preview).
What is claimed is: 1. A computer-implemented method comprising: receiving, by a first block storage server instance, a first request to create a first storage volume to store a first portion of a first logical volume; receiving, by a second block storage server instance, a second request to create a second storage volume to store a second portion of the first logical volume; sending a third request to a third block storage server instance to create a third storage volume to store the second portion of the first logical volume; storing, by the third block storage server instance, the second portion of the first logical volume to the third storage volume; updating a data store containing an identification of each block storage server instance hosting a portion of the first logical volume to remove an identification of the second block storage server instance and add an identification of the third block storage server instance; and wherein the first block storage server instance, the second block storage server instance, and the third block storage server instance are hosted by one or more computer systems of an extension of a provider network, wherein the first request and the second request are sent from a block storage service of the provider network, and wherein the extension of the provider network is in communication with the provider network via at least an intermediate network. 2. The computer-implemented method of claim 1 , further comprising: receiving, by a block storage client, the identification of each block storage server instance hosting a portion of the first logical volume from the data store; establishing, by the block storage client, a connection to at least one block storage server instance included in the identification; receiving, by the block storage client, a first block storage operation from another instance, the first block storage operation to write a block of data to a block address of a virtual block storage device; and sending, by the block storage client, a message to the at least one block storage server instance via the connection to cause the at least one block storage server instance to write the block of data to the block address of the first storage volume. 3. The computer-implemented method of claim 2 , wherein the data store is a distributed data store comprising a plurality of nodes that independently execute a consensus protocol to update the identification. 4. The computer-implemented method of claim 3 , further comprising obtaining, by the block storage client, an identification of each node of the plurality of nodes from a service. 5. The computer-implemented method of claim 3 , wherein a node of the plurality of nodes is executed within a container hosted by the first block storage server instance. 6. The computer-implemented method of claim 5 , further comprising broadcasting, by the block storage client, a request for an identification of any node of the plurality of nodes to a plurality of block storage server instances. 7. The computer-implemented method of claim 1 , further comprising polling the first block storage server instance and the second block storage server instance for responsiveness, wherein the third request is sent in response to a determination that the second block storage server instance is unresponsive. 8. The computer-implemented method of claim 1 , wherein the first storage volume is striped across a plurality of block storage server instances and each of the plurality of block storage server instances are included in the identification. 9. The computer-implemented method of claim 1 , wherein the intermediate network is a third-party network. 10. A system comprising: one or more computing devices of an extension of a provider network, wherein the extension of the provider network is to communicate with the provider network via at least an intermediate network, and wherein the one or more computing devices include instructions that upon execution on one or more processors cause the one or more computing devices to: receive, by a first block storage server instance, a first request to create a first storage volume to store a first portion of a first logical volume; receive, by a second block storage server instance, a second request to create a second storage volume to store a second portion of the first logical volume; send a third request to a third block storage server instance to create a third storage volume to store the second portion of the first logical volume; store, by the third block storage server instance, the second portion of the first logical volume to the third storage volume; update a data store containing an identification of each block storage server instance hosting a portion of the first logical volume to remove an identification of the second block storage server instance and add an identification of the third block storage server instance; and wherein the first request and the second request are sent from a block storage service of the provider network. 11. The system of claim 10 , wherein the one or more computing devices include further instructions that upon execution on the one or more processors cause the one or more computing devices to: receive, by a block storage client, the identification of each block storage server instance hosting a portion of the first logical volume from the data store; establish, by the block storage client, a connection to at least one block storage server instance included in the identification; receive, by the block storage client, a first block storage operation from another instance, the first block storage operation to write a block of data to a block address of a virtual block storage device; and send, by the block storage client, a message to the at least one block storage server instance via the connection to cause the at least one block storage server instance to write the block of data to the block address of the first storage volume. 12. The system of claim 11 , wherein the data store is a distributed data store comprising a plurality of nodes that independently execute a consensus protocol to update the identification. 13. The system of claim 12 , wherein the one or more computing devices include further instructions that upon execution on the one or more processors cause the one or more computing devices to obtain, by the block storage client, an identification of each node of the plurality of nodes from a service. 14. The system of claim 12 , wherein a node of the plurality of nodes is executed within a container hosted by the first block storage server instance. 15. The system of claim 14 , wherein the one or more computing devices include further instructions that upon execution on the one or more processors cause the one or more computing devices to broadcast, by the block storage client, a request for an identification of any node of the plurality of nodes to a plurality of block storage server instances. 16. The system of claim 10 , wherein the one or more computing devices include further instructions that upon execution on the one or more processors cause the one or more computing devices to poll the first block storage server instance and the second block storage server instance for responsiveness, wherein the third request is sent in response to a determination that the second block storage server instance is unresponsive. 17. The system of claim 10 , wherein the first storage volume is striped across a plurality of block storage server instances and each of the plurality of block storage server instances are includ
at area level, e.g. provisioning of virtual or logical volumes · CPC title
Permissions · CPC title
by changing the path, e.g. traffic rerouting, path reconfiguration · CPC title
by allocating resources to storage systems · CPC title
in relation to availability · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.