我有一个Elasticsearch实例出现问题,该实例拒绝启动并且停留在Initialization上。 Elaticsearch stuck using 99% cpu and all shards are Initializing
我的猜测是其中一个索引中存储的数据有问题。因此,我认为我可能会继续删除所有日志并重新开始。这不是生产系统,到目前为止可能永远不会使用日志。
但是,由于系统仍然无法尝试恢复,因此我无法使用REST API删除索引。
所以我想我可以通过删除物理文件/文件夹来手动删除它。
所以我的问题是:
最佳答案
由于您没有发布ES版本,因此我假设您正在运行2.x
版本
在我的本地版本elasticsearch-2.3.5
中,并基于我的集群配置:
cluster.name: local
数据存储在
elasticsearch-2.3.5\data\CLUSTERNAME\nodes\x\indices
其中x是节点的编号。
文件夹结构如下:
因此,如果您具有不存在复制的
only one node
,并且备份该文件夹并稍后将其还原,则可以这样做。现在,如果我们要讨论的节点不止一个。尝试执行此操作之前,您需要停止两个节点,以避免可能的冲突。我执行的步骤:
-Stop ElasticSearch
-Backup `elasticsearch-2.3.5\data\local`
-Remove `elasticsearch-2.3.5\data\local`
-Start the server
关于elasticsearch - 离线删除Elasticsearch索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41442813/