阿里云ES跨账号数据迁移(reindex)

小丫2年前技术文章1016

1、背景与前置条件

总的来说,阿里云es集群间数据迁移,有三中方式,logstash、reindex、镜像备份恢复,分别使用不同的场景,本文档主要讨论reindex方式进行账号下,ES跨集群迁移时,使用reindex方式数据迁移。需满足:

A、 ES集群为同账号且是同一可用区

B、 ES集群间满足网络互通(配置实例网络互通)

C、 目标端配置自定义远程索引白名单(需重启)

2、配置实例网络互通

2.1、配置实例网络互通前置条件

为了安全性,阿里云ES实例间的网络默认是隔离的,若需要使用跨集群搜索功能,则需要将两个实例的网络进行打通。打通条件:

A、 相同版本。

B、 归属于相同账号。

C、 部署在同一个专有网络VPC(Virtual Private Cloud)中。

D、 同为单可用区实例,或同为多可用区实例。

2.2、操作步骤

A、 登录阿里云es控制台

B、 在顶部菜单栏处,选择地域。

C、 单击目标实例ID/名称链接。

D、 在左侧导航栏,单击安全配置。

E、 单击配置实例网络互通右侧的修改。

F、 在修改配置页面,单击+添加实例。

G、 在添加实例对话框中,选择需要进行网络互通的远程阿里云ES实例的ID。

image.png

3、配置自定义远程索引白名单

3.1、操作步骤

A、 登录阿里云es控制台

B、 在顶部菜单栏处,选择地域。

C、 单击目标实例ID/名称链接。

D、 在左侧导航栏,单击ES集群配置。

E、 在右测点击修改配置,输入所源集群地址:端口,并重启es集群

image.png

4、reindex数据同步操作

4.1、操作步骤

以下操作表示从源ES集群中查询名为test1的索引,查询条件为title字段为elasticsearch,将结果写入当前集群的test2索引

POST _reindex

{

"size": 5000,

"source": {

"remote": {

"host": "源端地址:9200",

"username": "源端用于名",

"password": "源端密码"

},

"index": "源端索引名",

"size": 100

},

"dest": {

"index": "目标端索引名"

}

}

备注:

A、目标端和源端索引名不需要一致,指定就好

B、目标端需要创建索引(mapping不需要创建),或者在目标集群开启自动创建索引参数(需重启)

C、第一个"size": 5000是控制整体迁移的数据量

D、第二个"size": 100是控制迁移批次(即每次迁移数据量)

4.2、迁移完成后验证

源端和目标端分别执行下面命令,对比文档数量

GET _cat/indices/index_name?v


相关文章

阿里云上oracle 11g rac部署

1 环境规划1.1 物理环境规划ECS 类型服务器类型服务器配置操作系统版本Oracle 版本阿里云g7se8C 32GCentOS 7.911.2.0.4.01.2 磁盘规划DBNAMEHOSTNA...

阿里云配置 keepalived

1 安装 keepalivedyum install keepalivedmv /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.c...

Admission 准入控制器

准入控制器什么是准入控制器?就是 API 请求进来后,准许它进入或者丰富进来的 API 请求的控制器。如图所示,MutatingAdmissionWebhook 和 ValidatingAdmissi...

DDoS木马攻击处理

DDoS木马攻击处理

问题描述云安全中心提示安全告警如下:恶意脚本代码执行DDoS木马问题解决安全组方向封禁查看次访问地址205.185.119.110 地址为国外一地址,去下载恶意脚本,因此在服务器出入安全组方向做了封禁...

MySQL 同步方式

同步方式一、分类同步大致为异步、半同步、增强版同步、全同步;二、详情1.异步复制MySQL 默认的复制策略,Master处理事务过程中,将其写入Binlog就会通知Dump thread线程处理,然后...

创建跨集群用户

1.       登陆源集群和目标集群创建迁移时需要使用的用户(例:hadoop_copy),赋予用户集群超级管理员权限和hdfs超级用户权...

发表评论    

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