开发者社区 > 大数据与机器学习 > 检索分析服务 Elasticsearch版 > 正文

阿里云Elasticsearch手动备份要怎么操作?

已解决

阿里云Elasticsearch手动备份要怎么操作?

展开
收起
詹姆斯邦德00 2022-10-17 10:49:35 493 0
1 条回答
写回答
取消 提交回答
  • 推荐回答

    手动备份到本地OSS仓库,需要先开通对象存储服务OSS,并新建一个标准存储类型的Bucket,且Bucket的地域与Elasticsearch实例的地域保持一致。在手动备份与恢复数据前,请确保集群的状态正常,否则会影响备份任务。快照仅保存索引数据,不保存Elasticsearch实例自身的监控数据(例如以.monitoring和.security_audit为前缀的索引)、元数据、Translog、实例配置数据、Elasticsearch软件包、自带和自定义的插件、Elasticsearch日志等。

    然后创建仓库,创建一个名称为test的仓库,具体命令如下,其中""endpoint""为OSS Bucket的内网访问域名。""access_key_id""为账号ak。""secret_access_key""为账号sk。""bucket""为OSS Bucket的名称。""compress""为是否打开快照文件的压缩功能,参数值为true和false。""chunk_size""的含义是当上传的数据非常大时,配置此参数可以限制快照过程中分块的大小。超过这个大小,数据将会被分块上传到OSS中。

    PUT _snapshot/test/
    {
    "type": "oss",
    "settings": {
    "endpoint": "http://oss-cn-hangzhou-internal.aliyuncs.com",
    "access_key_id": "xxxx",
    "secret_access_key": "xxxxxx",
    "bucket": "xxxxxx",
    "compress": true,
    "chunk_size": "500mb",
    "base_path": "snapshot/"
    }
    }
    

    然后进行快照的创建,为全部索引创建快照命令如下PUT _snapshot/test/snapshot_1以上命令会为所有打开的索引创建名称为snapshot_1的快照,并保存到test仓库中。该命令会立刻返回,并在后台执行备份任务。如果您希望任务执行完成后再返回可通过添加wait_for_completion实现。该参数会阻塞调用直到备份完成,如果是大型快照,需要很长时间才能返回。

    PUT _snapshot/my_backup/snapshot_1?wait_for_completion=true

    注意:一个仓库可以包含多个快照,每个快照中可以包含所有、部分或单个索引的备份数据。第一次创建快照时,系统会备份所有的数据,后续所有的快照仅备份已存快照和新快照之间的增量数据。随着快照的不断进行,备份也在增量的添加和删除。这意味着后续备份会相当快速,因为它们只传输很小的数据量。

    系统默认会备份所有打开的索引,也可以为指定索引创建快照,具体命令如下,该命令只会备份名称为index_1和index_2的索引。

    PUT _snapshot/my_backup/snapshot_2
    {
    ""indices"": ""index_1,index_2""
    }
    
    

    以上内容摘自《企业级云原生白皮书项目实战》电子书,点击https://developer.aliyun.com/ebook/download/7774可下载完整版

    2022-10-17 18:42:15
    赞同 展开评论 打赏

阿里云检索分析服务Elasticsearch版兼容开源ELK功能,免运维全托管,提升企业数据检索与运维分析能力。

相关产品

  • 检索分析服务 Elasticsearch版
  • 热门讨论

    热门文章

    相关电子书

    更多
    阿里云Elasticsearch体系架构与特性解析 立即下载
    开源与云:Elasticsearch应用剖析 立即下载
    《Elasticsearch全观测解决方案》 立即下载