COS快照迁移ES集群

红米2年前技术文章1424

一、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


相关文章

大数据组件Superset

Superset概述Apache Superset 是一个开源的、现代的、轻量级 BI 分析工具,能够对接多种数据源、 拥有丰富的图标展示形式、支持自定义仪表盘,且拥有友好的用户界面,十分易用。Sup...

MySQL 数据迁移中 lower_case_table_names 参数影响

MySQL 数据迁移中 lower_case_table_names 参数影响

记一次 SQLServer 迁移至 MySQL 遇到的一个关于 lower_case_table_names 参数的问题。前言   将 SQLServer 数据库迁移至 MySQL 迁移过后,驼峰命名...

kafka开启Kerberos

1、修改server.properties#增加如下配置 listeners=SASL_PLAINTEXT://IP:port security.inter.broker.protocol=SAS...

MySQL运维实战之ProxySQL(9.2)ProxySQL安装和配置

proxysql安装proxysql提供了各个linux发行版的安装包,我们可以使用操作系统的包管理系统来安装proxysql。这里我们以CentOS 7为例:1、从github下载安装包根据OS版本...

网络数据链路层-MAC帧(2)

网络数据链路层-MAC帧(2)

3.ARP协议地址解析协议(Address Resolution Protocol,ARP)协议,是根据IP地址获取MAC地址的一个TCP/IP协议。3.1为什么有ARP协议?ARP 协议建立了主机...

Ambari开启kerberos+安全方案

Ambari开启kerberos+安全方案

安装Kerberosserver节点安装kerberos相关软件yum install -y krb5-server krb5-workstation krb5-libsclient节点安装yum i...

发表评论    

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