Es snapshot hdfs存储插件使用(翻译)

882 阅读1分钟

环境

Es5.6.X
CDH 6.0.x
Hadoop 3.0.0

下载插件

sudo bin/elasticsearch-plugin install repository-hdfs

插件必须安装在集群的每一个节点,安装后需要重启.

移除插件

移除插件之前必须先停止节点

sudo bin/elasticsearch-plugin remove repository-hdfs

在hdfs上创建es用户

adduser elasticsearch
cd /$hadoop_home/bin
./hdfs dfs -mkdir -p /user/elasticsearch
./hdfs dfs -chown elasticsearch:hdfs /user/elasticsearch

调用rest api添加配置

PUT _snapshot/my_hdfs_repository
{
  "type": "hdfs",
  "settings": {
    "uri": "hdfs://namenode:9000/",
    "path": "elasticsearch/respositories/my_hdfs_repository",
    "conf.dfs.client.read.shortcircuit": "true"
  }
}
配置说明是否必须
urihdfs访问地址Required
path文件存储、恢复路径Required
load_defaults是否加载hadoop默认配置Enabled by default
conf.<key>添加Hadoop配置Optional
compress是否压缩metadata(index mapping and settings)default true
chunk_size对数据文件分块,i.e. 1g, 10m, 5k默认NULL(无限制块大小)
security.principal连接受保护hadoop使用simple(default),kerberos

对索引进行快照

对所有开启的索引进行备份
#wait_for_completion=true快照完成后返回,false快照初始化完成后返回
PUT /_snapshot/my_backup/snapshot_1?wait_for_completion=true

自定义索引进行备份
PUT /_snapshot/my_backup/snapshot_1
{
  "indices": "index_1,index_2",
  "ignore_unavailable": true,
  "include_global_state": false
}

获取快照信息
GET /_snapshot/my_backup/snapshot_1

获取所有存储的快照
GET /_snapshot/my_backup/_all

删除快照
DELETE /_snapshot/my_backup/snapshot_1

删除快照存储
DELETE /_snapshot/my_backup

恢复

恢复snapshot_1下所有的索引
POST /_snapshot/my_backup/snapshot_1/_restore

恢复指定索引
POST /_snapshot/my_backup/snapshot_1/_restore
{
  "indices": "index_1,index_2",
  "ignore_unavailable": true,
  "include_global_state": true, //
  "rename_pattern": "index_(.+)", //对恢复索引重命名
  "rename_replacement": "restored_index_$1", //对恢复索引重命名
  "include_aliases": false  //默认false,不恢复别名
}

还原并覆盖属性
POST /_snapshot/my_backup/snapshot_1/_restore
{
  "indices": "index_1",
  "index_settings": {
    "index.number_of_replicas": 0
  },
  "ignore_index_settings": [
    "index.refresh_interval"
  ]
}

快照状态

GET _snapshot/_status
GET _snapshot/my_backup/_status
GET _snapshot/my_backup/snapshot_1/_status
GET _snapshot/my_backup/snapshot_1,snapshot_2/_status

删除进行中的快照/恢复操作
DELETE _snapshot/my_backup/snapshot_1