ELK数据迁移,ES快照备份迁移
方法一、命令行操作
一、创建快照存储库
1.修改老的es配置文件,用于快照存储库。
[root@elk-server /home]# cat /etc/elasticsearch/elasticsearch.yml |grep path.repo
path.repo: /home/esdata
2、分配权限并重启es
[root@elk-server /home]# chown -R elasticsearch:elasticsearch esdata
[root@elk-server /home]# systemctl restart elaseicesarch
[root@elk-server /home]# ll |grep esdata
drwxr-xr-x 3 elasticsearch elasticsearch 134 Jun 8 08:13 esdata
3、创建ES本地存储库
curl -XPUT -uxuewenlong:bsh@123 http://10.0.20.74:9200/_snapshot/my_back -H "Content-Type: application/json" -d '
{
"type": "fs",
"settings": {
"location": "/home/esdata/", #存储库位置,要和配置文件里一致用户组是es
"max_restore_bytes_per_sec":"10mb", #恢复最大速率
"compress":"true", #是否压缩
"max_snapshot_bytes_per_sec":"10mb", #创建最大速率
"chunk_size":"100mb" #压缩块大小
}
}'
4、验证存储库
curl -XGET -uxuewenlong:bsh@123 http://10.0.20.74:9200/_snapshot/
{
"my_back": {
"type": "fs",
"settings": {
"chunk_size": "100M",
"location": "/home/esdata/",
"max_restore_bytes_per_sec": "10mb",
"compress": "true",
"max_snapshot_bytes_per_sec": "10mb"
}
}
}
二、备份索引
1、备份指定的索引
curl -XPUT -uxuewenlong:bsh@123 http://10.0.20.74:9200/_snapshot/my_back/esdata?wait_for_completion=true -H "Content-Type: application/json" -d '
{
"indices": "miniprogram-prod*" #写入需要备份的索引,多个所以以,分隔 如"index1,index2" 支持正则
}'
2、备份当前库所有索引
curl -XPUT -uxuewenlong:bsh@123 http://10.0.20.74:9200/_snapshot/my_back/esdata?wait_for_completion=true -H "Content-Type: application/json"
3、验证备份快照
curl -XGET -uxuewenlong:bsh@123 http://10.0.20.74:9200/_snapshot/my_back/esdata
{
"snapshots": [{
"snapshot": "esdata",
"uuid": "t3BNDuiCRwK_uAIz71RCbQ",
"version_id": 7050099,
"version": "7.5.0",
"indices": ["miniprogram-prod-aspect-az.log.2020.01", "miniprogram-prod-aspect-az.log.2020.03", "miniprogram-prod-aspect-az.log.2020.06", "miniprogram-prod-access-az.log.2019.12", "miniprogram-prod-aspect-az.log.2020.02", "miniprogram-prod-aspect-bz.log.2020.02", "miniprogram-prod-access-az.log.2020.06", "miniprogram-prod-aspect-az.log.2020.05", "miniprogram-prod-aspect-az.log.2020.04", "miniprogram-prod-access-az.log.2020.04", "miniprogram-prod-access-az.log.2020.03", "miniprogram-prod-aspect-bz.log.2020.05", "miniprogram-prod-access-az.log.2020.01", "miniprogram-prod-access-az.log.2020.05", "miniprogram-prod-access-bz.log.2020.03", "miniprogram-prod-aspect-bz.log.2020.04", "miniprogram-prod-access-bz.log.2020.06", "miniprogram-prod-aspect-bz.log.2020.03", "miniprogram-prod-access-bz.log.2020.02", "miniprogram-prod-access-az.log.2020.02", "miniprogram-prod-aspect-bz.log.2020.01", "miniprogram-prod-access-bz.log.2020.01", "miniprogram-prod-access-bz.log.2020.05", "miniprogram-prod-access-bz.log.2020.04", "miniprogram-prod-aspect-bz.log.2020.06"],
"include_global_state": true,
"metadata": {
"policy": "miniesdata"
},
"state": "SUCCESS",
"start_time": "2020-06-08T07:48:00.006Z",
"start_time_in_millis": 1591602480006,
"end_time": "2020-06-08T08:01:57.507Z",
"end_time_in_millis": 1591603317507,
"duration_in_millis": 837501,
"failures": [],
"shards": {
"total": 25,
"failed": 0,
"successful": 25
}
}]
}
三、迁移到新的es集群中
[root@elk-server /home]# zip -r esdata.zip esdata
[root@elk-server /home]# scp /home/esdata.zip xuewenlong@10.0.10.229:/home
1、登录新es集群操作
解压es数据,分配权限
[root@ip-10-0-10-229 home]# unzip esdata.zip
[root@ip-10-0-10-229 home]# ll
drwxr-xr-x. 9 root root 115 Jun 9 00:58 bsh
drwx------. 3 ec2-user ec2-user 113 Jun 8 08:25 ec2-user
drwxr-xr-x. 3 xuewenlong xuewenlong 134 Jun 9 01:31 esdata
[root@ip-10-0-10-229 home]#chown -R elasticsearch:elasticsearch esdata
2、修改es配置文件
[root@ip-10-0-10-229 home]# cat /etc/elasticsearch/elasticsearch.yml |grep path.repo
path.repo: /home/esdata
3、创建一样的存储库
curl -XPUT -uxuewenlong:bsh@123 http://10.0.10.229:9200/_snapshot/my_back -H "Content-Type: application/json" -d '
{
"type": "fs",
"settings": {
"location": "/home/esdata/", #存储库位置,要和配置文件里一致用户组是es
"max_restore_bytes_per_sec":"10mb", #恢复最大速率
"compress":"true", #是否压缩
"max_snapshot_bytes_per_sec":"10mb", #创建最大速率
"chunk_size":"100mb" #压缩块大小
}
}'
4、验证备份是否存在
curl -XGET -uelastic:bsh@123 http://10.0.10.229:9200/_snapshot/my_back/esdata
"snapshots": [{
"snapshot": "esdata",
"uuid": "t3BNDuiCRwK_uAIz71RCbQ",
"version_id": 7050099,
"version": "7.5.0",
"indices": ["miniprogram-prod-aspect-az.log.2020.01", "miniprogram-prod-aspect-az.log.2020.03", "miniprogram-prod-aspect-az.log.2020.06", "miniprogram-prod-access-az.log.2019.12", "miniprogram-prod-aspect-az.log.2020.02", "miniprogram-prod-aspect-bz.log.2020.02", "miniprogram-prod-access-az.log.2020.06", "miniprogram-prod-aspect-az.log.2020.05", "miniprogram-prod-aspect-az.log.2020.04", "miniprogram-prod-access-az.log.2020.04", "miniprogram-prod-access-az.log.2020.03", "miniprogram-prod-aspect-bz.log.2020.05", "miniprogram-prod-access-az.log.2020.01", "miniprogram-prod-access-az.log.2020.05", "miniprogram-prod-access-bz.log.2020.03", "miniprogram-prod-aspect-bz.log.2020.04", "miniprogram-prod-access-bz.log.2020.06", "miniprogram-prod-aspect-bz.log.2020.03", "miniprogram-prod-access-bz.log.2020.02", "miniprogram-prod-access-az.log.2020.02", "miniprogram-prod-aspect-bz.log.2020.01", "miniprogram-prod-access-bz.log.2020.01", "miniprogram-prod-access-bz.log.2020.05", "miniprogram-prod-access-bz.log.2020.04", "miniprogram-prod-aspect-bz.log.2020.06"],
"include_global_state": true,
"metadata": {
"policy": "miniesdata"
},
"state": "SUCCESS",
"start_time": "2020-06-08T07:48:00.006Z",
"start_time_in_millis": 1591602480006,
"end_time": "2020-06-08T08:01:57.507Z",
"end_time_in_millis": 1591603317507,
"duration_in_millis": 837501,
"failures": [],
"shards": {
"total": 25,
"failed": 0,
"successful": 25
}
}]
}
四.数据恢复到新集群中
1、恢复单条索引
curl -XPOST -uxuewenlong:bsh@123 http://10.0.10.229:9200/_snapshot/my_back/esdata/_restore -H "Content-Type: application/json" -d '
{
"miniprogram-prod*"
}'
2、恢复全部索引
curl -XPOST -uxuewenlong:bsh@123 http://10.0.10.229:9200/_snapshot/my_back/esdata/_restore -H "Content-Type: application/json"
3、删除快照
curl -XDELETE -uxuewenlong:bsh@123 -uxuewenlong:bsh@123 http://10.0.10.229:9200/_snapshot/my_back/esdata/
方法二、kibana操作
1.修改老的es配置文件,用于快照存储库。
[root@elk-server /home]# cat /etc/elasticsearch/elasticsearch.yml |grep path.repo
path.repo: /home/esdata
一、创建快照存储库
1、在旧的kibana上创建快照存储库
2、在旧的kibana验证存储库
二、创建策略备份索引
1、在旧的kibana创建策略
支持cron定时任务 还是比较方便的
2、在旧的kibana进行数据备份
保存完策略之后点击小按钮就会立马进行备份
3、在旧的kibana备份完查看备份
三、迁移到新的es集群中
1、登陆服务器old es 服务器讲备份数据打包 移至新的es服务器
[root@elk-server /home]# zip -r esdata.zip esdata
[root@elk-server /home]# scp /home/esdata.zip xuewenlong@10.0.10.229:/home
2、登录新es集群操作解压es数据,分配权限
[root@ip-10-0-10-229 home]# unzip esdata.zip
[root@ip-10-0-10-229 home]# ll
drwxr-xr-x. 9 root root 115 Jun 9 00:58 bsh
drwx------. 3 ec2-user ec2-user 113 Jun 8 08:25 ec2-user
drwxr-xr-x. 3 xuewenlong xuewenlong 134 Jun 9 01:31 esdata
[root@ip-10-0-10-229 home]#chown -R elasticsearch:elasticsearch esdata
3、在新的kibana创建存储库
4、在新的kibana刷新浏览器 查看恢复快照
5、在新的kibana查看恢复状态
四、验证es数据
在新的kibana 上创建索引,数据是存在的
ELK数据迁移,ES快照备份迁移的更多相关文章
- elasticsearch-dump 迁移es数据 (elasticdump)
elasticsearch 部分查询语句 # 获取集群的节点列表: curl 'localhost:9200/_cat/nodes?v' # 列出所有索引: curl 'localhost:9200/ ...
- 【Docker】利用数据卷容器来备份、恢复、迁移数据卷
利用数据卷容器来备份.恢复.迁移数据卷 可以利用数据卷对其中的数据进行进行备份.恢复和迁移. 备份 首先使用 --volumes-from 标记来创建一个加载 dbdata 容器卷的容器,并从主机挂载 ...
- ES:在线迁移集群索引,数据不丢失
一.背景 生产环境由于某些原因需要跨机房迁移ES集群,或者同机房原有集群中所有节点全部更换,期间ES索引要求完整,客户端请求中断不超过五分钟. 二.应用场景 1.同机房不同集群之间数据迁移: 2.跨机 ...
- Mysql备份迁移——MySqlBackup(.net)——(无法解决视图嵌视图报错)
这里是利用MySqlBackup,可以再nuget中下载. 无法解决视图嵌视图报错的问题,只导表跟数据比较合适,如果有视图嵌视图,请参照Mysql备份迁移——Mysqldump(.NET调用Mysql ...
- kvm命令总结和虚机器备份迁移
管理kvm虚拟机命令 virsh uri: 查看当前主机上hypervisor的连接路径: virsh connect ...
- mongodb数据库备份迁移 windows -> linux
mongodb数据库备份迁移 windows -> linux cd 到本机mongodb的安装目录 如: C:\Program Files\MongoDB\Server\3.4\bin 可以发 ...
- 利用Linode面板Clone克隆搬家迁移不同VPS数据及利用IP Swap迁移IP地址
在众多海外VPS服务商中,老蒋个人认为Linode提供的VPS方案和性价比还是比较高的,尤其目前基础1GB方案仅需10美元每月且全部是SSD固态硬盘,无论是流量还是硬盘大小,基本上可以满足我们大部分用 ...
- es快照和备份
注册前要注意配置文件加上 path.repo: ["/data/es_backup"] 然后重启es 不然会报错doesn't match any of the locations ...
- Docker备份迁移
目录 Docker备份迁移 1.容器保存为镜像 2.镜像打包成压缩文件 3.把压缩文件恢复成镜像 Docker备份迁移 1.容器保存为镜像 将已经装好各种软件的容器再次打包为镜像,这样下次直接装这个镜 ...
随机推荐
- HSDB工具类使用探索jvm
本文是引用https://club.perfma.com/article/2261053 有人问了个小问题,说: public class Test { static Test2 t1 = new T ...
- 前端构建第1篇之---引入elementUI
张艳涛 写于2021-1-19 HOW:如何引入elementui? 在项目根目录package.json引入,在重新执行npm install "dependencies": { ...
- SpringBoot - Bean validation 参数校验
目录 前言 常见注解 参数校验的应用 依赖 简单的参数校验示例 级联校验 @Validated 与 @Valid 自定义校验注解 前言 后台开发中对参数的校验是不可缺少的一个环节,为了解决如何优雅的对 ...
- Upload-labs 文件上传靶场通关攻略(上)
Upload-labs 文件上传靶场通关攻略(上) 文件上传是Web网页中常见的功能之一,通常情况下恶意的文件上传,会形成漏洞. 逻辑是这样的:用户通过上传点上传了恶意文件,通过服务器的校验后保存到指 ...
- 防火墙和SElinux简单配置
1.查看防火墙状态 # firewall-cmd --state & #systemctl status firewalld.service 2.停止与开启firew ...
- jmeter之JDBC类组件
~什么是JDBC?:全称名为Java DataBase Connectivity,(java数据库连接),在jmeter中是一种可以远程操作数据库的一类组件. ~jmeter如何操作数据库?:jmet ...
- [论文阅读] Residual Attention(Multi-Label Recognition)
Residual Attention 文章: Residual Attention: A Simple but Effective Method for Multi-Label Recognition ...
- 10 个超棒的 JavaScript 简写技巧
今天我要分享的是10个超棒的JavaScript简写方法,可以加快开发速度,让你的开发工作事半功倍哦. 开始吧! 1. 合并数组 普通写法: 我们通常使用Array中的concat()方法合并两个数组 ...
- Modify File Descriptor Limit on Linux
System-wide File Descriptor Limit Get current value: sysctl fs.file-max modify max fd limit: sysctl ...
- 【Vulnhub】DC-1靶机
一.信息收集 1.1 环境 kali : 192.168.124.141 DC-1 : 192.168.124.150 1.2 nmap进行扫描 :nmap -sV 192.168.124.150 I ...