对 TiDB 集群进行扩容和缩容
在这个练习中,我们对现有的 TiDB 数据库集群进行扩容操作(加入一个 TiKV 节点),之后进行缩容操作(减少一个 TiKV 节点)。
- 查询现有的数据库集群,发现有 3 个 TiKV 节点
[root@db1 ~]# tiup cluster display tidb-test

- 编辑扩容文件,内容如下
[root@db1 ~]# cat scale-out-tikv.yaml
tikv_servers:
- host: 192.168.0.98
ssh_port: 22
port: 20160
status_port: 20180
deploy_dir: /tidb-deploy/tikv-20160
data_dir: /tidb-data/tikv-20160
log_dir: /tidb-deploy/tikv-20160/log
其中,加入 TiKV 节点 IP 地址为:192.168.0.98,端口号:20160
- 执行check命令,对扩容节点进行环境检查和修复
[root@db1 ~]# tiup cluster check tidb-test scale-out-tikv.yaml --cluster --apply -u root -p

同样,–apply 也会自动修复,有些自动修复不了的就需要手动处理

处理方法参考:TIDB-PCTA系列实战测试–使用TiUP部署TiDB(2) 或者官方手册:https://docs.pingcap.com/zh/tidb/v5.0/check-before-deployment

再次检查,同样也是irqbalance.service服务有问题,不知道啥情况,先忽略吧。
- 执行如下命令,进行扩容操作
[root@db1 ~]# tiup cluster scale-out tidb-test scale-out-tikv.yaml -uroot -p


- 查看集群状态,发现新的 TiKV 节点已经加入
[root@db1 ~]# tiup cluster display tidb-test

- 扩容成功后,我们进行缩容操作
[root@db1 ~]# tiup cluster scale-in tidb-test --node 192.168.0.98:20160

- 查询缩容后的集群状态,发现 192.168.0.98 节点的 Status 已经变为 Tombstone,代表节点已经下线
[root@db1 ~]# tiup cluster display tidb-test

- 执行 tiup cluster prune tidb-test , 清理节点信息
[root@db1 ~]# tiup cluster prune tidb-test


- 查询集群状态,发现之前扩容的节点已经消失了
[root@db1 ~]# tiup cluster display tidb-test

- 同样的操作扩容和缩容PD节点和TiDB-Server节点
- 编辑PD节点扩容文件,内容如下
[root@db1 ~]# cat scale-out-pd.yaml
pd_servers:
- host: 192.168.0.98
ssh_port: 22
name: pd-192.168.0.98-2379
client_port: 2379
peer_port: 2380
deploy_dir: /tidb-deploy/pd-2379
data_dir: /tidb-data/pd-2379
log_dir: /tidb-deploy/pd-2379/log
arch: amd64
os: linux
- 扩容PD节点
[root@db1 ~]# tiup cluster check tidb-test scale-out-pd.yaml --cluster --apply -u root -p
[root@db1 ~]# tiup cluster scale-out tidb-test scale-out-pd.yaml -uroot -p
[root@db1 ~]# tiup cluster display tidb-test

- 缩容PD节点
[root@db1 ~]# tiup cluster scale-in tidb-test --node 192.168.0.98:2379
[root@db1 ~]# tiup cluster display tidb-test

缩容PD节点不需要执行清理节点信息操作。
- 编辑TiDB-Server节点扩容文件,内容如下
[root@db1 ~]# cat scale-out-tidb.yaml
tidb_servers:
- host: 192.168.0.98
ssh_port: 22
port: 4000
status_port: 10080
deploy_dir: /tidb-deploy/tidb-4000
log_dir: /tidb-deploy/tidb-4000/log
arch: amd64
os: linux
- 扩容TiDB-Server节点
[root@db1 ~]# tiup cluster check tidb-test scale-out-tidb.yaml --cluster --apply -u root -p
[root@db1 ~]# tiup cluster scale-out tidb-test scale-out-tidb.yaml -uroot -p
[root@db1 ~]# tiup cluster display tidb-test


- 缩容TiDB-Server节点
[root@db1 ~]# tiup cluster scale-in tidb-test --node 192.168.0.98:4000
[root@db1 ~]# tiup cluster display tidb-test

缩容TiDB-Server节点也不需要执行清理节点信息操作。
- 在线扩容和缩容 TiFlash


对集群进行改名
在这个练习里,我们将集群名由 tidb-test 改为 tidb-prod,之后改回 tidb-test
[root@db1 ~]# tiup cluster display tidb-test

- 使用 tiup 进行集群名修改
[root@db1 ~]# tiup cluster rename tidb-test tidb-prod


- 查看集群状态,发现集群名已经改为 tidb-prod
[root@db1 ~]# tiup cluster display tidb-prod

- 使用 tiup 进行集群名修改,改为 tidb-test
[root@db1 ~]# tiup cluster rename tidb-prod tidb-test
- 查看集群状态,发现集群名已经改为 tidb-test
[root@db1 ~]# tiup cluster display tidb-test

清理集群数据(谨慎操作)

重新构建集群(谨慎操作)

时区的修改

TiDB Cluster 的升级










将 TiDB 集群从 v4.0 升级到 v5.0
在本练习中,我们将已经部署好的 TiDB 数据库 v4.0 版本集群升级到 v5.0 版本,并且采用不停库的升级方法。
- 安装一个 TiDB v4.0 的环境
参考之前的文档:TIDB-PCTA系列实战测试–使用TiUP部署TiDB(2)
[root@db1 ~]# tiup cluster deploy tidb-test v4.0.0 ./topology.yaml --user root -p
- 升级前,请您检查现有的 TiDB 数据库集群,版本为 v4.0
[root@db1 ~]# tiup cluster display tidb-test

- 使用 TiUP 组件升级 TiDB 集群到 v5.0,此过程不停数据库
[root@db1 ~]# tiup cluster upgrade tidb-test v5.0.0


- 升级后, 请您检查现有的 TiDB 数据库集群,版本为 v5.0
[root@db1 ~]# tiup cluster display tidb-test

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




