Node Clustering Configuration
AssigneeElasticsearch B.V.
InventorsYannick Welsch, David Christopher Turner
Life of this patent
Estimating the term…
Abstract
Node clustering configuration is disclosed herein. An example method includes determining nodes of a cluster, each of the nodes having a unique identifier and a cluster identifier for the cluster, determining a voting configuration for the cluster, the voting configuration defining a quorum of master-eligible nodes of the nodes, the voting configuration being adaptable so as to maintain an optimal level of fault tolerance for the cluster, adding and removing nodes that can change the voting configuration, configuring a cluster configuration through an API, and electing one of the master-eligible nodes as a master node.
Claims21
A method, comprising:
- determining nodes of a cluster, each of the nodes having a unique identifier and a cluster identifier for the cluster;
- determining a voting configuration for the cluster based on a cluster state and a voting configuration exclusions list, the exclusions list preventing a listed node from returning to the voting configuration, the voting configuration defining a quorum of master-eligible nodes of the nodes, the voting configuration being adaptable so as to maintain an optimal level of fault tolerance for the cluster;
- and
- electing one of the master-eligible nodes as a master node.
The method according to claim 5, further comprising determining the cluster to be in an unavailable state when the number of nodes in the cluster falls below an available node threshold.
A method, comprising:
- bootstrapping a cluster by:
- determining at least three master-eligible nodes;
- resolving a list of names to a persistent node IDs after discovery for the at least three master-eligible nodes;
- allowing the master-eligible nodes to perform an automatic discovery process to create a cluster based on a cluster state and a voting configuration exclusions list, the exclusions list preventing a listed node from returning to the voting configuration, each of the master-eligible nodes having a unique identifier and a cluster identifier;
- establishing an optimal level of fault tolerance for the cluster using a voting configuration;
- and
- reconfiguring the voting configuration based on a change to the cluster, the reconfiguring comprising updating the cluster state based on acceptance by a quorum in a current voting configuration and a quorum in a target voting configuration.
A method of reconfiguring a cluster, comprising:
- selecting one or more nodes to be removed;
- determine a count of the master eligible nodes in the cluster;
- determine a number of master eligible nodes within the one or more nodes to be removed;
- remove the selected one or more nodes if the number is less than half the count;
- remove less than the half of the number of the master eligible nodes in the selected one or more nodes if the number is greater than half the count and auto-reconfigure the cluster;
- and
- remove remaining the nodes that have not been removed from the selected one or more nodes.
Dependencies are inferred from the claim text.