有奖:语音产品征文挑战赛等你来> HOT
文档中心 > Elasticsearch Service > ES Serverless 服务指南 > 数据迁移 > 通过迁移工具全量迁移已有 ES 集群数据

概述

ES Serverless 服务已在控制台提供离线迁移工具,该工具使用的能力是 Elasticsearch 提供的快照功能,通过该工具,我们可快速的将已有 ES 集群的数据全量迁移至 ES Serverless 服务中。


注意事项

1. 仅支持 ES 版本为6.0.0 - 7.14.2的集群的数据,如有其他版本迁移诉求,可 通过 Logstash 实现全量或增量数据迁移
2. ES Serverless 服务将对迁移过来的数据收取相应的存储费用,存储大小按照迁移过来的索引主分片大小计算,费用计算方式可参考文档
3. ES Serverless 服务中的每个索引均需要指定时间字段,该字段类型类型为 date,请确保迁移过来的数据中存在与时间字段名称及类型均一致的字段,如名称一致而类型不为 date,可 通过 Reindex 方式转换字段类型


创建快照

迁移工具提供了离线快照迁移能力,因此,在控制台配置前,我们需要先对已有 ES 集群中的数据执行快照备份操作。如果待迁移集群来自于自建 ES 集群,需自行执行快照操作,将数据备份到用户账号下;如果待迁移集群来自于腾讯云 ES 集群,可使用腾讯云 ES 提供的自动快照能力(当前免费)备份数据。




备份自建 ES 集群数据

创建仓库


PUT _snapshot/web_log
{
"type": "cos",
"settings": {
"app_id": "xxxxxxx",
"access_key_id": "xxxxxx",
"access_key_secret": "xxxxxxx",
"bucket": "xxxxxx",
"region": "ap-guangzhou",
"compress": true,
"chunk_size": "500mb",
"max_snapshot_bytes_per_sec" : "50mb",
"base_path": "/"
}
}
app_id:腾讯云账号 APPID。
access_key_id:腾讯云 API 密钥 SecretId。
access_key_secret:腾讯云 API 密钥 SecretKey。
bucket:COS Bucket 名字,名字不能带 -{appId} 后缀。
region:COS Bucket 地域,例如 ap-guangzhou,此地域必须与 ES 集群为同一地域。地域编码可参考文档
compress:默认为 true,对索引元数据存储进行压缩。
base_path:备份目录。
max_snapshot_bytes_per_sec:该仓库打快照的速率,仓库级别设置,客户可根据当前集群负载调整。

创建快照


PUT _snapshot/web_log/snapshot_test
{
"ignore_unavailable": true,
"include_global_state": false,
"indices": "test3*,nginx_log,test2" //其中test2是普通索引精确匹配,test3*是模糊匹配普通索引,nginx_log是datastream
}
ignore_unavailable: 忽略不可用或不存在的索引。
include_global_state: 是否快照备份集群状态,强烈建议将此设置为false
indices:指定要快照备份的索引,支持通过'*'号模糊匹配,多个索引用英文逗号隔开切不能有空格,如对 datastream 下所有后备索引进行快照备份,直接写 datastream 名称即可。
注意:
ES Serverless 服务中的每个索引均需要指定时间字段,该字段类型类型为 date,请确保迁移过来的数据中存在与时间字段名称及类型均一致的字段,如名称一致而类型不为 date,可通过 Reindex 方式转换字段类型

查看快照

GET _snapshot/web_log/snapshot_test
该命令会返回快照的相关信息,当信息中的state字段为SUCCESS时,说明快照备份完成。

备份腾讯云 ES 集群数据

创建快照

1. 进入 ES 集群管理界面,选择对应的地域与集群,单击集群名称,进入集群详情页。
2. 进入备份管理页面,单击自动备份设置



3. 开启自动快照备份,并设置备份时间。



说明:
自动快照备份当前免费,设置后将每天执行备份操作,保存时长为7天。

查看快照

快照备份完成后,我们即可在快照列表中查看相应的快照。





操作流程

2. 快速接入数据模块,单击从已有 ES 集群迁移



3. 进入设置界面,选择待迁移集群来源。
4. 设置快照来源
4.1 待迁移集群来自于自建 ES 集群
所在地域:支持的地域与 ES Serverless 服务一致,当前为北京、上海、广州、南京、中国香港。
存储桶名称:选择快照所在的存储桶。
访问路径:选择快照所在的文件目录。


注意:
访问路径当前仅支持根目录,请勿选择其他目录下的文件。
快照名称:选择具体的快照名称。
4.2 待迁移集群来自于腾讯云 ES 集群
所在地域:支持的地域与 ES Serverless 服务一致,当前为北京、上海、广州、南京、中国香港。
集群名称:选择需迁移到 ES Serverless 服务的 ES 集群。
快照名称:选择具体的快照名称。


5. 设置待迁移索引
快照来源设置完成后,可在待迁移索引下拉框中选择需迁移的索引。



注意:
请确保以上索引中均存在与目标索引时间字段名称及类型均一致的字段,如名称一致而类型不为 date,可通过 reindex 转换字段类型
不支持迁移存在备份失败分片的索引。
不支持迁移写入模式为“按时间分区写”的自治索引。
6. 设置目标索引
选择数据需迁移到的 ES Serverless 服务的项目空间与索引。

7. 迁移校验
为确保数据迁移成功,平台将对以上填写的信息进行整体校验,如校验无误,单击确定,即可开始迁移数据。
说明:
ES Serverless 服务将对迁移过来的数据收取相应的存储费用,存储大小按照迁移过来的索引主分片大小计算,费用计算方式可参考文档
8. 查看迁移进度
发起迁移后,我们可在对应的项目空间与索引中查看数据迁移进度。
迁移完成后,如后续需要回溯迁移详情,可在目标索引变更记录中查看。