【问题标题】:Elasticsearch Snapshot Fails With RepositoryMissingExceptionElasticsearch 快照因 RepositoryMissingException 而失败
【发布时间】:2016-12-19 18:04:47
【问题描述】:

AWS 上的三节点 ElasticSearch 集群。 Bigdesk 和 Head 都显示了一个健康的集群。所有三个节点都运行 ES 1.3 和最新的 Amazon Linux 更新。当我触发如下快照请求时:

http://localhost:9200/_snapshot/taxanalyst/201409031540-snapshot?wait_for_completion=true

服务器在响应以下内容之前会中断几分钟:

{
  "snapshot": {
    "snapshot": "201409031521-snapshot",
    "indices": [
      "docs",
      "pdflog"
    ],
    "state": "PARTIAL",
    "start_time": "2014-09-03T19:21:36.034Z",
    "start_time_in_millis": 1409772096034,
    "end_time": "2014-09-03T19:28:48.685Z",
    "end_time_in_millis": 1409772528685,
    "duration_in_millis": 432651,
    "failures": [
      {
        "node_id": "ikauhFYEQ02Mca8fd1E4jA",
        "index": "pdflog",
        "reason": "RepositoryMissingException[[faxmanalips] missing]",
        "shard_id": 0,
        "status": "INTERNAL_SERVER_ERROR"
      }
    ],
    "shards": {
      "total": 10,
      "failed": 1,
      "successful": 9
    }
  }
}

这是三个不同虚拟 EC2 机器上的三个节点,但它们能够通过 9300/9200 进行通信而没有任何问题。索引和搜索按预期工作。 elasticsearch 日志文件中似乎没有任何与服务器错误相关的内容。

有谁知道这里发生了什么,或者至少从哪里开始是个好地方?

UPDATE:结果表明集群中的每个节点都需要有与您在elasticsearch集群中注册快照时指定的目录相匹配的快照目录。

我想下一个问题是:当你想 tgz up 快照目录以便存档它,或者提供一个备份集群时,只 tgz 主节点上的快照目录就足够了吗?或者您是否必须以某种方式整合所有节点的快照目录。 (这不可能吧?)

【问题讨论】:

    标签: amazon-web-services amazon-ec2 elasticsearch


    【解决方案1】:

    Elasticsearch 支持共享文件系统存储库使用共享文件系统来存储快照。 为了注册共享文件系统存储库,需要将相同的共享文件系统挂载到所有主节点和数据节点上的相同位置。

    所有你需要知道的把所有3个节点的elasticsearch.yml放入相同的repository_name。 例如:- path.repo:[/my_repository]

    【讨论】:

      【解决方案2】:

      我想你正在寻找这个用于 elasticsearch 的 aws 插件(我猜你已经安装了它来配置你的集群):https://github.com/elasticsearch/elasticsearch-cloud-aws#s3-repository

      它将允许您创建映射到 S3 存储桶的存储库。 要使用(创建/恢复/其他)快照,您需要先创建一个存储库。然后,当您对快照执行一些操作时,Elasticsearch 会直接在您的 S3 存储桶上管理它。

      【讨论】:

      • 我也看过这个,但“互联网”上的闲聊表明,如果不弃用 S3 快照,那么不鼓励使用。 (bit.ly/1wEHhuL) 当被问及改用什么时,我听到的答案是“使用 EBS”。所以我想这会给我们留下 n 个节点,这些节点带有 n 个附加的 EBS 设备,它们持有集群中每个节点状态的 n 个快照。我猜当集群出现故障时,您会启动 n 个新节点并将匹配的 EBS 附加到每个节点。听起来像是一个有趣的维护练习。话虽如此,我还是在使用 S3 快照。 :)
      • @IanC 我认为您将“快照”与旧的 elasticsearch S3“网关”混淆了,后者已在 ES 1.2 中删除。支持从 S3 备份和恢复弹性搜索数据。 groups.google.com/forum/#!msg/elasticsearch/aNUw4nFT6JE/…
      猜你喜欢
      • 1970-01-01
      • 2017-09-09
      • 2021-05-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-21
      • 2019-10-30
      • 1970-01-01
      相关资源
      最近更新 更多