【问题标题】:How to move elasticsearch nodes between two locations如何在两个位置之间移动弹性搜索节点
【发布时间】:2019-03-07 22:04:22
【问题描述】:

我有 elasticsearch 设置,因此它将数据存储在两个位置,这意味着我有 elasticsearch.yml

path.data: /path_one/es_data,/path_two/elasticsearch

我希望 elasticsearch 能够自动找出更多可用空间并尽可能存储新传入的数据,但相反,我发现它在任何一个位置内存不足时开始崩溃。所以我想将一个节点从 path_one 移动到 path_two。

目前是这样的

ls -lha /path_one/es_data/nodes/0/indices/
drwxr-xr-x 3 elasticsearch elasticsearch 4.0K Mar  7 03:13 A4XXnhNdTwKILyeE39UosA
drwxr-xr-x 3 elasticsearch elasticsearch 4.0K Mar  7 03:13 C2BPWKL4T3-jHIfZXNKG6g
drwxr-xr-x 3 elasticsearch elasticsearch 4.0K Mar  7 03:13 c8mFFi56RAyRYNpHOUvG4g
drwxr-xr-x 6 elasticsearch elasticsearch 4.0K Mar  7 03:13 DEk-qwdnSLOHbP_-nAhSdw
drwxr-xr-x 3 elasticsearch elasticsearch 4.0K Mar  7 03:13 kV32aUcET1WrlKXWOunGhg
drwxr-xr-x 3 elasticsearch elasticsearch 4.0K Mar  7 03:13 pGmjsSJHRAiMUC5paYfjag
drwxr-xr-x 3 elasticsearch elasticsearch 4.0K Mar  7 03:13 T1k45bs2SUGHJ6dJniPjZg

ls -lha /path_two/elasticsearch/nodes/0/indices/
drwxr-xr-x 4 elasticsearch elasticsearch 4.0K Mar  7 03:13 A4XXnhNdTwKILyeE39UosA
drwxr-xr-x 4 elasticsearch elasticsearch 4.0K Mar  7 03:13 C2BPWKL4T3-jHIfZXNKG6g
drwxr-xr-x 4 elasticsearch elasticsearch 4.0K Mar  7 03:13 c8mFFi56RAyRYNpHOUvG4g
drwxr-xr-x 5 elasticsearch elasticsearch 4.0K Mar  7 03:13 DEk-qwdnSLOHbP_-nAhSdw
drwxr-xr-x 4 elasticsearch elasticsearch 4.0K Mar  7 03:13 pGmjsSJHRAiMUC5paYfjag
drwxr-xr-x 3 elasticsearch elasticsearch 4.0K Mar  7 03:13 

T1k45bs2SUGHJ6dJniPjZg drwxr-xr-x 4 elasticsearch elasticsearch 4.0K Mar 7 03:13 XpHUz15oTbGG0Bvnf2xZsw

所以我的第一个问题是,为什么两个位置都存在一些节点?我的第二个问题是我是否可以

  1. 停止弹性搜索
  2. 复制节点
  3. 重启弹性搜索

或者我是否需要做更多?

编辑:我在日志文件中发现了一些看起来相关的消息

[2019-03-07T17:08:21,910][WARN ][o.e.c.r.a.DiskThresholdMonitor] [WU6cQ-o] high disk watermark [90%] exceeded on [WU6cQ-oTR2Ssg3LzoI4_yg][WU6cQ-o][/var/lib/elasticsearch/elasticsearch/nodes/0] free: 984.7mb[1.6%], shards will be relocated away from this node
[2019-03-07T17:08:51,944][WARN ][o.e.g.DanglingIndicesState] [WU6cQ-o] [[paper-index/XpHUz15oTbGG0Bvnf2xZsw]] can not be imported as a dangling index, as index with same name already exists in cluster metadata

所以看起来 elasticsearch 正在尝试移动索引,但不能因为在其他位置已经有这些索引的副本?我可以在有更多空间的位置删除副本吗?

【问题讨论】:

  • 嗨@carl,你检查我的答案了吗?对你有用吗?

标签: elasticsearch


【解决方案1】:

一个 Elasticsearch 实例 corresponds to one node。在path.data 中设置两个位置并不意味着您有两个节点在同一主机上运行,​​而是您将节点的数据存储在两个位置上(请参阅documentation)。因此,要回答您的第一个问题,预计同一节点的数据会跨位置分布。

至于您的第二个问题,我不明白您的流程,主要是因为我不确定您正在运行多个节点。

Elastic documentation,我们所知道的关于跨位置的数据分布的所有信息是,Elasticsearch 将与同一分片相关的文件存储在同一位置。

希望对你有帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-09
    • 2021-10-29
    • 2021-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多