Cluster fault detection
editCluster fault detection
editThe elected master periodically checks each of the nodes in the cluster to ensure that they are still connected and healthy. Each node in the cluster also periodically checks the health of the elected master. These checks are known respectively as follower checks and leader checks.
Elasticsearch allows these checks to occasionally fail or timeout without
taking any action. It considers a node to be faulty only after a number of
consecutive checks have failed. You can control fault detection behavior with
cluster.fault_detection.*
settings.
If the elected master detects that a node has disconnected, however, this situation is treated as an immediate failure. The master bypasses the timeout and retry setting values and attempts to remove the node from the cluster. Similarly, if a node detects that the elected master has disconnected, this situation is treated as an immediate failure. The node bypasses the timeout and retry settings and restarts its discovery phase to try and find or elect a new master.
Additionally, each node periodically verifies that its data path is healthy by
writing a small file to disk and then deleting it again. If a node discovers
its data path is unhealthy then it is removed from the cluster until the data
path recovers. You can control this behavior with the
monitor.fs.health
settings.
The elected master node will also remove nodes from the cluster if nodes are unable to apply an updated cluster state within a reasonable time. The timeout defaults to 2 minutes starting from the beginning of the cluster state update. Refer to Publishing the cluster state for a more detailed description.
Troubleshooting an unstable cluster
editSee Troubleshooting an unstable cluster.
Diagnosing disconnected
nodes
editSee Diagnosing disconnected
nodes.
Diagnosing lagging
nodes
editDiagnosing follower check retry count exceeded
nodes
editSee Diagnosing follower check retry count exceeded
nodes.
Diagnosing ShardLockObtainFailedException
failures
editSee Diagnosing ShardLockObtainFailedException
failures.