代码之家  ›  专栏  ›  技术社区  ›  Stpete111

创建ElasticSearch快照-了解如何/在何处存储它们

  •  0
  • Stpete111  · 技术社区  · 7 年前

    我们有一个基于Linux的ElasticSearch 6.4集群,它有4个索引,我们在Linux虚拟机的Azure云上运行。我正在阅读有关创建索引快照的文档,但在快照的存储上遇到了一些困难。

    我们希望从运行集群的虚拟机上创建和存储每日快照,这样,如果虚拟机失败,一旦我们恢复并运行了虚拟机,这些快照仍然可以用于恢复。

    所以我要寻找的是一个API调用查询,我可以运行它来创建一个索引的快照(比如说索引被称为“index01”),我可以将它存储在Azure存储中的某个地方。

    这有可能吗?默认行为是否仅将快照存储在索引所在的磁盘上?如果是这样,我不确定我是否会理解这一点,就像磁盘或虚拟机发生损坏一样,您也会丢失快照。

    欢迎任何指导或建议。

    1 回复  |  直到 7 年前
        1
  •  1
  •   Val    7 年前

    你说得对。将快照存储在运行ES的相同磁盘/主机上没有多大意义。快照的全部目的是作为备份,以防发生错误,并且需要重建集群。

    幸运的是,确实有一个存储库插件 Azure storage . 后 installing the plugin 在所有节点上并重新启动它们,您可以这样创建存储库:

    PUT _snapshot/azure_backup
    {
        "type": "azure",
        "settings": {
            "container": "backup-container",
            "base_path": "backups",
            "chunk_size": "32m",
            "compress": true
        }
    }
    

    完成后,您可以轻松地 create your snapshots 这样地:

    PUT /_snapshot/azure_backup/snapshot_1
    {
      "indices": "index01",
      "ignore_unavailable": true,
      "include_global_state": true
    }