Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow multiple nodes per IP #804

Merged

Conversation

danielmitterdorfer
Copy link
Member

With this commit we expose a new provisioner variable all_node_names
which consists of all Elasticsearch node names in the cluster. This can
be used to set cluster.initial_master_nodes in order to ensure the
discovery process takes all nodes into account even if they are started
on the same host. Previously we have used the IP address for this
purpose but this is ambiguous when multiple nodes are started on the
same host.

With this commit we expose a new provisioner variable `all_node_names`
which consists of all Elasticsearch node names in the cluster. This can
be used to set `cluster.initial_master_nodes` in order to ensure the
discovery process takes all nodes into account even if they are started
on the same host. Previously we have used the IP address for this
purpose but this is ambiguous when multiple nodes are started on the
same host.
@danielmitterdorfer danielmitterdorfer added bug Something's wrong :Benchmark Candidate Management Anything affecting how Rally sets up Elasticsearch labels Oct 28, 2019
@danielmitterdorfer danielmitterdorfer added this to the 1.4.0 milestone Oct 28, 2019
@danielmitterdorfer danielmitterdorfer self-assigned this Oct 28, 2019
danielmitterdorfer added a commit to danielmitterdorfer/rally-teams that referenced this pull request Oct 28, 2019
With this commit we use the Elasticsearch node name instead of its IP to
configure `cluster.initial_master_nodes`. This avoids any ambiguity in
case multiple nodes are configured per host. For backwards-compatibility
we fallback to previous behavior if the template variable
`all_node_names` is undefined.

Relates elastic/rally#804
@danielmitterdorfer
Copy link
Member Author

Note: This requires elastic/rally-teams#34 to work as intended.

@ebadyano
Copy link
Contributor

ebadyano commented Oct 28, 2019

Should we add anything to the documentation at all to mention that starting with multiple nodes on same ip address is possible now?

@danielmitterdorfer
Copy link
Member Author

Should we add anything to the documentation at all to mention that starting with multiple nodes on same ip address is possible now?

Actually this was always meant to be possible and in fact multiple nodes also start up on a single host. The problem was that the nodes did not form a cluster due to misconfigured discovery settings in that case.

@ebadyano
Copy link
Contributor

makes sense, thank you!

Copy link
Contributor

@ebadyano ebadyano left a comment

Choose a reason for hiding this comment

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

LGTM! Thank you!

@danielmitterdorfer
Copy link
Member Author

Thanks for your review! :)

@danielmitterdorfer danielmitterdorfer merged commit 0e72e34 into elastic:master Oct 28, 2019
@danielmitterdorfer danielmitterdorfer deleted the multi-node-same-host branch October 28, 2019 14:16
danielmitterdorfer added a commit to elastic/rally-teams that referenced this pull request Oct 28, 2019
With this commit we use the Elasticsearch node name instead of its IP to
configure `cluster.initial_master_nodes`. This avoids any ambiguity in
case multiple nodes are configured per host. For backwards-compatibility
we fallback to previous behavior if the template variable
`all_node_names` is undefined.

Relates elastic/rally#804
Relates #34
danielmitterdorfer added a commit to elastic/rally-teams that referenced this pull request Oct 28, 2019
With this commit we use the Elasticsearch node name instead of its IP to
configure `cluster.initial_master_nodes`. This avoids any ambiguity in
case multiple nodes are configured per host. For backwards-compatibility
we fallback to previous behavior if the template variable
`all_node_names` is undefined.

Relates elastic/rally#804
Relates #34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
:Benchmark Candidate Management Anything affecting how Rally sets up Elasticsearch bug Something's wrong
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants