袋鼠云技术团队 + 关注
手机版

来~与你讲一段ES节点扩容、数据迁移的故事……

  1. 云栖社区>
  2. 袋鼠云技术团队>
  3. 博客>
  4. 正文

来~与你讲一段ES节点扩容、数据迁移的故事……

袋鼠云 发布时间:2018-12-25 13:28:25 浏览233 评论0

摘要: 运维攻城狮 作为最优(ku)秀(bi)的职业 若是没有些方法技巧 那是极可能需要牺牲些个人时间 对此,本萌我 不能视而不见,见而不救啊!   比如,ES集群里的数据越来越大, 日增500G日志数据, 日志数量太多怎么办? 来来来,掌声有请 帮你做一波扩容,让你走上人生巅峰!   01节点信...

运维攻城狮

作为最优(ku)秀(bi)的职业

若是没有些方法技巧

那是极可能需要牺牲些个人时间

1b4afa78fb8b5c6e88f77c742d76cb5d8cde2c0e

对此,本萌我

不能视而不见,见而不救啊!

 

比如,ES集群里的数据越来越大,

日增500G日志数据,

日志数量太多怎么办?

来来来,掌声有请

185e7884bad8d2f1d5a858a40f29bce4de5abc70

帮你做一波扩容,让你走上人生巅峰!

0df068c513b19f46d2ecf5466304f70ed39c3dce

6172a8bc97cd743a08ab3e3e62b0f1af78d16a46

 

01节点信息

 

目前集群中的节点信息如下:

fcdfe98f66155ebda28fbc50a60460c5030b5854


新增数据节点规格:

 62c35de883d3a3094533aa28d4389907a00b3c2c


新增master节点规格:

a50736e92e6bb9eba49d7a27f7ffc7c8af9a88b1

 

02扩容思路

 

1、将master从集群中分离出来
2、重启节点时给集群中老节点标记一个tag:old
3、将所有索引设置只分配到带有old标签的节点
4、将不怎么使用的索引close
5、将新增的data节点加入到集群中,并设置新的tag:new
6、修改索引template,新建的索引设置新建到tag为new的节点上。
7、在业务低峰期分批将之前在old节点上的索引迁移到new节点上。

 

03实践步骤

 

1、分离master节点

查看当前master节点:

6a0afa415048e783b158a7ff675adc4122861ee4

查看集群中的所有索引,暂时关闭一批历史不需要搜索使用的索引   

ps:主要是需要重启节点,open的索引越少,集群恢复的越快!

53a7cd7ae6234454b584b2036f1981d68d8aa91a

关闭集群reroute:

分别修改集群中node001~node006的配置文件,滚动重启:

040835dd0fd55bd5c01dccb45d2df74c62121e2b

配置好新的master节点es010、es011、es012

63c1d4ddde5b74a8d3c9bde426b761bd395877a9

节点状态:

59e76b6ca5fb26ff290fa71dabd6aa8829514fb0

查看个节点tag:

814bf94d23567d6171f52b3b61801523a2f90421

重启node005,将集群master转移到专属节点。

59127885e25ee808a0a77bd38361ef3663856903

至此,master节点已经从原有集群中分离,并且集群节点也都已做了标记tag。

 

2、修改索引的配置

确保当前集群中的索引只分配到当前标记为old的数据节点,不会分配到新增的数据节点。

88ae9f2055317377f6cea377090d4eb37232876d

3、配置新数据节点

12a7055dc2baa77aa65d46fcbdbacbe1ab303547

4、打开集群分配,并分批将数据迁移

aaf68ca0725cfe940fe9829edaee04c49801e6d3

完成以上四步就可以完成整个数据迁移了smiley_82.png?tp=webp&wxfrom=5&wx_lazy=1

619b54c1c6381f808a58d1dd04a7ae9d69d9e5a4

“ElasticSearch运维技术”了解一下

课件PPT+讲师答疑+沙龙直播

学习ElasticSearch在

袋鼠云、阿里、滴滴、有赞的实践应用成果;

学习ElasticSearch的

开发思路和性能优化策略!

【云栖快讯】云栖专辑 | 阿里开发者们的第20个感悟:好的工程师为人写代码,而不仅是为编译器  详情请点击

网友评论