TiDB 4.0 生产环境扩容 TiKV 节点详细步骤
作者: dba_gc 原文来源:https://tidb.net/blog/a63909d7
记录一下本次生产环境 TiKV 扩容节点详细操作步骤。
背景: 由于负载问题,需要将 TiKV 从 6 台扩容 3 台,当前 6 台每台数据大概在 2.2T。扩容完成后每台 1.5T 数据左右。
TiDB 版本: 4.0.11
系统版本: CentOS 7.6
一、系统配置 (新扩容节点操作)
1、关闭防火墙
systemctl status firewalld.service
systemctl stop firewalld.service
systemctl disable firewalld.service
2、关闭 swap 分区
临时生效
sysctl -w vm.swappiness=0
永久生效
/etc/sysctl.conf 添加以下行
vm.swappiness=0
3、检查时区
echo $TZ
ll /etc/localtime
date -R
确保为东 8 区,和其他节点保持一致。
4、添加中控机访问 SSH 授信
(1) 添加 tidb 用户
useradd tidb
(2) 设置 tidb 用户密码。
passwd tidb
(3) 配置 tidb 用户 sudo 免密码
$ visudo
将 tidb ALL=(ALL) NOPASSWD: ALL 添加到文件末尾然后保存。
(4) 创建 SSH 目录
$ su - tidb
切换到 tidb 用户下执行以下命令
ssh-keygen -t rsa
touch ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
(5) 拷贝中控机公钥
拷贝中控机公钥到新节点的 ~/.ssh/authorized_keys 文件
登录中控机并切换到 tidb 用户,然后获取公钥
$ cat .ssh/id_rsa.pub
以上系统配置就完成了,记得 check 一下,确保中控机的 tidb 用户可以 ssh 到新节点。下面开始具体的扩容操作。
二、扩容 TiKV
检查一下这 2 个配置参数,不能太大也不能太小。
leader-schedule-limit 可以调整为 4,调太大 leader 迁移过高,可能会影响业务使用。
region-schedule-limit 可以调整为 32。
登录 pd 查看配置
tiup ctl pd -u http://pdip:2379 -i
>> config show all
1、编辑 toml 文件
登录中控机操作
$ touch tikv.yaml
tikv_servers: - host: 172.16.1.21 - host: 172.16.1.22
2、扩容命令
扩容前检查集群状态,确保所有组件正常后才能扩容
tiup cluster display cluster-name
执行扩容
tiup cluster scale-out cluster-name tikv.yaml
3、扩容中根据需要调整均衡速度
tiup ctl pd -u http://pdip:2379 -i
config set leader-schedule-limit 4
config set region-schedule-limit 32
本次扩容业务使用无任何影响,TiCDC 偶尔会有延迟的情况,是因为 leader 迁移导致。
4、扩容完成
PS:扩容完成后记得备份.tiup 目录
本次扩容数据均衡大概花了 51 小时。上图:
版权声明: 本文为 InfoQ 作者【TiDB 社区干货传送门】的原创文章。
原文链接:【http://xie.infoq.cn/article/8d519f28f717a5a9c8bbf0bdc】。文章转载请联系作者。
评论