Elasticsearch Restore失灵

在Elasticsearch 1.7.2版本中遇到snapshot的restore功能失灵问题,表现为在创建repositoryAPI时失败,最终通过重启整个集群解决。疑似Azure进行的维护升级导致的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

       最近,在备份Elasticsearch集群上发现其snapshot的restore功能失灵了,一直无法restore主集群的snapshot,每次都在调用创建repository API的时候失败。GET ~/_snapshot API返回如下的内容。而通过Azure Explorer检查相应的Azure Storage Account,snapshot-0401-72d8早已经被清除了。

{
  "auto-restore-repo" : {
    "type" : "azure",
    "settings" : {
      "container" : "snapshot-0401-72d8",
      "location_mode" : "secondary_only",
      "compress" : "true",
      "account" : "elasticsearch"
    }
  }
}


进一步检查Elasticsearch的日志,发现了下面相关错误信息:

[2016-04-12 00:02:29,526][DEBUG][cluster.service        ] [ESNode-IN_0] processing [putsitory [auto-restore-repo]]: execute
[2016-04-12 00:02:29,526][WARN ][repositories             ] [ESNode-IN_0] failed to create repository [auto-restore-repo]
org.elasticsearch.ElasticsearchIllegalStateException: trying to modify or unregister repository that is currently used
 at org.elasticsearch.repositories.RepositoriesService.ensureRepositoryNotInUse(RepositoriesService.java:420)
 at org.elasticsearch.repositories.RepositoriesService.access$000(RepositoriesService.java:55)
 at org.elasticsearch.repositories.RepositoriesService$1.execute(RepositoriesService.java:108)
 at org.elasticsearch.cluster.service.InternalClusterService$UpdateTask.run(InternalClusterService.java:374)
 at org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.runAndClean(PrioritizedEsThreadPoolExecutor.java:204)
 at org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.run(PrioritizedEsThreadPoolExecutor.java:167)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
 at java.lang.Thread.run(Thread.java:745)


       感觉是在什么地方卡住了,尝试删除auto-restore-repo并没有成功,重启了所有master节点也没有解决问题。最后,只好重启了整个集群才解决了这个问题。我们所用的版本是 1.7.2,在问题发生之前,Azure曾经对我们集群进行了日常update升级维护,很有可能就是这次维护的时候造成了restore操作卡住了,一直无法自动恢复。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值