Skip to content

[Zen2] Best-effort cluster formation if unconfigured#36215

Merged
DaveCTurner merged 20 commits intoelastic:masterfrom
DaveCTurner:2018-12-04-best-effort-cluster-in-development-mode
Dec 7, 2018
Merged

[Zen2] Best-effort cluster formation if unconfigured#36215
DaveCTurner merged 20 commits intoelastic:masterfrom
DaveCTurner:2018-12-04-best-effort-cluster-in-development-mode

Conversation

@DaveCTurner
Copy link
Copy Markdown
Member

In real deployments it is important that clusters are properly configured to
avoid accidentally forming multiple independent clusters at cluster
bootstrapping time. However we also expect to be able to unpack Elasticsearch
and start up one or more nodes without any up-front configuration, and have
them do their best to find each other and form a cluster after a few seconds.

This change adds a delayed automatic bootstrapping process to nodes that start
up with no relevant settings set to support the desired out-of-the-box
experience without compromising safety in properly-configured deployments.

In real deployments it is important that clusters are properly configured to
avoid accidentally forming multiple independent clusters at cluster
bootstrapping time. However we also expect to be able to unpack Elasticsearch
and start up one or more nodes without any up-front configuration, and have
them do their best to find each other and form a cluster after a few seconds.

This change adds a delayed automatic bootstrapping process to nodes that start
up with no relevant settings set to support the desired out-of-the-box
experience without compromising safety in properly-configured deployments.
@DaveCTurner DaveCTurner added >enhancement v7.0.0 :Distributed/Cluster Coordination Cluster formation and cluster state publication, including cluster membership and fault detection. labels Dec 4, 2018
@DaveCTurner DaveCTurner requested a review from ywelsch December 4, 2018 14:24
@elasticmachine
Copy link
Copy Markdown
Collaborator

Pinging @elastic/es-distributed

Copy link
Copy Markdown
Contributor

@ywelsch ywelsch left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A few minor comments, looks good o.w.

@ywelsch ywelsch mentioned this pull request Dec 4, 2018
61 tasks
@DaveCTurner DaveCTurner requested a review from ywelsch December 5, 2018 09:35
@DaveCTurner DaveCTurner changed the base branch from zen2 to master December 6, 2018 08:25
}

if (unconfiguredBootstrapTimeout != null) {
logger.info("no discovery configuration found, will perform best-effort cluster bootstrapping after [{}] " +
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we avoid this message if the cluster is already bootstrapped?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can avoid the whole cluster bootstrap service in that case. I pushed 43fdbd0.

@DaveCTurner DaveCTurner requested a review from ywelsch December 7, 2018 07:45
Copy link
Copy Markdown
Contributor

@ywelsch ywelsch left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@DaveCTurner
Copy link
Copy Markdown
Member Author

@elasticmachine please run the Gradle build tests 2

@DaveCTurner DaveCTurner merged commit c32e4fb into elastic:master Dec 7, 2018
@DaveCTurner DaveCTurner deleted the 2018-12-04-best-effort-cluster-in-development-mode branch December 7, 2018 12:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

>breaking :Distributed/Cluster Coordination Cluster formation and cluster state publication, including cluster membership and fault detection. >enhancement v7.0.0-beta1

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants