以下以elasticsearch7为例讲解一下关于备份的问题

首先看一段官网给出的:

翻译成中文大概意思是:备份集群的唯一可靠且受支持的方法是拍摄快照。

  • 关于备份可以分为备份数据备份集群配置备份安全配置

  • 关于还原可以分为还原数据还原安全配置

以下我们主要针对备份数据做一个示例

备份数据

  • 大致分为以下几步(如果您的集群启用了安全功能,则在备份数据时必须授权快照API调用)

    • 修改elasticsearch.yml添加快照存储位置配置

      path.repo: ["/data"]

    • 注册快照存储库

      快照可以存储在本地或远程存储库中。远程存储库可以驻留在 Amazon S3、HDFS、Microsoft Azure、Google Cloud Storage 和存储库插件支持的其他平台上。

      curl -H 'Content-Type:application/json' -XPUT -d '{"type": "fs","settings":{"location":"/data/backups/risen_backup"}}' http://192.168.5.135:13500/_snapshot/risen_backup
      

    • 创建快照

      curl -H 'Content-Type:application/json' -XPUT http://192.168.5.135:13500/_snapshot/risen_backup/snapshot_1?wait_for_completion=true
      # wait_for_completion 为 true 是指该 api 在备份执行完毕后再返回结果,否则默认是异步执行的,我们这里为了立刻看到效果,所以设置了该参数,线上执行时不用设置该参数,让其在后台异步执行即可。
      

        {"snapshot":{"snapshot":"snapshot_1","uuid":"Fr7MsRT-TpKpEQ26tP10Wg","version_id":7120099,"version":"7.12.0","indices":[".kibana-event-log-7.12.0-000001","risen_app_log_9beb25232bc8433f8cca5f747574396d",".tasks",".apm-agent-configuration","test",".kibana_task_manager_7.12.0_001",".kibana_7.12.0_001",".security-7","risen_app_log_test",".ds-ilm-history-5-2021.07.02-000001",".apm-custom-link"],"data_streams":["ilm-history-5"],"include_global_state":true,"state":"SUCCESS","start_time":"2021-07-15T09:17:27.607Z","start_time_in_millis":1626340647607,"end_time":"2021-07-15T09:17:27.807Z","end_time_in_millis":1626340647807,"duration_in_millis":200,"failures":[],"shards":{"total":15,"failed":0,"successful":15},"feature_states":[{"feature_name":"security","indices":[".security-7"]},{"feature_name":"kibana","indices":[".kibana_task_manager_7.12.0_001",".kibana_7.12.0_001",".apm-agent-configuration",".apm-custom-link"]},{"feature_name":"tasks","indices":[".tasks"]}]}}
      
    • 删除快照

      curl -H 'Content-Type:application/json' -XDELETE http://192.168.5.135:13500/_snapshot/risen_backup/snapshot_1?pretty
      

    通过上面的步骤创建好备份快照后,但是随着数据新增,如何实现增量数据备份呢?继续执行创建快照的名但是需要更换快照名称

    curl -H 'Content-Type:application/json' -XPUT http://192.168.5.135:13500/_snapshot/risen_backup/snapshot_2?wait_for_completion=true
    

    当执行完毕后,你会发现 /data/backups/my_backup 体积变大了。这说明新数据备份进来了。要说明的一点是,当你在同一个 repository 中做多次 snapshot 时,elasticsearch会检查要备份的数据 segment 文件是否有变化,如果没有变化则不处理,否则只会把发生变化的 segment file 备份下来。这其实就实现了增量备份。

还原数据

curl -H 'Content-Type:application/json' -XPOST -d '{"indices":"risen_app_log_test","rename_replacement":"risen_app_log_test_from_backup"}' http://192.168.5.135:13500/_snapshot/risen_backup/snapshot_1/_restore?wait_for_completion=true

  • 查看risen_app_log_test的数据
curl -XGET http://192.168.5.135:13500/risen_app_log_test/_search?pretty

如何通过快照进行数据备份?相关推荐

  1. Hbase快照Snapshot 数据备份、恢复与迁移

    场景 hbase数据迁移时我们需要统计迁移时的数据量,以确保迁移后的数据的完成,但是如果hbase表数据持续增加的话,迁移时无法统计出准确的数据量,此时我们使用快照的方式进行数据迁移,以确保迁移的数量 ...

  2. 发现在创建云服务器ecs实例的磁盘快照时_玩转ECS第7讲|ECS数据保护-数据备份新特性与最佳实践...

    简介: 本文中,阿里云智能弹性计算专家余初武(悟元)将结合阿里云近期推出的数据备份新特性(快照极速备份.一致性快照组)来介绍云上环境如何做数据备份的最佳实践:适合需要构建云上架构的工程师,架构师和云上 ...

  3. HDFS回收站、Trash机制、Trash Checkpoint、快照功能使用、通过Snapshot快照恢复数据、备份数据、HDFS快照的实现

    HDFS回收站.Trash机制.Trash Checkpoint.快照功能使用 1.回收站 回收站的功能给了我们一剂"后悔药".回收站保存了删除的文件.文件夹.图片.快捷方式等.这 ...

  4. 玩转ECS第7讲 | ECS数据保护-数据备份新特性与最佳实践

    简介:本文中,阿里云智能弹性计算专家余初武(悟元)将结合阿里云近期推出的数据备份新特性(快照极速备份.一致性快照组)来介绍云上环境如何做数据备份的最佳实践:适合需要构建云上架构的工程师,架构师和云上实 ...

  5. Redis 通过 RDB 方式进行数据备份与还原

    Redis 通过 RDB 方式进行数据备份与还原 Intro 有的时候我们需要对 Redis 的数据进行迁移,今天介绍一下通过 RDB(快照)文件进行 Redis 数据的备份和还原 Redis 持久化 ...

  6. serv-u 数据备份_如何使用用户数据脚本在EC2实例上安装Apache Web Server

    serv-u 数据备份 你好朋友, 在本教程中,我们将看到如何使用用户数据脚本在EC2实例上安装Apache Web Server. 在我以前的教程之一中,我已经解释了如何使用AWS控制台启动EC2实 ...

  7. HBase数据备份及恢复(导入导出)的常用方法

    一.说明 随着HBase在重要的商业系统中应用的大量增加,许多企业需要通过对它们的HBase集群建立健壮的备份和故障恢复机制来保证它们的企业(数据)资产.备份Hbase时的难点是其待备份的数据集可能非 ...

  8. Redis数据持久化、数据备份、数据的故障恢复

    1.redis持久化的意义----redis故障恢复 在实际的生产环境中,很可能会遇到redis突然挂掉的情况,比如redis的进程死掉了.电缆被施工队挖了(支付宝例子)等等,总之一定会遇到各种奇葩的 ...

  9. MongoDB 教程六: MongoDB管理:数据导入导出,数据备份恢复及用户安全与认证

    视频地址:MongoDB 教程六: MongoDB管理:数据导入导出,数据备份恢复及用户安全与认证 MongoDB数据库备份与恢复 一.备份 先介绍下命令语法: mongodump -h dbhost ...

最新文章

  1. (C++)1009 Product of Polynomials
  2. 如何将文件复制到虚拟机中
  3. liferay 调用ajax
  4. Numpy基础(part2)--ndarray数组
  5. IIS网站的权限设置问题
  6. SylixOS Python扩展库开发
  7. php 获取顶级域名、一级域名
  8. 蒙特卡洛模型——有约束的非线性规划问题
  9. wpsmac和pc版的区别_办公得力小助手你选谁, WPS Mac版和Microsoft区别在哪里?
  10. excel中图片导入mysql_把Excel的数据(文字、图片)导入MySQL数据库
  11. 狂神说Redis学习笔记
  12. [转载]W3C XML Schema 与文档类型定义
  13. 如何评价一个人的科研能力
  14. java stringbuilder 构造函数_java中stringBuilder的用法详解
  15. 计算机图形图像学 ar,一种实现增强现实的方法及其应用、计算设备与流程
  16. Python将英文标点替换成空格
  17. 向日葵(SunLoginClient_10.5.0.29)RCE验证
  18. 松本行弘(Ruby发明者):Emacs怎样改变了我的人生
  19. RobotSim机器人快速成型-离线编程仿真软件
  20. android 字体颜色 渐变色,Android渐变色处理

热门文章

  1. yii2.0 DetailView
  2. 全流程设计自动驾驶「AI工程落地」
  3. 一文总结三大设计模式(23种设计模式)
  4. 在线词云制作tagxedo
  5. windows删除文件夹命令 rd | rmdir
  6. inotify + rsync 打造文件实时同步
  7. 【Vue】 第十六部分 插槽(默认插槽、具名插槽、作用域插槽)
  8. SQL Server 2014 更新数据(添加数据、修改数据、删除数据、like)
  9. 共享单车已死亡34家:每一个名字都带着血
  10. 华为p9手机恢复出厂设置了如何找回