ElasticSearch快照保留快照索引

时间:2017-04-19 15:45:45

标签: elasticsearch

请有人解释一下'快照'索引是什么,以及应该怎样做才能使我的ES群集再次变为绿色?我一直在做的就是:

我正在创建一个仍在运行1.3.4的旧ElasticSearch集群的快照。

我已经设置了文件系统存储库,然后尝试使用以下命令创建快照:

curl -XPUT 'http://127.0.0.1:9900/snapshot/es_hot_backup/snapshot_1'

然而,这给出了一个错误:

{"error":"MapperParsingException[failed to parse, document is empty]","status":400}

使用' ignore_unavailable'再次运行命令设置,像这样:

curl -XPUT "http://127.0.0.1:9900/_snapshot/es_hot_backup/snapshot_1" -d '{
     "ignore_unavailable": true
}'

该命令似乎有效

{"accepted":true}

但是现在群集的状态不再是绿色,因为它似乎是一个快照'已创建索引,但这意味着它不会在群集中复制:

http://127.0.0.1:9900/_cat/shards?v


index    shard prirep state      docs store ip         node         
snapshot 2     p      STARTED       0  115b 172.18.0.2 Space Turnip 
snapshot 2     r      UNASSIGNED                                    
snapshot 0     p      STARTED       0  115b 172.18.0.2 Space Turnip 
snapshot 0     r      UNASSIGNED                                    
snapshot 3     p      STARTED       0  115b 172.18.0.2 Space Turnip 
snapshot 3     r      UNASSIGNED                                    
snapshot 1     p      STARTED       0  115b 172.18.0.2 Space Turnip 
snapshot 1     r      UNASSIGNED                                    
snapshot 4     p      STARTED       0  115b 172.18.0.2 Space Turnip 
snapshot 4     r      UNASSIGNED                                    

(我最初开始在生产中运行快照,但是在初始快照命令发出奇怪错误后切换到测试环境。是的,我应该从一开始就在测试中完成。:p)。

请有人建议我应该如何处理非复制索引,以便使ElasticSearch集群再次变为绿色。

1 个答案:

答案 0 :(得分:1)

你的第一个命令是错误的:没有snapshot个端点,但是_snapshot个端点(注意下划线)。当您添加ignore_unavailable选项时,您还将端点更改为正确的端点。使用未知的snapshot端点,您刚刚告诉ES创建snapshot索引。

此时,您可以安全地删除snapshot索引。