COS快照迁移ES集群

红米2年前技术文章699

一、COS 全量快照备份

基于 COS 快照的迁移方式是使用 ES 的 snapshot api 接口进行迁移,基本原理就是从源 ES 集群创建索引快照,然后在目标 ES 集群中进行恢复。通过 snapshot 方式进行数据迁移时,特别需要注意 ES 的版本问题:

目标 ES 集群的主版本号(如5.6.4中的5为主版本号)要大于等于源 ES 集群的主版本号。

1.x 版本的集群创建的快照不能在 5.x 版本中恢复。

1、源es集群创建仓库

GET /_cat/indices?v

PUT _snapshot/my_cos_backup
{
  "type": "cos",
  "settings": {
    "app_id": "130*****",
    "access_key_id": "*****",
    "access_key_secret": "******",
    "bucket": "es-xyz",
    "region": "ap-****",
    "compress": true,
    "base_path": "/"
  }
}

/* app_id:腾讯云账号 APPID。

 access_key_id:腾讯云 API 密钥 SecretId。 

access_key_secret:腾讯云 API 密钥 SecretKey。

 bucket:COS Bucket 名字,不带 appId 后缀的 bucket 名。

 region:COS Bucket 地域,必须与 ES 集群同地域。

 */

2、源es集群创建自建索引的快照

PUT /_snapshot/my_cos_backup/snapshot_01 
{
  "indices": "*,-.*,-ilm-*"
}

3、源es集群查看验证

GET /_snapshot/my_cos_backup/snapshot_01/_status

4、腾讯云cos迁移到阿里云的oss

选择阿里云在线迁移服务

5、在阿里云es建立相同的仓库

PUT _snapshot/my_cos_backup
{
    "type": "oss",
    "settings": {
        "endpoint": "oss-cn-*****-internal.aliyuncs.com",
        "access_key_id": "**********",
        "secret_access_key": "************",
        "bucket": "es-test",
        "compress": true
    }
}

6、在阿里云es上恢复快照

POST _snapshot/my_cos_backup/snapshot_01/_restore
{
  "indices":"*",
  "ignore_unavailable":"true"
}

7、查看索引恢复时间

GET /_cat/recovery?v&format=json&pretty&s=time:desc

二、增量快照备份

1、腾讯云es集群增量打快照

PUT /_snapshot/my_cos_backup/snapshot_02
{
   "indices": "*,-.*,-ilm-*"
}

2、腾讯云cos增量迁移数据到阿里云的oss

选择阿里云在线迁移服务 -->创建迁移任务

3、手动关闭集群自建索引

POST *,-.*/_close

4、在阿里云es上恢复增量快照,快照恢复完成后,索引会被自动打开

POST _snapshot/my_cos_backup/snapshot_02/_restore
{
  "indices":"*",
  "ignore_unavailable":"true"
}

5、目标es集群查看恢复情况

GET  _snapshot/my_cos_backup/*

6、查看某个索引的恢复耗时

GET index001/_recovery


相关文章

开源大数据集群部署(十五)Zookeeper集群部署

开源大数据集群部署(十五)Zookeeper集群部署

1、集群规划主机版本角色系统用户hd1.dtstack.com3.7.1followerzookeeperhd2.dtstack.com3.7.1leaderzookeeperhd3.dtstack....

Redis Sentinel与Cluster安装部署(三)

4.3redis-cluster-resharding重新分配槽1、查看当前集群节点状态信息 # redis-cli --cluster check 172.32.1.59:7000 -a dt20...

HDFS核心参数

HDFS核心参数

1.NameNode内存生产配置(1)NameNode内存计算,每个文件块大概占用150byte,一台服务器128G内存为例,能存储9.1亿个文件128 * 1024 * 1024 * 1024  /...

开源大数据集群部署(八)Ranger编译部署

开源大数据集群部署(八)Ranger编译部署

在hd1.dtstack.com主机root权限下操作。1、 编译rangerranger二进制包编译过程在本次过程中不做详细说明。简单说明如下:Ø  在pom.xml中更改对应hadoop集群组件版...

lru_cache 缓存

Python 语法: @functools.lru_cache(maxsize=128, typed=False)Least-recently-used 装饰器。Iru 最近最少使用、cache 缓存...

Hive合并小文件:hive归档(archive)

Hive合并小文件:hive归档(archive)

一、概述       在HDFS中数据和元数据分别由DataNode和NameNode负责,这些元数据每个对象一般占用大约150个字节。大量的小文件相对于大文件会占用大量的NameNode内存。对Na...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。