现象
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JNFZeA4m-1589961988913)(%E5%83%B5%E5%B0%B8%E7%B4%A2%E5%BC%95.assets/image-20200506100934028.png)]](https://i-blog.csdnimg.cn/blog_migrate/1824993082ce83367cd75782e8ea62f6.png)
集群有3个索引分片无法分配,查看原因:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BEMCFaXd-1589961988920)(%E5%83%B5%E5%B0%B8%E7%B4%A2%E5%BC%95.assets/image-20200506101021240.png)]](https://i-blog.csdnimg.cn/blog_migrate/9219a3be0268c7cf5abcb2b637e1cbed.png)
{
"index": "brock**********************000_7",
"shard": 0,
"primary": true,
"current_state": "unassigned",
"unassigned_info": {
"reason": "DANGLING_INDEX_IMPORTED",
"at": "2020-05-05T22:32:38.904Z",
"last_allocation_status": "no_valid_shard_copy"
},
"can_allocate": "no_valid_shard_copy",
"allocate_explanation": "cannot allocate because a previous copy of the primary shard existed but can no longer be found on the nodes in the cluster",
"node_allocation_decisions": [ ... ]
分析
DANGLING_INDEX_IMPORTED:僵尸索引/悬空索引:磁盘中存在,而集群状态中不存在的索引;
github上关于悬空索引的文章,https://github.com/elastic/ela … 18250
可能产生原因:
- 直接在物理机上删除了某个索引的UUID数据目录;
- 有节点长时间离线,索引已经删除了,但节点重新加入集群后,还保存有这个索引的信息;
- 从别的集群拷贝了一个索引的数据目录到当前集群;
- …
解决方案
1、在集群中删除僵尸索引;
2、如果步骤1执行后,僵尸索引又重新出现,则只能从物理机上硬删了
当遇到Elasticsearch集群中存在无法分配的3个索引分片时,可能面临僵尸索引(Dangling indices)问题。这类索引在磁盘上存在,但在集群状态中却找不到。产生的原因包括直接删除索引数据目录、节点长时间离线等。解决办法包括在集群内删除索引,或者在物理机上强制删除。若删除后仍出现,需深入调查并采取物理删除措施。
47

被折叠的 条评论
为什么被折叠?



