1、安装Elasticsearch插件repository-hdfs

下载地址:https://artifacts.elastic.co/downloads/elasticsearch-plugins/repository-hdfs/repository-hdfs-6.2.3.zip

将zip包放在/usr/local下

注意插件版本需要和Elasticsearch的版本对应。如果版本不匹配,在安装时会有提示

cd /usr/local/software/elasticsearch-6.2./bin
./elasticsearch-plugin install file:///usr/local/repository-hdfs-6.2.1.zip

安装成功后需要重启Elasticsearch

2、备份和恢复

构建一个仓库

PUT http://10.10.6.225:9200/_snapshot/backup
{
"type": "hdfs",
"settings": {
"uri": "hdfs://10.10.6.170:9000",
"path": "/store",
"conf_location": "/usr/local/hadoop/etc/hadoop/hdfs-site.xml"
}
}

一些参数的说明:

uri                 :    hdfs的地址和端口

path              :    数据存储/加载的路径

load_defaults:    是否加载hadoop默认配置(默认开启)

compress      :    是否压缩元数据(默认关闭)

chunk_size    :    覆盖块大小(默认关闭)

conf_location:这个参数好像不用加

在创建仓库时会报如下类似的错误

Permission denied: user=elasticsearch, access=WRITE

临时解决办法:

去修改HDFS的hdfs-site.xml文件,取消hadoop hdfs的用户权限检查。需要再找其他办法做到从根本上解决问题

vi /usr/local/hadoop/etc/hadoop/hdfs-site.xml

增加如下配置

<property>
<name>dfs.permissions</name>
<value>false</value>
</property>

重启HDFS

备份快照

PUT http://10.10.6.225:9200/_snapshot/backup/snapshot_100?wait_for_completion=true
{
"indices": "cars", //备份cars的index,注意不设置这个属性,默认是备份所有index
"ignore_unavailable": true,
"include_global_state": false
}

查看所有快照

GET http://10.10.6.225:9200/_snapshot/backup/_all

查看某个快照

GET http://10.10.6.225:9200/_snapshot/backup/snapshot_100

删除一个快照

DELETE http://10.10.6.225:9200/_snapshot/backup/snapshot_100

恢复快照

POST http://10.10.6.225:9200/_snapshot/backup/snapshot_100/_restore
{
"indices": "cars", //指定索引恢复,不指定就是所有
"ignore_unavailable": true, //忽略恢复时异常索引
"include_global_state": false //是否存储全局转态信息,fasle代表有一个或几个失败,不会导致整个任务失败
}

查看nginx-access-log索引的恢复进度

GET http://10.10.6.225:/nginx-access-log/_recovery/

查看所有索引的恢复进度

GET http://10.10.6.225:9200/_recovery/

恢复快照index重命名

{
"indices": "cars", //指定索引恢复,不指定就是所有
"ignore_unavailable": true, //忽略恢复时异常索引"
include_global_state": false, //是否存储全局转态信息,fasle代表有一个或几个失败,不会导致整个任务失败
"rename_pattern": "cars", //应该是正则,要想恢复所有的就写成index名
"rename_replacement": "cars_temp" //新的index名称
}

将Elasticsearch的快照备份到HDFS的更多相关文章

  1. elasticsearch snapshot快照备份和恢复

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

  2. Elasticsearch的快照备份

    该文档适用于备份使用NAS的仓库类型.所有Elasticsearch集群中的服务通过挂载NAS目录来存放备份快照数据. 1.创建备份仓库 创建一个仓库名称:backup curl -H "C ...

  3. Elasticsearch 简单快照备份

    创建仓库 POST http://10.10.14.201:9200/_snapshot/backup { "type": "fs", "settin ...

  4. ElasticSearch快照备份及恢复

    工作步骤: 1:建立备份快照数据挂载点,即共享文件目录(Shared Filesystem): 2:建立快照仓储repository: 3:建立snapshot快照备份: 4:恢复snapshot快照 ...

  5. Elasticsearch系列---生产数据备份恢复方案

    前言 生产环境中运行的组件,只要有数据存储,定时备份.灾难恢复是必修课,mysql数据库的备份方案已经非常成熟,Elasticsearch也同样有成熟的数据备份.恢复方案,我们来了解一下. 概要 本篇 ...

  6. Elasticsearch:Cluster备份 Snapshot及Restore API

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

  7. ELK数据迁移,ES快照备份迁移

    通过curl命令或者kibana快照备份,恢复的方式进行数据迁移 环境介绍 之前创建的ELK 因为VPC环境的问题,需要对ELK从新部署,但是还需要保留现有的数据,于是便有了这篇文档. 10.0.20 ...

  8. lvm快照备份数据库(Mysql5.7)

    备份的目的 能够防止由于机械故障以及人为误操作带来的数据丢失,例如将数据库文件保存在了其它地方. 备份的分类 以操作过程中服务的可用性分: 冷备份:cold backup mysql服务关闭,mysq ...

  9. 通过递增快照备份 Azure 非托管 VM 磁盘

    概述 Azure 存储提供创建 Blob 快照的功能. 快照将捕获该时间点的 Blob 状态. 本文介绍有关如何使用快照维护虚拟机磁盘备份的方案. 如果选择不使用 Azure 备份和恢复服务,但想要为 ...

随机推荐

  1. 效率较高的php下读取文本文件的代码

    主要用下面这两个方法fread和 fgets的区别大家需要注意下     fread :以字节位计算长度,按照指定的长度和次数读取数据,遇到结尾或完成指定长度读取后停止.  fgets :整行读取,遇 ...

  2. Markdown中Latex 数学公式基本语法

    原文地址:http://blog.csdn.net/u014630987/article/details/70156489 Markdown中Latex 数学公式基本语法 公式排版 分为两种排版: - ...

  3. python 创建类的实例对象

    # -*- coding: UTF-8 -*- class Employee: def __init__(self, name, salary): self.name = name self.sala ...

  4. python操作三大主流数据库(2)python操作mysql②python对mysql进行简单的增删改查

    python操作mysql②python对mysql进行简单的增删改查 1.设计mysql的数据库和表 id:新闻的唯一标示 title:新闻的标题 content:新闻的内容 created_at: ...

  5. mysql5.6基于主从复制的mmm高可用架构详解

    MMM规划192.168.3.12 master192.168.3.13 slave1192.168.3.198 slave2 MMM部署步骤1.配置主主复制及主从同步集群2.安装主从节点所需要的支持 ...

  6. Jmeter之csv参数化

    创建数据源csv文件 在线程组中添加CSV Data Set Config 1.添加CSV Data Set Config 添加CSV Data Set Config 2.配置CSV Data Set ...

  7. django.db.utils.OperationalError: (1045, "Access denied for user 'ODBC'@'localhost' (using password)

    错误描述: 从SQLLITE数据库换为MYSQL数据库,执行 python manage.py migrate 命令时,报错:django.db.utils.OperationalError: (10 ...

  8. maven项目部署到Tomcat

    1.安装Tomcat,地址:http://tomcat.apache.org,我安装的版本为9.0.0.M22,安装的目录为C:\apache-tomcat,设置环境变量CATALINA_HOME为C ...

  9. linux流量异常查看哪些程序占用的

    Linux下进程/程序网络带宽占用情况查看工具 -- NetHogs   http://www.vpser.net/manage/nethogs.html   来自.  最后略有修改 之前VPS侦探曾 ...

  10. python-包及日志模块使用

    一.包 1.包就是一个保护有__init__.py文件的文件夹,包的本质就是一种模块,即包是用来导入使用的,包内部包含的文件也都是用来被导入使用的.包是为了更好组织好模块,就是一个文件夹. 注:在py ...