Elasticsearch的快照备份
该文档适用于备份使用NAS的仓库类型。所有Elasticsearch集群中的服务通过挂载NAS目录来存放备份快照数据。
1、创建备份仓库
创建一个仓库名称:backup
curl -H "Content-Type: application/json" -XPUT http://10.10.18.10:9200/_snapshot/backup -d '
{
"type":"fs",
"settings":{"location":"/data/bak_es/snapshot"},
"max_snapshot_bytes_per_sec" : "50mb",
"max_restore_bytes_per_sec" : "50mb"
}'
提交成功了返回:{"acknowledged":true} ,在集群所有节点上创建:/data/bak_es/snapshot 目录
max_snapshot_bytes_per_sec
当快照数据进入仓库时,这个参数控制这个过程的限流情况。默认是每秒 20mb 。
max_restore_bytes_per_sec
当从仓库恢复数据时,这个参数控制什么时候恢复过程会被限流以保障你的网络不会被占满。默认是每秒 20mb。
2、查询备份仓库
curl -XGET 'http://10.10.18.10:9200/_snapshot?pretty'
结果
{
"backup" : { ######仓库名称
"type" : "fs", #仓库类型
"settings" : {
"location" : "/data/bak_es/snapshot" #备份数据存放路径
}
}
}
3、编写全索引备份脚本
安装curl
yum -y install curl
脚本名称:es_backup.sh
#!/bin/bash
#功能:用于备份elasticsearch的全索引快照,保留7天的备份快照。 #7天前的日期
B_DATA=$(date -d "7 day ago" +%F) #脚本运行日志
LOG_FILE="/tmp/es_backup.log" #运行脚本的当前时间
CUR_TIME=$(date +%F_%H-%M-%S) #仓库名称
STORE_NAME="backup" #快照名称
SNAPSHOT_PRE="snapshot_all"
SNAPSHOT_NAME="${SNAPSHOT_PRE}_${CUR_TIME}" #快照API
Snap_API="http://10.10.18.10:9200" #curl的绝对路径
CURL_CMD="/usr/bin/curl" #生成快照
echo "=====${SNAPSHOT_NAME}=====开始快照es" >> ${LOG_FILE}
#执行命令后阻塞等快照完成
#${CURL_CMD} -XPUT "${Snap_API}/_snapshot/${STORE_NAME}/${SNAPSHOT_NAME}?wait_for_completion=true" >> ${LOG_FILE}
#执行命令后立即返回,备份快照会在后台运行
${CURL_CMD} -XPUT "${Snap_API}/_snapshot/${STORE_NAME}/${SNAPSHOT_NAME}" >> ${LOG_FILE}
echo "=====${SNAPSHOT_NAME}=====结束快照es" >> ${LOG_FILE} #删除7前老的快照
for snap_name in $(${CURL_CMD} -sXGET "${Snap_API}/_snapshot/${STORE_NAME}/_all" | python -m json.tool | grep '"snapshot":' | awk -F'[:",]' '{print $5}'|grep ${SNAPSHOT_PRE} | grep "${B_DATA}")
do
${CURL_CMD} -XDELETE "${Snap_API}/_snapshot/${STORE_NAME}/${snap_name}"
if [ $? -eq ];then
echo "删除快照:${snap_name} success" >> ${LOG_FILE}
else
echo "删除快照:${snap_name} fail" >> ${LOG_FILE}
fi
done
4、查看所有备份全索引的信息
curl -XGET "http:// 10.10.18.10:9200/_snapshot/backup/_all" | python -m json.tool
查看单个备份全索引的信息
curl -XGET "http://10.10.18.10:9200/_snapshot/backup/snapshot_all?pretty"
Elasticsearch的快照备份的更多相关文章
- 将Elasticsearch的快照备份到HDFS
1.安装Elasticsearch插件repository-hdfs 下载地址:https://artifacts.elastic.co/downloads/elasticsearch-plugins ...
- elasticsearch snapshot快照备份和恢复
环境:mac 使用brew 安装elasticsearch 1.在 /usr/local/etc/elasticsearch/elasticsearch.yml 文件中配置快照地址 p ...
- Elasticsearch 简单快照备份
创建仓库 POST http://10.10.14.201:9200/_snapshot/backup { "type": "fs", "settin ...
- ElasticSearch快照备份及恢复
工作步骤: 1:建立备份快照数据挂载点,即共享文件目录(Shared Filesystem): 2:建立快照仓储repository: 3:建立snapshot快照备份: 4:恢复snapshot快照 ...
- Elasticsearch系列---生产数据备份恢复方案
前言 生产环境中运行的组件,只要有数据存储,定时备份.灾难恢复是必修课,mysql数据库的备份方案已经非常成熟,Elasticsearch也同样有成熟的数据备份.恢复方案,我们来了解一下. 概要 本篇 ...
- ELK数据迁移,ES快照备份迁移
通过curl命令或者kibana快照备份,恢复的方式进行数据迁移 环境介绍 之前创建的ELK 因为VPC环境的问题,需要对ELK从新部署,但是还需要保留现有的数据,于是便有了这篇文档. 10.0.20 ...
- Elasticsearch:Cluster备份 Snapshot及Restore API
Elasticsearch提供了replica解决方案,它可以帮我们解决了如果有一个或多个node失败了,那么我们的数据还是可以保证完整的情况,并且搜索还可以继续进行.但是,有一种情况是我们的所有的n ...
- lvm快照备份数据库(Mysql5.7)
备份的目的 能够防止由于机械故障以及人为误操作带来的数据丢失,例如将数据库文件保存在了其它地方. 备份的分类 以操作过程中服务的可用性分: 冷备份:cold backup mysql服务关闭,mysq ...
- 通过递增快照备份 Azure 非托管 VM 磁盘
概述 Azure 存储提供创建 Blob 快照的功能. 快照将捕获该时间点的 Blob 状态. 本文介绍有关如何使用快照维护虚拟机磁盘备份的方案. 如果选择不使用 Azure 备份和恢复服务,但想要为 ...
随机推荐
- LG1198/BZOJ1012 「JSOI2008」最大数 线段树+离线
问题描述 LG1198 BZOJ1012 题解 我们把所有操作离线,设一共有\(n\)个插入操作. 于是提前建立\(n\)个数,全部设为\(-INF\) 接着逐个处理操作即可. \(\mathrm{C ...
- luoguP3172 [CQOI2015]选数
题意 所求即为: \(\sum\limits_{i_1=L}^{R}\sum\limits_{i_2=L}^{R}...\sum\limits_{i_k=L}^{R}[\gcd(i_1,i_2,... ...
- Sublime Text 3安装GoSublime
GoLand IDE工具虽然在编程时很好用,但是在使用中也有个问题,有时我们可能只是写一个简单的脚本来测试,对于我而言在打开IDE太重量级了,所以捣鼓了GoSublime工具来满足平时最基本的需求 ...
- arduino控制SIM900A模块
https://item.taobao.com/item.htm?spm=a1z09.2.0.0.5fc02e8dncAF2p&id=604968021102&_u=i1qf7bf5f ...
- Hello 2019 F 莫比乌斯反演 + bitset
https://codeforces.com/contest/1097/problem/F 题意 有n个多重集,q次询问,4种询问 1. 将第x个多重集置为v 2. 将第y和z多重集进行并操作,并赋值 ...
- [LeetCode] 829. Consecutive Numbers Sum 连续数字之和
Given a positive integer N, how many ways can we write it as a sum of consecutive positive integers? ...
- 我已经看到了,撤回也没用了(PC微信防撤回补丁)
前两天看 GitHub 发现一个有趣的项目,PC微信防撤回补丁,本着研究学习的目的,在看过源码,一顿疯狂操作之后,了解了其原理是基于修改 wechatwin.dll 达到防撤回的. 于是乎,自己动手玩 ...
- ElasticSearch使用RestHighLevelClient进行搜索查询
Elasticsearch Java API有四类client连接方式:TransportClient. RestClient .Jest. Spring_Data_Elasticsearch.其中 ...
- Shell~echo -e 颜色输出
echo -e 可以控制字体颜色和背景颜色输出 从一个例子开始: # echo -e "\e[1;33;41m test content \e[0m" 输出效果: . \e 转义起 ...
- java登录点击验证码图片切换验证码无效
1.问题:我在写一个登录时需要添加一个验证码的功能,但是第一次可以生成验证码,但是点击的时候无法发起请求. 2.解决方案:在请求地址后面加一个时间戳,保证每次请求都不一样就可以了! window.on ...