ElasticSearch故障处理方案

1、 java.io.IOException: failed to find metadata for existing index  XXX

   场景描述:

        在节点启动的时候,有时会出现这类问题,导致节点重启失败。出现这种情况多是因为状态为Close的索引引起的

   处理方法:

        进入当前节点的data目录: /esdata/nodes/0/_state

        将  manifest开头的文件 删除或重命名

        再启动该节点就可以了,启动成功后该 manifest文件会自动生成。

2、 failed to create shard, failure IOException[failed to obtain in-memory shard lock]; nested: ShardLockObtainFailedException[[test-test][3]: obtaining shard lock timed out after 5000ms];

   场景描述:

        集团出现分片无法重新分配,分析原因发现示上述描述,从字面上的意思来看是当前分片被锁定,导致无法分配

        当时集群出现这类问题时:该索引没有副本,导致集群状态为红色的,使用  POST /_cluster/reroute?retry_failed=true 无法恢复。

   解决方法:

       第一种:

           首先将 将自动分片的配置关闭,通过 GET _cluster/allocation/explain  获取无法分配的分片所对应的主机信息

           杀掉当前节点,重新启动节点

            使用POST /_cluster/reroute?retry_failed=true 恢复     (本集群经验证可以)

       第二种:

           将索引关闭,再打开(网上百度的)          (由于当前索引再用,无法关闭,没有验证该方法,大家可以试试)

3、 kernel: INFO: task kthreadd:2 blocked for more than 120 seconds.

     kernel: "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.

     场景描述:

          elasticsearch版本是6.3.0,linux版本是7.2,文件系统采用的xfs: 现象是:ES节点 主机频繁夯死,ES集群状态异常。必须重启主机才能正常使用。

          查看系统日志信息,发现大量的xfs日志信息。

     解决方法:

         新建集群存储采用的ext4格式后,就没有出现过类似的情况。估计与xfs文件系统有关系。

今天就写到这吧,以后发现新的情况再补充

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值