阿里云国际站经销商,主营阿里云,腾讯云,华为云,亚马逊aws,谷歌云gcp,微软云az,免费开户,代充值优惠大,联系客服飞机@jkkddd


通过reindex将自建Elasticsearch数据迁移至阿里云

前提条件
您已完成以下操作:
创建单可用区的阿里云Elasticsearch实例。
具体操作请参见创建阿里云Elasticsearch实例。
准备自建Elasticsearch集群和待迁移的数据。
如果您还没有自建Elasticsearch集群,建议您使用阿里云ECS进行搭建,具体操作步骤请参见安装并运行Elasticsearch。自建Elasticsearch集群需要满足以下条件:
所在的ECS的网络类型必须是专有网络(不支持ClassicLink方式打通的ECS),且必须与阿里云Elasticsearch在同一个专有网络下。
所在的ECS的安全组不能限制阿里云Elasticsearch实例的各节点IP(Kibana控制台可查看各节点的IP),且要开启9200端口。
能够与阿里云Elasticsearch实例连通。可在执行脚本的机器上,使用curl -XGET http://<host>:9200命令验证。
步骤一:获取终端域名(可选)
如果您创建的阿里云Elasticsearch处于新网络架构下(2020年10月及之后创建的实例属于新网络架构),需要借助PrivateLink,打通ECS上自建的Elasticsearch集群所处的网络与阿里云服务账号的网络,获取终端域名,为后续配置做准备。具体操作如下:
创建与阿里云Elasticsearch实例处于同一VPC下,且支持PrivateLink功能的负载均衡实例,详情请参见步骤一:创建支持PrivateLink功能的负载均衡实例。
配置负载均衡实例,指定所有自建Elasticsearch集群中的ECS节点为后端服务器,并监听9200端口,详情请参见步骤二:配置负载均衡实例。
创建终端节点服务,详情请参见步骤三:创建终端节点服务。
获取终端节点域名,详情请参见(可选)步骤五:查看终端节点域名。
请先记录获取到的节点域名,后续需要在步骤三:配置reindex白名单中使用。
步骤二:创建目标端索引
参考自建Elasticsearch集群中需要迁移的索引配置,提前在阿里云Elasticsearch集群中创建索引。或者为阿里云Elasticsearch集群开启自动创建索引功能(不建议)。
以Python为例,使用如下脚本,在阿里云Elasticsearch集群中批量创建自建Elasticsearch集群中需要迁移的索引。默认新创建的索引副本数为0。
步骤三:配置reindex白名单
登录阿里云Elasticsearch控制台。
在左侧导航栏,单击Elasticsearch实例。
进入目标实例。
在顶部菜单栏处,选择资源组和地域。
在Elasticsearch实例中单击目标实例ID。
在左侧导航栏,选择配置与管理 > ES集群配置。
在YML文件配置区域,单击右侧的修改配置。
在YML文件配置面板,修改其他Configure配置,配置reindex白名单。
在配置reindex白名单时,需要通过reindex.remote.whitelist参数,设置自建Elasticsearch集群的访问地址,将其添加到阿里云Elasticsearch集群的远程访问白名单中。阿里云Elasticsearch集群的网络架构不同,配置规则也不同,具体如下:
旧网络架构下:需要配置为host和port的组合,并使用逗号分隔多个主机配置。例如:otherhost:9200,another:9200,127.0.10.**:9200,localhost:**,不识别协议信息。
新网络架构下:需要配置为实例对应的终端节点域名和port的组合。例如:ep-bp1hfkx7coy8lvu4****-cn-hangzhou-i.epsrv-bp1zczi0fgoc5qtv****.cn-hangzhou.privatelink.aliyuncs.com:9200。终端节点域名可在步骤一:获取终端域名(可选)中获取,更多详细信息请参见(可选)步骤五:查看终端节点域名。