课程名称: 2.3.1 How to Deploy TiDB Platform with TiUP(如何通过 TiUP 部署 TiDB)
学习时长:60
课程收获:
课程内容:
-
tiup list
查看组件
playground
-
tiup playground
快捷部署集群
-
tiup playground display
打印集群拓扑
-
tiup playground scale-out –db 1
扩容
-
tiup playground scale-in –pid 进程pid
缩容
-
tiup playground –db n –pd n –kv n
-
tiup playground scale-out –db 1 –db.binpath 目录
cluster
-
tiup cluster check /tmp/test.yaml -u root
test.yaml描述集群的拓扑结构
-
tiup cluster deploy 集群名 v4.0.0 拓扑文件 -u root
部署集群
-
tiup cluster start 集群名
启动集群(顺序:PD→TiKV→TiDB)
-
tiup cluster display 集群名
查看集群拓扑
-
tiup cluster scale-out 集群名 扩容拓扑文件
#拓扑文件示例 tidb_servers: - host: 172.16l5l134
-
tiup cluster scale-in 集群名 -N 组件id(ip:端口)
缩容
-
tiup cluster destroy 集群名
删除集群(不可逆)
配置文件
tiup/topology.example.yaml at master · pingcap/tiup · GitHub
global
集群全集配置。
- user:集群用什么用户去启动,目标机器上不存在该用户时会创建一个用户
- group:当需要在目标机器上创建用户时,指定用户的group
- ssh_port:tiup连接目标机器使用的ssh端口
- deploy_dir:部署路径
- 绝对路径:组件部署路径=部署路径/组件名-组件端口(/tidb-deploy/tidb-4000)
- 相对路径:组件部署路径=/home/用户/部署路径/组件名-组件端口(/home/chenyj/deploy/tidb-4000)
- data_dir:数据存放路径
- 绝对路径:组件数据存储路径=数据存放路径/组件名-组件端口
- 相对路径:组件数据存放路径=部署路径/数据存放路径
- log_dir:日志路径,规则同data_dir
- os:默认linux
- arch:平台架构
resource_control
资源限制
- memory_limit:内存限制
- cpu_quota:CPU限制
- io_read_bandwidth_max:读带宽限制
- io_write_bandwidth_max:写带宽限制
- limit_core:
monitored
- node_exporter_port:部署node exporter的监控端口
- blackbox_exporter_port:部署blackboxexporter的监控端口
server_configs
- tidb:tidb全局配置
- tikv:tikv全局配置
- pd:pd全局配置
pd_serviers
- host:目标部署机器ip
- ssh_port:tiup连接目标机器的ssh连接端口
- name:pd唯一名字
- client_port:pd客户端监听端口
- peer_port:pd之间通信端口
- deploy_dir
- data_dir
- log_dir
- numa_node:分配numa节点,好像是绑定CUP核的,需要安装numactl
- config:覆盖server_configs中对应组件的全局配置
tikv_service
基本同pd_services。当tikv部署在同一台机器上时,需要配置相同的server.labels,避免一份数据调度到一台机器,造成单点问题。
tikv_servers:
- host: 10.0.1.14
# 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"
# numa_node: "0,1"
# # The following configs are used to overwrite the `server_configs.tikv` values.
config:
server.labels: { zone: "zone1", host: "host1" }
# server.grpc-concurrency: 4
- host: 10.0.1.14
config:
server.labels: { zone: "zone1", host: "host1" }
tiflash_servers
它的data_dir支持多个路径,用逗号隔开,其他只支持一个。