【问题标题】:how to delete elasticsearch cross cluster search seed 5.5.1-1如何删除elasticsearch跨集群搜索种子5.5.1-1
【发布时间】:2017-08-09 03:39:28
【问题描述】:

我正在运行 elasticsearch 5.5.1-1 和 x-pack 进行监控。

Elasticsearch 的文档说我应该能够将以下代码添加到我的 elasticsearch.yml 文件中以进行跨集群搜索播种:

search:
    remote:
        cluster_one: 
            seeds: 1.1.1.1:9300
        cluster_two: 
            seeds: 2.2.2.2:9300

那没用,所以我按如下方式使用 API:

PUT _cluster/settings
{
  "persistent": {
    "search": {
      "remote": {
        "cluster_one": {
          "seeds": [
            "1.1.1.1:9300"
          ]
        },
        "cluster_two": {
          "seeds": [
            "2.2.2.2:9300"
          ]
        }
      }
    }
  }
}

效果很好,但是我需要删除 cluster_one 直到它升级到 5.5.1-1,根据 elasticsearch 的文档说应该如下完成:

PUT _cluster/settings
{
  "persistent": {
    "search": {
      "remote": {
        "cluster_one": {
          "seeds": null 
        }
      }
    }
  }
}

好像我得到了确认:

    {
      "acknowledged" : true,
      "persistent" : { },
      "transient" : { }
    }

但是,如果我 curl 集群设置,我仍然会看到两个节点如下:

   {
      "persistent" : {
        "search" : {
          "remote" : {
            "cluster_one" : {
              "seeds" : [
                "1.1.1.1:9300"
              ]
            },
            "cluster_two" : {
              "seeds" : [
                "2.2.2.2:9300"
              ]
            }
          }
        }
      },
      "transient" : { }
    }

我认为我不需要在 API 调用后重新启动 elasticsearch,但我也尝试过也无济于事。

我还使用了引用/大写 null 并得到了这个返回消息,这让我相信 null 是一个有效值:

{
  "error" : {
    "root_cause" : [
      {
        "type" : "json_parse_exception",
        "reason" : "Unrecognized token 'NULL': was expecting 'null', 'true', 'false' or NaN\n at [Source: org.elasticsearch.transport.netty4.ByteBufStreamInput@6053e99; line: 7, column: 25]"
      }

【问题讨论】:

  • 找到了解决方案……所以我执行了降级/升级,希望它能移除种子……它没有。我带着同样的希望执行了卸载/重新安装……它仍然没有删除种子。我使用 locate 查找文件系统中的每个文件,并为 IP 查找每个文件,并找到其中唯一包含 IP 的文件:/var/lib/elasticsearch/nodes/0/_state/global-14.st 我 rm'ed 那个文件并重新启动 elasticsearch,种子设置终于消失了。

标签: elasticsearch elasticsearch-5


【解决方案1】:

在我的 elasticsearch 5.5 安装中使用方括号中的“null”:

PUT _cluster/settings
{
  "persistent": {
    "search": {
      "remote": {
        "cluster_one": {
          "seeds": [
            null 
          ]
        }
      }
    }
  }
}

【讨论】:

  • 也适合我。
  • 我有 3 颗种子,但这没有用。我不得不改用这个:"seeds": [ null, null, null ],它永远杀死了它
猜你喜欢
  • 2020-03-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多