【问题标题】:Elasticsearch Tribe node configurationElasticsearch Tribe 节点配置
【发布时间】:2016-05-03 08:34:27
【问题描述】:

我是 Elasticsearch 的新手,正在尝试在 Elasticsearch 中设置一个部落节点。 抱歉,如果问题不是很聪明,但我需要帮助。

我正在使用在 RHEL Server 6.6 和 Java 1.7.8 上运行的 Elasticserach 2.3.1。 我有 2 个集群,每个集群中有 1 个主节点和 1 个数据节点。

当我尝试在集群 1 中设置和启动部落节点时,我收到错误消息:

我的部落节点设置是:

 tribe:
 sample-cluster1:
 cluster.name: sample-cluster1
 discovery.zen.ping.unicast.hosts: ["host1", "host2"]
 discovery.zen.ping.multicast.enabled: false 
 sample-cluster2: 
 cluster.name: sample-cluster2
 discovery.zen.ping.unicast.hosts: ["host3", "host4"]
 discovery.zen.ping.multicast.enabled: false 

我收到以下错误:

Exception in thread "main" SettingsException[Failed to load settings from [elasticsearch.yml]]; nested: ElasticsearchParseException[duplicate settings key [cluster.name] found at line number [34], column number [16], previous value [sample-cluster1], current value [sample-cluster2]];
Likely root cause: ElasticsearchParseException[duplicate settings key [cluster.name] found at line number [34], column number [16], previous value [sample-cluster1], current value [sample-cluster2]]
        at org.elasticsearch.common.settings.loader.XContentSettingsLoader.serializeValue(XContentSettingsLoader.java:151)
        at org.elasticsearch.common.settings.loader.XContentSettingsLoader.serializeObject(XContentSettingsLoader.java:109)
        at org.elasticsearch.common.settings.loader.XContentSettingsLoader.load(XContentSettingsLoader.java:67)
        at org.elasticsearch.common.settings.loader.XContentSettingsLoader.load(XContentSettingsLoader.java:45)
        at org.elasticsearch.common.settings.loader.YamlSettingsLoader.load(YamlSettingsLoader.java:46)
        at org.elasticsearch.common.settings.Settings$Builder.loadFromStream(Settings.java:1071)
        at org.elasticsearch.common.settings.Settings$Builder.loadFromPath(Settings.java:1058)
        at org.elasticsearch.node.internal.InternalSettingsPreparer.prepareEnvironment(InternalSettingsPreparer.java:88)
        at org.elasticsearch.bootstrap.Bootstrap.initialSettings(Bootstrap.java:202)
        at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:241)
        at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:35)

但是,如果我在第二个集群设置中更改配置,则没有错误并且服务器启动:

我修改的设置:

sample-cluster1:
 cluster.name: sample-cluster1
 discovery.zen.ping.unicast.hosts: ["host1", "host2"]
 discovery.zen.ping.multicast.enabled: false 
 sample-cluster2: 
 cluster.name1: sample-cluster2
 discovery.zen.ping.unicast.hosts1: ["host3", "host4"]
 discovery.zen.ping.multicast.enabled1: false 

我不确定第一个配置中缺少什么以及第二个配置是否正确。我假设我无法更改弹性搜索键:

cluster.name to cluster.name1
discovery.zen.ping.unicast.hosts to discovery.zen.ping.unicast.hosts1
discovery.zen.ping.multicast.enabled to discovery.zen.ping.multicast.enabled1

【问题讨论】:

  • 我会说,尝试从配置中删除 `discovery.zen.ping.multicast.enabled: false`,如果它启动则很好,否则查看集群是否能够通话删除 discovery.zen.ping.unicast.hosts: 再试一次

标签: elasticsearch


【解决方案1】:

找到了修复程序,现在可以使用了。这是一个愚蠢的错误。 解决方案是我必须为第二个集群配置中的所有参数添加一个额外的空格。

sample-cluster1:
 cluster.name: sample-cluster1
 discovery.zen.ping.unicast.hosts: ["host1", "host2"]
 discovery.zen.ping.multicast.enabled: false 
sample-cluster2: 
  cluster.name: sample-cluster2
  discovery.zen.ping.unicast.hosts: ["host3", "host4"]
  discovery.zen.ping.multicast.enabled: false 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多