迁移方案概述
CSS服务的迁移方案适用于云ES之间的数据迁移、自建ES到云ES之间的数据迁移和第三方友商ES到云ES之间的数据迁移。可以根据实际迁移场景,选择合适的集群迁移方案。
迁移场景
不同数据来源的集群,迁移方案会有差别,本章主要介以下场景的迁移方案。
- 源端为Elasticsearch的集群迁移
Elasticsearch集群的数据迁移有多种方式可以选择,例如使用Logstash、CDM、OBS备份与恢复、ESM、跨集群复制插件等进行数据迁移。
- Logstash:Elasticsearch官方提供的数据清洗工具,ELK生态中的一部分,功能强大,可以完成不同数据源和ES数据的迁移,还可以进行数据的清洗和加工。具体操作可以参考使用Logstash迁移集群数据。
- CDM:云服务提供的云迁移工具,实现不同云服务间的集群迁移能力。具体操作可以参考。
- 备份与恢复:ES提供备份恢复能力,可以把一个集群的数据备份到OBS,在另一个集群恢复数据,完成集群间的数据迁移。具体操作可以参考使用备份与恢复迁移集群数据。
- 源端为Kafka/MQ的集群迁移
- 源端为数据库的集群迁移
迁移方案
CSS服务支持的迁移方案主要包含备份与恢复、Reindex API、Logstash+ESM和基于数据源同步的迁移方案,各方案的详细信息参见表1。
其中,基于数据源同步的迁移方案没有明显的限制,且迁移性能方面优于其他3个方案。另外基于数据源同步的迁移方案,在数据同步后随时可割接,更加方便灵活。
迁移方案 |
方案描述 |
方案限制 |
迁移性能 |
---|---|---|---|
备份与恢复 |
需要有支持s3协议的共享存储,例如OBS桶。先在源端ES集群进行数据备份,再将快照同步到目标集群,最后在目标集群中恢复数据。 |
|
数据迁移速率可配置,理想状态下等于文件拷贝速率。 |
Reindex API |
先配置源端ES与目的端ES互信,然后通过Reindex API进行数据迁移。 |
|
支持批量读写,但不支持slicing并发同步。 |
Logstash+ESM |
先申请ECS部署并配置Logstash,然后启动数据迁移。 |
|
支持批量读写,支持slicing并发同步。 |
基于数据源同步的迁移方案 |
存量数据采用Logstash迁移,增量数据通过流量复制或数据链路自动同步。 |
无 |
存量迁移速率同Logstash,增量迁移复用之前工具。 |