MyCAT集群在线扩容的场景小结

这是学习笔记的第  2318 篇文章

最近线上有一套集群的存储存在瓶颈,导致经常会有报警,如果按照存储现状和稍后的假期的数据增长,很可能会带来一些意料之外的问题,所以整体评估后,决定对已有的集群先做在线扩容,待假期结束后再做缩容。

目前集群的整体结构设计如下,其中P1,P2为中间件节点,P2暂时未投入使用,M1->M4是物理分片节点,每个物理分片包含4个逻辑分片,所以一张表被拆分为了16份,目前集群中的数据表为一张周期表,按日写入,即表类似于test_20210105

如果要实现在线扩容,达到的一个中间状态如下,即把已有的从库分片提上来作为物理分片,这样4个分片就可以快速扩展为8个分片。

如果要实践,整个步骤如下:

1)配置数据分片的双主复制,停掉数据分片节点的MHA服务,避免服务扩容期间出现意料之外的情况

2)在中间件节点P2的datahost从4节点配置改为8节点,相应的datanode也需要重新配置一套8分片的映射配置

3)清理T+1的周期表,在中间件节点P1清理,比如清理的是test_20210206

4)新建test_20210206的周期表,在中间件节点P2创建

5)备份P1节点的schema.xml配置,将P2的配置刷新到P1节点

6)重启中间件节点P1,配置重新生效

7)将M1->S1,.. M4->S4的双主配置清理

8)释放中间件节点P2

9)对2021026的数据表进行提前确认,并在零点进行再次确认

切换后的结构如下:

而缩容的场景相对会复杂一些,我们稍后分享。

各大平台都可以找到我

  • 微信公众号:杨建荣的学习笔记

  • Github:@jeanron100

  • CSDN:@jeanron100

  • 知乎:@jeanron100

  • 头条号:@ 杨建荣的学习笔记

  • 网易号:@杨建荣的数据库笔记

  • 大鱼号:@杨建荣的数据库笔记

  • 腾讯云+社区:@杨建荣的学习笔记

近期热文:

《大江大河2》最触动我的一段经典对话

MySQL 5.7和MySQL 8.0的4个细节差异

从生命周期的角度来规划数据库运维体系

使用图表分析2020北京积分落户的数据

MySQL 8.0给开发方向带来的一些困扰

关于故障复盘的一些总结

迁移到MySQL的业务架构演进实战

MySQL业务双活的初步设计方案

如何优化MySQL千万级大表,我写了6000字的解读

一道经典的MySQL面试题,答案出现三次反转

小白学MySQL要多久?我整理了10多个问题的答案

转载热文:

工行“去O”数据库选型与分布式架构设计

MySQL 实战笔记 第01期:MySQL 角色管理

MGR用哪个版本?5.7 vs 8.0

SQLcl这个可爱的小工具,来了解一下呀~

CPU占用又爆了?MySQL到底在干什么

这个MySQL优化原理剖析,比照X光还清楚

自己动手写SQL执行引擎

最受欢迎的微服务框架概览

程序员,保住你的钱袋子!

QQ群号: 763628645

QQ群二维码如下, 添加请注明:姓名+地区+职位,否则不予通过

在看 ,让更多人看到