US11539793B1ActiveUtility
Responding to membership changes to a set of storage systems that are synchronously replicating a dataset
Est. expiryMar 15, 2038(~11.7 yrs left)· nominal 20-yr term from priority
G06F 11/2076G06F 16/178G06F 3/064G06F 3/0619G06F 3/065G06F 3/067H04L 67/1095H04L 67/1097
97
PatentIndex Score
5
Cited by
215
References
20
Claims
Abstract
Determining active membership among a set of storage systems, including: determining, by a cloud-based storage system among the set of storage systems, that a membership event corresponds to a change in membership to the set of storage systems synchronously replicating the dataset; applying, in dependence upon the membership event, one or more membership protocols to determine a new set of storage systems to synchronously replicate the dataset; and for one or more I/O operations directed to the dataset, applying the one or more I/O operations to the dataset synchronously replicated by the new set of storage systems.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1. A method comprising:
detecting a change in membership to a set of storage systems synchronously replicating a dataset; and
for one or more I/O operations directed to the dataset, applying the one or more I/O operations to the dataset synchronously replicated by a new set of storage systems, wherein storage systems synchronously replicating the dataset are included in a membership data structure of in-sync members, and wherein in-sync members correspond to a management entity representing the dataset, a set of managed objects, and a set of management operations.
2. The method of claim 1 , wherein at least one of the storage systems is a cloud-based storage system that includes a plurality of cloud computing instances that respectively store a portion of the dataset.
3. The method of claim 2 , wherein the plurality of cloud computing instances are included in a data structure of cloud computing instance members.
4. The method of claim 3 , wherein responsive to detecting a change in membership to a set of storage systems synchronously replicating a dataset, one or more of the cloud computing instances apply one or more membership protocols to determine a new set of cloud computing instances to store a complete version of the dataset.
5. The method of claim 1 , wherein the membership data structure is stored on each of the storage systems.
6. The method of claim 1 further comprising determining the new set of storage systems to synchronously replicate the dataset based on one or more membership protocols.
7. The method of claim 1 , wherein each storage system in the membership data structure corresponds to a respective quantity of votes, and wherein a quorum protocol specifies that a majority of votes from a subset of the storage systems is required for the subset of storage systems to detach a storage system that is not a member of the subset of storage systems.
8. The method of claim 1 , wherein an external management protocol specifies that, in response to detecting the change in membership, each individual storage system of the set of storage systems request permission from a member storage system of the membership data structure prior to attaching or detaching a given storage system from the membership data structure, wherein the member storage system comprises a highly available cluster, a distributed configuration tool, or a distributed database.
9. The method of claim 1 , wherein a racing protocol specifies that, in response to detecting the change in membership, each individual storage system of the set of storage systems attempt to access an exclusively accessible resource provided by a computer system that is not included in the membership data structure, and wherein a storage system that gains access to the exclusively accessible resource is able to, to the exclusion of other storage systems in the membership data structure, propagate a membership change for the membership data structure.
10. The method of claim 9 , wherein the racing protocol is a mediation protocol for mediating between storage systems.
11. A cloud-based storage system in a cloud computing environment, the cloud-based storage system including:
one or more cloud computing instances with local block storage;
cloud-based object storage; and
one or more storage controller applications, each storage controller application executing in a cloud computing instance, wherein the one or more storage controllers are configured to:
detect a change in membership to a set of storage systems synchronously replicating a dataset; and
for one or more I/O operations directed to the dataset, apply the one or more I/O operations to the dataset synchronously replicated by a new set of storage systems, wherein storage systems synchronously replicating the dataset are included in a membership data structure of in-sync members, and wherein in-sync members correspond to a management entity representing the dataset, a set of managed objects, and a set of management operations.
12. The cloud-based storage system of claim 11 , wherein the one or more cloud computing instances respectively store a portion of the dataset.
13. The cloud-based storage system of claim 12 , wherein the one or more cloud computing instances are included in a data structure of cloud computing instance members.
14. The method of claim 13 , wherein responsive to detecting a change in membership to a set of storage systems synchronously replicating a dataset, one or more of the cloud computing instances apply one or more membership protocols to determine a new set of cloud computing instances to store a complete version of the dataset.
15. The method of claim 11 , wherein the membership data structure is stored on each of the storage systems.
16. The method of claim 11 wherein the one or more storage controllers are further configured to determine the new set of storage systems to synchronously replicate the dataset based on one or more membership protocols.
17. The method of claim 11 , wherein each storage system in the membership data structure corresponds to a respective quantity of votes, and wherein a quorum protocol specifies that a majority of votes from a subset of the storage systems is required for the subset of storage systems to detach a storage system that is not a member of the subset of storage systems.
18. The method of claim 11 , wherein an external management protocol specifies that, in response to detecting the change in membership, each individual storage system of the set of storage systems request permission from a member storage system of the membership data structure-prior to attaching or detaching a given storage system from the membership data structure, wherein the member storage system comprises a highly available cluster, a distributed configuration tool, or a distributed database.
19. The method of claim 11 , wherein a racing protocol specifies that, in response to detecting the change in membership, each individual storage system of the set of storage systems attempt to access an exclusively accessible resource provided by a computer system that is not included in the membership data structure, and wherein a storage system that gains access to the exclusively accessible resource is able to, to the exclusion of other storage systems in the membership data structure, propagate a membership change for the membership data structure.
20. A method comprising:
detecting, by a hardware-based storage system in communication with a cloud-based storage system, that a membership event at the cloud-based storage system corresponds to a change in membership to the set of storage systems synchronously replicating a dataset; and
for one or more I/O operations directed to the dataset, applying the one or more I/O operations to the dataset synchronously replicated by a new set of storage systems, wherein storage systems synchronously replicating the dataset are included in a membership data structure of in-sync members, and wherein in-sync members correspond to a management entity representing the dataset, a set of managed objects, and a set of management operations.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.