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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ElasticSearch快照创建 - 了解如何/在何处存储它们相关的知识,希望对你有一定的参考价值。

我们有一个基于Linux的ElasticSearch 6.4集群,其中有4个索引,我们在Linux VM上的Azure云中运行。我正在阅读有关创建索引快照的文档,但是对快照的存储有点困惑。

我们希望从运行群集的VM创建和存储每日快照,以便在VM出现故障时,一旦我们恢复并运行VM,这些快照仍然可供我们恢复。

所以我正在寻找的指导是一个API调用查询,我可以运行来创建索引的快照(假设索引称为“index01”),我可以将其存储在Azure存储中的某个位置。

这可能吗?将快照存储在与索引所在的磁盘相同的磁盘上的默认行为是什么?如果是这样,我不确定我会理解这一点,就好像磁盘或VM损坏一样,你也会丢失快照。

欢迎任何指导或建议。

答案

你是对的。将快照存储在运行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
}

以上是关于ElasticSearch快照创建 - 了解如何/在何处存储它们的主要内容,如果未能解决你的问题,请参考以下文章

如何使用快照进行elasticsearch迁移,使用共享文件夹方式

elasticsearch 快照和恢复

除了使用Elasticsearch恢复API以外,还有其他方法可以恢复Elasticsearch快照吗?

ElasticSearch索引快照

《Elasticsearch 源码解析与优化实战》第13章:Snapshot 模块分析

《Elasticsearch 源码解析与优化实战》第13章:Snapshot 模块分析