一、Repositories

在elasticsearch.yml文件中增加path.repo路径配置:

$ vim /etc/elasticsearch/elasticsearch.yml

path.repo: ["/home/ccx/es/backups", "/mount/longterm_backups"]

重启elasticsearch

$ service elasticsearch restart

创建文件夹作为repository的目录,并修改文件夹权限

$ mkdir -p /home/ccx/es/backups

$ chmod 755 /home/ccx/es/backups/

$ chown elasticsearch:elasticsearch /home/ccx/es/backups/

创建repository

$ curl -XPUT 'http://192.168.212.190:9200/_snapshot/my_backup' -d '{

"type": "fs",

"settings": {

"location": "/home/ccx/es/backups/my_backup",

"compress": true

}

}'

查看repository信息

$ curl -XGET 'http://192.168.212.190:9200/_snapshot/my_backup?pretty'

可以使用POST 请求,用来修改已经存在的repository

$ curl -XPOST 'http://192.168.212.190:9200/_snapshot/my_backup' -d '{

"type": "fs",

"settings": {

"location": "/home/ccx/es/backups/my_backup",

"max_snapshot_bytes_per_sec" : "50mb",

"max_restore_bytes_per_sec" : "50mb"

}

}'

二、Snapshot

创建快照

备份工作在后台运行

$ curl -XPUT 'http://192.168.212.190:9200/_snapshot/my_backup/snapshot_1'

同步执行,加wait_for_completion 标志,备份完成后才返回,如果数据量大的话,会花很长时间

$ curl -XPUT 'http://192.168.212.190:9200/_snapshot/my_backup/snapshot_2?wait_for_completion=true'

如果只想备份部分索引的话,可以加上indices 参数:

$ curl -XPUT 'http://192.168.212.190:9200/_snapshot/my_backup/snapshot_3' -d '{

"indices": "index_1,index_2",

"ignore_indices": "missing"

}'

查看备份信息

$ curl -XGET 'http://192.168.212.190:9200/_snapshot/my_backup/snapshot_2'

如果要查看所有索引的信息,使用如下api:

$ curl -XGET 'http://192.168.212.190:9200/_snapshot/my_backup/_all'

另外还有个一api可以看到更加详细的信息:

$ curl -XGET 'http://192.168.212.190:9200/_snapshot/my_backup/snapshot_2/_status'

删除备份

$ curl -XDELETE 'http://192.168.212.190:9200/_snapshot/my_backup/snapshot_2'

三、Restore

恢复snapshot_1里的全部索引:

$ curl -XPOST 'http://192.168.212.190:9200/_snapshot/my_backup/snapshot_1/_restore'

api额外的参数:

$ curl -XPOST 'http://192.168.212.190:9200/_snapshot/my_backup/snapshot_1/_restore' -d '{

"indices": "index_1",

"rename_pattern": "index_(.+)",

"rename_replacement": "restored_index_$1"

}'

参数indices 设置只恢复index_1索引,参数rename_pattern 和rename_replacement 用来正则匹配要恢复的索引,并且重命名。和备份一样,api会立刻返回值,然后在后台执行恢复,使用wait_for_completion 标记强制同步执行。

以使用下面两个api查看状态

$ curl -XGET 'http://192.168.212.190:9200/_recovery/'

elasticsearch snapshot的更多相关文章

  1. Elasticsearch snapshot 备份的使用方法 【备忘】

    常见的数据库都会提供备份的机制,以解决在数据库无法使用的情况下,可以开启新的实例,然后通过备份来恢复数据减少损失.虽然 Elasticsearch 有良好的容灾性,但由于以下原因,其依然需要备份机制. ...

  2. elasticsearch snapshot快照备份和恢复

    环境:mac   使用brew 安装elasticsearch   1.在 /usr/local/etc/elasticsearch/elasticsearch.yml 文件中配置快照地址     p ...

  3. elasticsearch数据备份还原

    elasticsearch数据备份还原 1.在浏览器中运行http://XXX.XXX.XXX.XXX:9200/_flush,确保索引数据能保存到硬盘中. 2.原数据的备份.主要是elasticse ...

  4. Elasticsearch分布式搜索和数据分析引擎-ElasticStack(上)v7.14.0

    Elasticsearch概述 **本人博客网站 **IT小神 www.itxiaoshen.com Elasticsearch官网地址 https://www.elastic.co/cn/elast ...

  5. ElasticSearch7.X.X-初见-模仿京东搜索的实战

    目录 简介 聊聊Doug Cutting ES&Solr&Lucene ES的安装 安装可视化界面ES head插件 了解ELK 安装Kibana ES核心概念 文档 类型 索引 倒排 ...

  6. Elasticsearch:Cluster备份 Snapshot及Restore API

    Elasticsearch提供了replica解决方案,它可以帮我们解决了如果有一个或多个node失败了,那么我们的数据还是可以保证完整的情况,并且搜索还可以继续进行.但是,有一种情况是我们的所有的n ...

  7. elasticsearch数据基于snapshot的还原备份+版本升级

    前言 之前安装的是elasticsearch-6.5.0,漏洞扫描报The remote web server hosts a Java application that is vulnerable. ...

  8. Elasticsearch:Snapshot 生命周期管理

    转载自:https://blog.csdn.net/UbuntuTouch/article/details/108643226

  9. Elasticsearch 调优 (官方文档How To)

    How To Elasticsearch默认是提供了一个非常简单的即开即用体验.用户无需修改什么配置就可以直接使用全文检索.结果高亮.聚合.索引功能. 但是想在项目中使用高性能的Elasticsear ...

随机推荐

  1. Linux strace命令

    简介 strace常用来跟踪进程执行时的系统调用和所接收的信号. 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核 ...

  2. JVM之GI收集器

    Garbage-First,面向服务端的垃圾收集器. 并行与并发:充分利用多核环境减少停顿时间, 分代收集:不需要配合其它收集器 空间整合:整体上看属于标记整理算法,局部(region之间)数据复制算 ...

  3. 从零自学Hadoop(03):Linux准备上

    阅读目录 序 检查列表 常用Linux命令 搭建环境 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,Sou ...

  4. OSX下 pip更新及安装python库

    直接执行安装命令 $ pip install builtwith 提示pip当前版本为7.1.2,要使用"pip install --upgrade pip"升级到8.1.2 $  ...

  5. linux ssh和scp实例

    ssh 192.160.1.100 -p 40012 scp user 192.169.72.2:/ scp -i /id_rsa -P40027 root@221.212.235.17:/sdzw/ ...

  6. shell 1到指定数累加

    #!/bin/bash read -p "输入尾数:" a expr $(seq -s " + " $a) #seq命令可以指定生成一个数到另一个数之间的所有整 ...

  7. Linux基础命令操作

    显示日期与时间:date date +%Y/%m/%d date +%H:%M 显示日历:cal 显示一整年(cal 2009) 显示一年中的某一个月 (cal [[month]] year) 例如 ...

  8. Spring远程调用技术<2>-Hessian和Burlap

    上篇谈到RMI技术,加上Spring的封装,用起来很方便,但也有一些限制 这里的Hessian和Burlap解决了上篇提到的限制,因为他们是基于http的轻量级远程服务. Hessian,和RMI一样 ...

  9. ongl(示例3-6 多值类型的数据处理)

    使用ognl 实现多值处理,处理的值比较多,如数组,集合等类型的数据 //实体类省略 //创建action,其中包括两个成员变量 分别是两个double,string类型的数组 package cn. ...

  10. UML九种图作用简介

    UML(统一建模语言):是面向对象的可视化建模语言. UML中有3种构造块:事物.关系和图,事物是对模型中最具有代表性的成分的抽象,关系是把事物结合在一起,图聚集了相关的事物 UML中有九种图如下: ...