AnyShare-AnyShare 7 MariaDB 节点扩容缩容最佳实践
关键字
MariaDB、扩容、缩容
适用产品
- AnyShare Enterprise 7.0.0.0 - 7.0.3.10
- AnyShare Express 7.0.0.0 - 7.0.3.10
目的
解决某些情况下,客户在使用 AnyShare 时可能因为高性能备份恢复或者集群可靠性要求,存在对 MariaDB 数据库的扩容或缩容的需求。
解决方案
场景一,扩容 MariaDB
1.通过 SSH 工具登录 AnyShare K8S Master 管理节点,执行如下命令,查看 MariaDB 节点信息与副本数,如下图所示,当前 Mariadb 副本数为 1 ,存在于 node-106-208 节点上 。
kubectl get po -n resource -o wide -l app=proton-mariadb-proton-rds-mariadb |grep mariadb

2.执行如下命令,进入 k8s 工具管理界面,输入 6,选择 Add MariaDB Node;
anysharectl

3. 通过 k8s 工具管理界面选择需要增加的 MariaDB Node 节点。这里对 1,2 节点进行添加。
警告:执行此步骤将暂时中断 AnyShare 业务,需提前准备停机时间

4.执行如下命令,查看所有的 MariaDB 的 pod 状态显示为 Running。
kubectl get po -n resource -o wide -l app=proton-mariadb-proton-rds-mariadb |grep mariadb

场景二,缩容 MariaDB 。
1.通过 SSH 工具登录 AnyShare K8S Master 管理节点,执行如下命令,查看 MariaDB 节点信息与副本数,如下图所示,当前 Mariadb 副本数为 3 ,存在于 node-106-208 ,node-106-209 , node-106-210 节点上 。
kubectl get po -n resource -o wide -l app=proton-mariadb-proton-rds-mariadb |grep mariadb

2.执行如下命令,进入 k8s 工具管理界面,输入 7,选择 Delete MariaDB Node;
anysharectl

3. 通过 k8s 工具管理界面选择需要缩减的 MariaDB Node 节点。这里对 1,2 节点进行缩减。
警告:执行此步骤将暂时中断 AnyShare 业务,需提前准备停机时间

4.执行如下命令,查看所有的 MariaDB 的 pod 状态显示为 Running。
kubectl get po -n resource -o wide -l app=proton-mariadb-proton-rds-mariadb |grep mariadb

更多信息
由于集群可靠性要求,推荐 MariaDB 副本数为单副本或者三副本。扩容视数据量大小,数据同步时间可能长达几个小时,在此期间,请务必协调足够的停机时间来进行此操作。