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.容器保存为镜像 将已经装好各种软件的容器再次打包为镜像,这样下次直接装这个镜 ...
随机推荐
- 构建后端第4篇之---spring 源码阅读构建环境
解决 IDEA 创建 Gradle 项目没有src目录问题 in new model named zyt-study root dir there are a build.gradle plug ...
- vue.js 贡献指南(翻译)
Vue.js Contributing Guide vue 2.x 嗨! 我很高兴你有兴趣为Vue.js做贡献. 在提交您的贡献之前,请务必花点时间阅读以下指南. 行为守则 问题报告指南 PR指南 开 ...
- [JS]异步任务之事件循环
前言 常常会听到单线程和多线程这两个名词,单线程即一个时间段内程序从上到下执行任务,多线程即一个时间段内程序同时执行多个任务. 然而 JavaScript 是单线程的,它不像 Java 那样新开启一个 ...
- DVWA靶场练习-Command Injection命令注入
Command Injection 原理 攻击者通过构造恶意参数,破坏命令的语句结构,从而达到执行恶意命令的目的.
- MySQL Replication Thread States
1.主节点线程状态(Replication Master Thread States): Finished reading one binlog; switching to next binlog 线 ...
- Linux进程间通信方式--信号,管道,消息队列,信号量,共享内存
1.概述 通信方法 无法介于内核态与用户态的原因 管道(不包括命名管道) 局限于父子进程间的通信. 消息队列 在硬.软中断中无法无阻塞地接收数据. 信号量 无法介于内核态和用户态使用. 内存共享 需要 ...
- Linux线程简单介绍
1.进程与线程 2.使用线程的理由 3.有关线程操作的函数 4.线程之间的互斥 5.线程之间的同步 6.试题最终代码 1.进程与线程 进程是程序执行时的一个实例,即它是程序已经执行到何种程度的数据结构 ...
- pikachu CSRF
CSRF简介 CSRF 是 Cross Site Request Forgery 的 简称,中文名为跨域请求伪造在CSRF的攻击场景中,攻击者会伪造一个请求(一般是一个链接)然后欺骗目标用户进行点击, ...
- Layui-自定义函数及调用
控件 表格 时间范围 页面展示 场景 页面中选择开始时间和结束时间表格变化 使用 html代码 <div> <form class="layui-form" ac ...
- 谈谈ARM运行C程序的内部机制
文章目录 一.代码 二.知识储备 1.ARM汇编指令 2.寄存器知识 三.代码解析 1.指令分析 第一条指令: 第二条指令: 第三条指令: 第四条指令: 第五.六条指令: 第七条指令: 第八.九.十条 ...