-
Notifications
You must be signed in to change notification settings - Fork 25.2k
Unable to update discovery.zen.minimum_master_nodes #10614
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
Comments
@tomas-edwardsson how many master eligible nodes do you have in the cluster? |
I have 5 nodes, 3 with node.data: true and 2 with node.data: false |
If it means that you have only 2 nodes with node.master:true setting minimum master nodes to 3 would make your cluster to inoperational until the third node with node.master : true is added. So elasticsearch prevents this situation by ignoring the setting. Check log on master. There should be a warning there. |
All the nodes have |
@tomas-edwardsson that's strange, could you post the output of the following command here
|
|
@tomas-edwardsson thanks! We can reproduce it now. An important part that was missing is that this issue only occurs with EC2 discovery plugin. |
Described in elastic/elasticsearch#10614, it's not possible with cloud discovery plugin to update dynamic settings anymore. ```sh curl -XPUT localhost:9200/_cluster/settings -d '{ "persistent" : { "discovery.zen.minimum_master_nodes" : 3 }, "transient" : { "discovery.zen.minimum_master_nodes" : 3 } }' ``` gives ```json {"acknowledged":true,"persistent":{},"transient":{}} ``` Closes #47. (cherry picked from commit 9df33a3) (cherry picked from commit a40016e)
Described in elastic/elasticsearch#10614, it's not possible with cloud discovery plugin to update dynamic settings anymore. ```sh curl -XPUT localhost:9200/_cluster/settings -d '{ "persistent" : { "discovery.zen.minimum_master_nodes" : 3 }, "transient" : { "discovery.zen.minimum_master_nodes" : 3 } }' ``` gives ```json {"acknowledged":true,"persistent":{},"transient":{}} ``` Closes #47. (cherry picked from commit 9df33a3)
Described in elastic/elasticsearch#10614, it's not possible with cloud discovery plugin to update dynamic settings anymore. ```sh curl -XPUT localhost:9200/_cluster/settings -d '{ "persistent" : { "discovery.zen.minimum_master_nodes" : 3 }, "transient" : { "discovery.zen.minimum_master_nodes" : 3 } }' ``` gives ```json {"acknowledged":true,"persistent":{},"transient":{}} ``` Closes #47.
Dynamic settings has to be injected into constructor with either @ClusterDynamicSettings or @IndexDynamicSettings. If annotations are not specified an empty instance of Dynamic Settings is injected that can lead to difficult to discover errors such as elastic#10614. This commit will make any attempt to inject unannotated dynamic settings to generate a giuce error.
Described in elastic/elasticsearch#10614, it's not possible with cloud discovery plugin to update dynamic settings anymore. ```sh curl -XPUT localhost:9200/_cluster/settings -d '{ "persistent" : { "discovery.zen.minimum_master_nodes" : 3 }, "transient" : { "discovery.zen.minimum_master_nodes" : 3 } }' ``` gives ```json {"acknowledged":true,"persistent":{},"transient":{}} ``` Closes #80. (cherry picked from commit 7749055)
Described in elastic/elasticsearch#10614, it's not possible with cloud discovery plugin to update dynamic settings anymore. ```sh curl -XPUT localhost:9200/_cluster/settings -d '{ "persistent" : { "discovery.zen.minimum_master_nodes" : 3 }, "transient" : { "discovery.zen.minimum_master_nodes" : 3 } }' ``` gives ```json {"acknowledged":true,"persistent":{},"transient":{}} ``` Closes #80.
Described in elastic/elasticsearch#10614, it's not possible with cloud discovery plugin to update dynamic settings anymore. ```sh curl -XPUT localhost:9200/_cluster/settings -d '{ "persistent" : { "discovery.zen.minimum_master_nodes" : 3 }, "transient" : { "discovery.zen.minimum_master_nodes" : 3 } }' ``` gives ```json {"acknowledged":true,"persistent":{},"transient":{}} ``` Closes #80. (cherry picked from commit 7749055) (cherry picked from commit 82bea69) Conflicts: src/main/java/org/elasticsearch/discovery/azure/AzureDiscovery.java
Described in elastic/elasticsearch#10614, it's not possible with cloud discovery plugin to update dynamic settings anymore. ```sh curl -XPUT localhost:9200/_cluster/settings -d '{ "persistent" : { "discovery.zen.minimum_master_nodes" : 3 }, "transient" : { "discovery.zen.minimum_master_nodes" : 3 } }' ``` gives ```json {"acknowledged":true,"persistent":{},"transient":{}} ``` This patch makes that working again. (cherry picked from commit 37d6897) (cherry picked from commit 7a8c7b0) Conflicts: src/main/java/org/elasticsearch/discovery/ec2/Ec2Discovery.java
Described in elastic/elasticsearch#10614, it's not possible with cloud discovery plugin to update dynamic settings anymore. ```sh curl -XPUT localhost:9200/_cluster/settings -d '{ "persistent" : { "discovery.zen.minimum_master_nodes" : 3 }, "transient" : { "discovery.zen.minimum_master_nodes" : 3 } }' ``` gives ```json {"acknowledged":true,"persistent":{},"transient":{}} ``` This patch makes that working again. (cherry picked from commit 37d6897)
Closing this issue as it has been fixed in cloud-aws, cloud-azure and cloud-gce plugins (versions not released yet) |
Dynamic settings has to be injected into constructor with either @ClusterDynamicSettings or @IndexDynamicSettings. If annotations are not specified an empty instance of Dynamic Settings is injected that can lead to difficult to discover errors such as elastic#10614. This commit will make any attempt to inject unannotated dynamic settings to generate a giuce error.
I've been trying to update
discovery.zen.minimum_master_nodes
on my elasticsearch cluster. It seems that nothing gets updated and nothing logged.Running version 1.5.1
I also tried updating only
transient
which behaved the same way.Checking the settings afterwards I get:
The text was updated successfully, but these errors were encountered: