如何通过 TiUP 部署 TiDB
什么是TiUP
- 提供组件部署,下载分发等功能
- 一个单独个二进制命令行文件
- 一切模块都是组件
- 每一个组件都有多个版本和自己的使用方法
- 支持自定义仓库
- 支持离线安装
本地部署(playground)
- tiup playground v4.0.0(本地部署一个4.0版本的TiDB)
- tiup playground display(查看这个本地集群有几个节点)
- tiup playground scale-out --db 1(对本地集群进行扩容-增加一个db节点)
- tiup playground scale-in --pid xxxxx (对本地集群进行缩容 pid 后面接对应节点的Pid)
- Ctrl + c 退出刚刚tiup启动命令即可释放该本地集群
- tiup playground --db 2 --pd 3 --kv 4(启动一个2个TiDB节点、3个PD节点、4个TiKV节点的集群)
- tiup playground scale-out --db1 --db.binpath /tmp/tidb-server(用指定的dbserver进行扩容)
生产环境部署(cluster) - 需要准备拓扑文件(描述各节点所在服务器位置)
- tiup cluster check /tmp/xxxx (依据拓扑文件来执行部署前检查)
- jiqtiup cluster deploy c_name v4.0.0 /tmp/xxxx -u root(使用root用户部署一个集群)
- 集群名为c_name,版本为4.0,拓扑文件为/tmp/xxx
- 执行命令后,二次确认部署拓扑后,进行部署
- tiup cluster start c_name(启动c_name集群,这里TiUP依照启动顺序要求启动各个节点)
- tiup cluster display c_name(查看c_name集群状态)
- tiup cluster scale-out c_name /tmp/xxxx(准备扩容相关的拓扑文件,二次确认后开始扩容)
- tiup cluster scale-in ID (ID为display时显示出的相关组件的ID,二次确认后开始缩容,清除相关文件)
- tiup cluster upgrade c_name v4.0.5(将集群版本升级至4.0.5)
- tiup cluster destroy(清除集群 - 不可逆操作,清理集群文件恢复至部署前状态)
- 拓扑文件
- global 集群的全局配置
- user 集群用什么用户去启动
- group 若目标机器上user不存在,会在目标机器上创建用户并指定该用户的group
- ssh_port TiUP通过ssh去连接目标机器的端口
- deploy_dir 组件的部署目录
- data_dir 数据目录
- log_dir 日志目录
- os 目标服务器操作系统(默认Linux,暂不支持其他平台)
- arch 目标服务器架构
- resource_control 目标服务器资源控制的相关配置
- monitor 用来配置监控相关
- node_exporter_port 配置node_exporte监控端口
- blackbox_exporter_port 配置blackbox_export监控端口
- server_configs 服务配置
- tidb 描述TiDB相关的配置
- tikv 描述TiKV相关的配置
- …(依照配置文件描述进行相关配置即可)
- global 集群的全局配置
配置文件改写很多字段是不能修改的
- user
- ssh_port
- …所有的目录和端口都是不能去修改的
不能够通过编辑配置文件的方式加集群组件
通过 tiup cluser reload 来重载配置文件