使用TiUP安装TiDB

目录

服务器推荐配置

在线部署 TiUP 组件

设置ssh免密登录

编辑集群拓扑文件并启动集群

修改密码

扩容

缩容

卸载集群

使用sysbench进行性能测试


TiUP 是 TiDB 4.0 版本引入的集群运维工具,TiUP cluster 是 TiUP 提供的使用 Golang 编写的集群管理组件,通过 TiUP cluster 组件就可以进行日常的运维工作,包括部署、启动、关闭、销毁、弹性扩缩容、升级 TiDB 集群,以及管理 TiDB 集群参数。目前 TiUP 可以支持部署 TiDB、TiFlash、TiDB Binlog、TiCDC,以及监控系统。

服务器推荐配置

开发及测试环境

组件      CPU	  内存	    本地存储	        网络       实例数量(最低要求)
TiDB	 8 核+	  16 GB+	无特殊要求	    千兆网卡	  1(可与 PD 同机器)
PD	     4 核+	  8 GB+	    SAS, 200 GB+	千兆网卡	  1(可与 TiDB 同机器)
TiKV	 8 核+	  32 GB+	SSD, 200 GB+	千兆网卡	  3
TiFlash	 32 核+	  64 GB+	SSD, 200 GB+	千兆网卡	  1
TiCDC	 8 核+	  16 GB+	SAS, 200 GB+	千兆网卡	  1

生产环境

组件      CPU	  内存       硬盘类型          网络	            实例数量
TiDB	 16 核+	  32 GB+	SAS	             万兆网卡(2 块最佳)	2
PD	     4核+	  8 GB+	    SSD	             万兆网卡(2 块最佳)	3
TiKV	 16 核+	  32 GB+	SSD	             万兆网卡(2 块最佳)	3
TiFlash	 48 核+	  128 GB+	1 or more SSDs	 万兆网卡(2 块最佳)	2
TiCDC	 16 核+	  64 GB+	SSD	             万兆网卡(2 块最佳)	2
监控      8 核+	  16 GB+	SAS	             千兆网卡	            1

在线部署 TiUP 组件

选择一台服务器作为主控机进行如下操作:

1. 安装 TiUP 工具
curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh

2. 设置 TiUP 环境变量
source .bash_profile

3. 确认 TiUP 工具是否安装
which tiup

4. 安装 TiUP cluster 组件
tiup cluster

5. 如果已经安装,则更新 TiUP cluster 组件至最新版本
tiup update --self && tiup update cluster

6. 验证当前 TiUP cluster 版本信息
tiup --binary cluster

设置ssh免密登录

主控机客户端生成公私钥:(一路回车默认即可)
ssh-keygen
上传公钥到其他服务器
ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.1.xxx
测试
ssh root@192.168.1.xxx

编辑集群拓扑文件并启动集群

文件名topology.yaml,配置仅参考

global:
  user: "tidb"
  ssh_port: 22
  deploy_dir: "/tidb-deploy"
  data_dir: "/tidb-data"

pd_servers:
  - host: 192.168.1.1

tidb_servers:
  - host: 192.168.1.1

tikv_servers:
  - host: 192.168.1.2
  - host: 192.168.1.3
  - host: 192.168.1.4

tiflash_servers:
  - host: 192.168.1.5

cdc_servers:
  - host: 192.168.1.6

monitoring_servers:
  - host: 192.168.1.1

grafana_servers:
  - host: 192.168.1.1

alertmanager_servers:
  - host: 192.168.1.1

执行 deploy 命令

执行 deploy 命令前,先使用 check 及 check --apply 命令,检查和自动修复集群存在的潜在风险

tiup cluster check ./topology.yaml --user root [-p] [-i /home/root/.ssh/gcp_rsa]

tiup cluster check ./topology.yaml --apply --user root [-p] [-i /home/root/.ssh/gcp_rsa]

然后执行 deploy 命令部署 TiDB 集群

tiup cluster deploy tidb-test v5.0.2 ./topology.yaml --user root [-p] [-i /home/root/.ssh/gcp_rsa]

查看 TiUP 管理的集群情况
tiup cluster list

检查部署的 TiDB 集群情况
tiup cluster display tidb-test

启动集群
tiup cluster start tidb-test

日志目录
/tidb-deploy/tikv-20160/log

修改密码

tidb默认密码为空,修改密码需找一台有mysql client的机器

mysql -h 192.168.1.1 -P 4000 -u root

ALTER USER 'root' IDENTIFIED BY 'root';

flush privileges ;

quit

扩容

tiup cluster scale-out tidb-test scale-out.yaml

缩容

tiup cluster scale-in tidb-test --node 192.168.1.xxx:<ID>

下线需要一定时间,下线节点的状态变为 Tombstone 就说明下线成功。

卸载集群

tiup cluster destroy tidb-test --force

使用sysbench进行性能测试

更新epel第三方软件库
yum install -y epel-release

安装sysbench工具
yum install -y sysbench

基准测试脚本在/usr/share/sysbench目录下

生成测试表

sudo sysbench --db-driver=mysql --mysql-host=192.168.1.xxx --mysql-port=4000 \
				   --mysql-user=root --mysql-password=root --mysql-db=bigdata \
				   --range_size=100 --table_size=100000 --threads=2 --events=0 --time=60 \
				   --rand-type=uniform /usr/share/sysbench/oltp_read_only.lua prepare

运行语句进行测试(表的读性能统计基于表的数据是100000)

sudo sysbench --db-driver=mysql --mysql-host=192.168.1.xxx --mysql-port=4000 \
				   --mysql-user=root --mysql-password=root --mysql-db=bigdata \
				   --range_size=100 --table_size=100000 --threads=2 --events=0 --time=60 \
				   --rand-type=uniform /usr/share/sysbench/oltp_read_only.lua run

运行结果如下:

SQL statistics:
    queries performed:	#性能统计
        read:                            32018	# 读统计 (select语句)
        write:                           0		# 写统计 (insert、delete、update语句)
        other:                           4574	# 其他语句 (如commit等)
        total:                           36592	# 总执行语句之和
    transactions:                        2287   (226.03 per sec.)	#总事务数(每秒处理的事务)
    queries:                             36592  (3616.44 per sec.)	#查询性能(每秒的查询性能)
    ignored errors:                      0      (0.00 per sec.)
    reconnects:                          0      (0.00 per sec.)

General statistics:
    total time:                          10.1123s	 # 总时长
    total number of events:              2287	# 事务总数

Latency (ms):		#延迟时间
         min:                                  107.13	# 最小延迟时间
         avg:                                  140.78	# 平均延迟
         max:                                  268.09	 # 最大延迟
         95th percentile:                      161.51	# 95%以上语句响应时间
         sum:                               321960.64	# 总延迟时长

Threads fairness:		# 线程公平性
    events (avg/stddev):           71.4688/0.61
    execution time (avg/stddev):   10.0613/0.04

清除测试表

sudo sysbench --db-driver=mysql --mysql-host=192.168.1.xxx --mysql-port=4000 \
				   --mysql-user=root --mysql-password=root --mysql-db=bigdata \
				   --range_size=100 --table_size=100000 --threads=2 --events=0 --time=60 \
				   --rand-type=uniform /usr/share/sysbench/oltp_read_only.lua cleanup

参考地址:https://docs.pingcap.com/zh/tidb/stable/production-deployment-using-tiup

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值