使用 TiUP 部署 TiDB 7.1.0 集群
参考官方文档
1. 下载社区版安装包
TiDB 社区版
TiDB 7.1.0 为长期支持版本 (Long-Term Support Releases, LTS)。
TiDB-community-server 软件包
TiDB-community-toolkit 软件包
wget https://download.pingcap.org/tidb-community-server-v7.1.0-linux-amd64.tar.gz -P /opt/software
wget https://download.pingcap.org/tidb-community-toolkit-v7.1.0-linux-amd64.tar.gz -P /opt/software
2. 准备环境(必须注意,否则后面走不通报错)
2.1 limits.conf 追加配置
vim /etc/security/limits.conf
* soft nproc 65535
* hard nproc 65535
* soft nofile 655350
* hard nofile 655350
tidb soft nofile 1000000
tidb hard nofile 1000000
tidb soft stack 10240
2.2 禁用 selinux
2.2.1 临时禁用 selinux
getenforce
setenforce 0
getenforce
2.2.2 永久禁用 selinux
vim /etc/sysconfig/selinux
SELINUX=disabled
2.3 禁用 防火墙
systemctl stop firewalld
systemctl disable firewalld
2.4 安装 numactl
yum install numactl -y
2.5 配置 sysctl.conf
vim /etc/sysctl.conf
fs.file-max = 1000001
net.core.somaxconn = 65535
net.ipv4.tcp_syncookies = 0
vm.swappiness = 0
sysctl -p
2.6 THP 追加配置
vim /etc/rc.d/rc.local
if test -f /sys/kernel/mm/transparent_hugepage/enabled;then
echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag;then
echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi
chmod +x /etc/rc.d/rc.local
2.7 SSH 免密互信
2.7.1 生成 SSH 公私钥,一路回车
ssh-keygen -t rsa
2.7.2 本机免密配置,输入 yes,输入密码
ssh-copy-id root@192.168.122.11
2.8 重启机器,生效 2.1-2.6 配置
reboot
3. 离线环境部署 TiDB
3.1 部署离线环境 TiUP 组件
tar -zxvf /opt/software/tidb-community-server-v7.1.0-linux-amd64.tar.gz -C /opt/module
sh /opt/module/tidb-community-server-v7.1.0-linux-amd64/local_install.sh
local_install.sh 脚本会自动执行 tiup mirror set tidb-community-server-${version}-linux-amd64
命令
将当前镜像地址设置为 tidb-community-server-${version}-linux-amd64
3.2 合并离线包
通过官方下载页面下载的离线软件包,需要将 TiDB-community-server 软件包和 TiDB-community-toolkit 软件包合并到离线镜像中
tar -zxvf /opt/software/tidb/tidb-community-toolkit-v7.1.0-linux-amd64.tar.gz -C /opt/module
ls -ld /opt/module/tidb-community-server-v7.1.0-linux-amd64 /opt/module/tidb-community-toolkit-v7.1.0-linux-amd64
cd /opt/module/tidb-community-server-v7.1.0-linux-amd64
cp -rp keys ~/.tiup/
tiup mirror merge /opt/module/tidb-community-toolkit-v7.1.0-linux-amd64
若需将镜像切换到其他目录,可以通过手动执行 tiup mirror set <mirror-dir>
进行切换。
如果需要切换到在线环境,可执行 tiup mirror set https://tiup-mirrors.pingcap.com
4. 初始化集群拓扑文件
tiup cluster template > /opt/module/topology.yaml
vim /opt/module/topology.yaml
编辑如下配置(单机模仿集群,生产环境换成生产集群节点即可)
pd_servers:
- host: 192.168.122.11
tidb_servers:
- host: 192.168.122.11
tikv_servers:
- host: 192.168.122.11
tiflash_servers:
- host: 192.168.122.11
monitoring_servers:
- host: 192.168.122.11
grafana_servers:
- host: 192.168.122.11
alertmanager_servers:
- host: 192.168.122.11
5. 执行部署命令
5.1 检查集群存在的潜在风险
tiup cluster check /opt/module/topology.yaml --user root
5.2 自动修复集群存在的潜在风险
tiup cluster check /opt/module/topology.yaml --apply --user root
5.3 部署 TiDB 集群
tiup cluster deploy tidb-test v7.1.0 /opt/module/topology.yaml --user root
以上部署示例中:
tidb-test 为部署的集群名称。
v7.1.0 为部署的集群版本,可以通过执行 tiup list tidb 来查看 TiUP 支持的最新可用版本。
初始化配置文件为 topology.yaml。
–user root 表示通过 root 用户登录到目标主机完成集群部署,
该用户需要有 ssh 到目标机器的权限,并且在目标机器有 sudo 权限。
也可以用其他有 ssh 和 sudo 权限的用户完成部署。
预期日志结尾输出 Deployed cluster tidb-test
successfully 关键词,表示部署成功
6. 查看 TiUP 管理的集群情况
tiup cluster list
TiUP 支持管理多个 TiDB 集群,
该命令会输出当前通过 TiUP cluster 管理的所有集群信息,
包括集群名称、部署用户、版本、密钥信息等。
7. 检查部署的 TiDB 集群情况
tiup cluster display tidb-test
预期输出包括 tidb-test 集群中实例 ID、角色、主机、监听端口和状态(由于还未启动,所以状态为 Down/inactive)、目录信息。
8. 启动集群
8.1 方式一:安全启动
tiup cluster start tidb-test --init
8.2 普通启动
tiup cluster start tidb-test
8.3 验证集群运行状态
tiup cluster display tidb-test
8.4 集群脚本
8.4.1 查看状态
vim 1_display-tidb.sh
tiup cluster display tidb-test
8.4.2 停止集群
vim 2_stop-tidb.sh
tiup cluster stop tidb-test -y
8.4.3 启动集群
vim 3_start-tidb.sh
tiup cluster start tidb-test
9. 配置 tidb 数据库 root 账户密码
9.1 首次登入不需要密码
mysql -h 127.0.0.1 -P 4000 -u root
9.2 设置密码
MySQL [(none)]> set password for 'root'@'%'=password('123456');
Query OK, 0 rows affected (0.06 sec)
MySQL [(none)]> flush privileges;
Query OK, 0 rows affected (0.03 sec)
MySQL [(none)]> quit;
Bye
[root@localhost ~]#
10. 登录 TiDB 数据库
10.1 终端登录
#!/bin/bash
mysql -h 127.0.0.1 -P 4000 -u root -p'123456'
没有 mysql 命令,安装 mysql 客户端,默认 mariadb 带有 mysql 客户端,可以使用
yum install mariadb -y
或者下载 mysql-client 安装包,安装即可
10.2 DataGrip 工具远程登录
我们下期见,拜拜!