一、TIUP工具简介
前面介绍了使用TIUP搭建TIDB集群,本篇文章详细介绍下使用TIUP对集群进行扩容和缩容。
在面对双十一这种流量突峰的场景,我们平常的TIDB集群有可能承受不住,因此需要提前进行扩容,例如增加tidb-server,以增加TIDB的计算能力,增加tikv-server,增加TIDB的存储能力。在双十一过去后,流量一般不会达到那么高的峰值了,此时集群还搭建那么多就有点浪费了,毕竟服务器的成本也是蛮高的,此时就需要进行缩容以恢复到正常状态。
下面体验下使用TIUP对TIDB集群扩容和缩容。
二、TIDB集群扩容
在上篇文章中已经搭建了TIDB集群,如果不了解的小伙伴可以看下我的上篇博客:
https://blog.csdn.net/qq_43692950/article/details/121457762
在扩容前我们先查看下集群状态
tiup cluster display tidb-test
- 1
可以看到tidb-server只有一个实例,那我们就扩展一台tidb-server以增加计算能力。
编写 scale-out.yaml 文件:
tidb_servers:
- host: 192.168.40.161
# ssh_port: 22
# port: 4000
# status_port: 10080
# deploy_dir: /data/deploy/install/deploy/tidb-4000
# log_dir: /data/deploy/install/log/tidb-4000
- 1
- 2
- 3
- 4
- 5
- 6
- 7
开始扩容:
tiup cluster scale-out tidb-test ./scale-out.yaml --user root -p
- 1
看到successfully证明扩容成功。
再次查看集群状态:
tiup cluster display tidb-test
- 1
可以看到已经有两个tidb-server了。通过navicat 就可以连接新添加的节点:
三、TIDB集群缩容
相对于扩容,缩容就很简单了,直接指定服务的ip和端口就可以:
例如把上面新增的tidb-server去除掉
tiup cluster scale-in tidb-test --node 192.168.40.161:4000
- 1
通过打印的信息可以看到已经缩容成功了。
再次查看集群状态:
tiup cluster display tidb-test
- 1
现在集群环境中就只有一台tidb-server节点了。
下面补充下TIUP的常用命令。
四、TiUP 常用指令
1. 安装TIUP
下载
curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh
- 1
声明全局环境变量
source /root/.bash_profile
- 1
2. 更新TIUP
tiup update --self
- 1
3. 安装组件
例如:安装cluster
tiup cluster
- 1
4. 更新组件
tiup update cluster
- 1
5. 查看组件的版本
例如:cluster
tiup --binary cluster
- 1
6. 生成TIDB部署的模板
tiup cluster template > topology.yaml
- 1
7. 检查和自动修复集群存在的潜在风险
tiup cluster check ./topology.yaml --apply --user root -p
- 1
8. 部署 TiDB 集群
tiup cluster deploy ${cluster-name} ${cluster-version} ./topology.yaml --user root -p
- 1
9. 查看 TiUP 管理的集群
tiup cluster list
- 1
10. 检查集群情况
tiup cluster display ${cluster-name}
- 1
11. 启动集群
tiup cluster start ${cluster-name}
- 1
12. 关闭集群
tiup cluster stop ${cluster-name}
- 1
13. 启动部分组件
tiup cluster start ${cluster-name} -R pd
- 1
13. 启动指定主机的组件
tiup cluster start ${cluster-name} -N $(ip1):${port1},$(ip2):${port2}
- 1
14. 修改集群的名称
tiup cluster rename ${cluster-old-name} ${cluster-new-name}
- 1
15. 集群升级
tiup cluster upgrade ${cluster-name} v5.0.0
- 1
16. 检查集群状态
tiup cluster check ${cluster-name} --cluster
- 1
17. 更新周边工具,比如pd-ctl
tiup install ctl:v5.0.0
- 1
喜欢的小伙伴可以关注我的个人微信公众号,获取更多学习资料!
<div id="blogExtensionBox" style="width:400px;margin:auto;margin-top:12px" class="blog-extension-box"><div class="blog_extension blog_extension_type1" id="blog_extension">
<div class="blog_extension_card" data-report-click="{"spm":"1001.2101.3001.6470"}">
<div class="blog_extension_card_left">
<img src="https://img-blog.csdnimg.cn/0d82ec2468684624922e112ae5f92707.png" alt="">
</div>
<div class="blog_extension_card_cont">
<div class="blog_extension_card_cont_l">
<span class="text">狂热JAVA小毕超</span>
<div class="blog_extension_card_cont_r">
<img class="weixin" src="https://g.csdnimg.cn/extension-box/1.1.6/image/weixin.png" alt="">
<span>微信公众号</span>
<img class="go" src="https://g.csdnimg.cn/extension-box/1.1.6/image/ic_move.png" alt="">
</div>
</div>
<span class="style">专注于JAVA、微服务、中间件等技术分享</span>
</div>
</div></div></div>
</article>