写点什么

记一次 TiDB v7.1 版本生产环境的完整搭建流程

  • 2023-10-27
    北京
  • 本文字数:2025 字

    阅读完需:约 7 分钟

作者: 随缘天空原文来源:https://tidb.net/blog/1053fcd8

本文包含以下内容:

1、安装的硬件要求


2、安装前环境检查及系统优化


3、集群搭建


4、服务访问

1、硬件要求

tidb 集群搭建对服务器的 cpu 和内存有要求,过低的配置可能会导致搭建失败或影响集群性能


2、安装前环境检查及系统优化

为了保证安装顺利和集群的性能,安装前我们需要对环境做一些检查,以便使用 tiup check 命令检查时能顺利的通过校验检查以及优化一些系统参数,以便保证安装后集群的性能。此流程主要分为 5 大步。第一:磁盘挂载,第二:关闭防火墙,第三:检测及关闭系统 swap,第四:检测及安装 NTP 服务,第五: 操作系统检查及参数优化


  • 磁盘挂载:



  5、编辑 `/etc/fstab` 文件,添加 `nodelalloc` 挂载参数。 执行如下命令进入fstab文件,然后将文本添加到最后一行并保存
`vi /etc/fstab`
文本: `UUID=c51eb23b-195c-4061-92a9-3fad812cc12f /data1 ext4 defaults,nodelalloc,noatime 0 2`
上述的uuid要换成步骤4中机器实际的uuid,/data1换成服务器上实际被挂载的目录
6、挂载数据盘 `mount -a`
7、`执行以下命令`,如果文件系统为 ext4,并且挂载参数中包含 `nodelalloc`,则表示已生效。
`mount -t ext4`
复制代码


  • 关闭防火墙

  • 检测及关闭系统 swap

  • 检测及安装 NTP 服务



     2、若返回报错信息Unit ntpd.service could not be found.,请尝试执行以下命令,以查看与NTP进行时钟同步所使用的系统配置是chronyd还是ntpd:
`sudo systemctl status chronyd.service`
复制代码


如果输出 synchronised to NTP server,表示正在与 NTP 服务器正常同步 如果系统使用的是 ntpd 时间同步服务,可忽略第 4 步 4、执行 chronyc tracking 命令查看 Chrony 服务是否与 NTP 服务器同步。 chronyc tracking 注意:该操作仅适用于使用 Chrony 的系统,不适用于使用 NTPd 的系统。 如果该命令返回结果如下,则表示 Chrony 服务未正常运行:需要手动启动该服务 启动 chronyd 服务并设置自启动:systemctl start chronyd 启动服务<br> systemctl status chronyd 查看状态<br> systemctl enable chronyd 设置开机自启


3、集群搭建

此流程主要包含 tiup 工具安装、声明全局环境变量、安装 TiUP 的 cluster 组件、添加集群配置文件、check 环境检查、部署和启动等操作。


  • 下载并安装 TiUP。curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh



  • 声明全局环境变量。 source ${your_shell_profile}



     TiUP 安装完成后会提示对应 Shell profile 文件的绝对路径。在执行以下 source 命令前,需要将 ${your\_shell\_profile} 修改为 Shell profile 文件的实际位置
复制代码


  • 安装 TiUP 的 cluster 组件。 tiup cluster


  • 添加集群配置文件

  • 安装集群前,需要先创建集群的拓扑文件,此处可以直接先在本地创建好,比如 topo.yanl,复制以下内容,然后传到服务器即可。文件中路径和 ip 根据实际情况声明,配置文件中的 host 换成实际安装的 ip 地址,多节点时最好每个节点安装到不同的服务器上,比如有三个 tikv 节点,需要三台不同的服务器。

  • 执行部署命令前,先检查环境是否满足要求

  • 如果报错:Error:none of ssh password,identity file ,SSH_AUTH_SOCK specified,改成如下命令,

  • tiup cluster check ./topo.yaml --user root -p

  • 然后输入密码即可检查环境。如果环境检查不通过,使用如下命令自行修复

  • 尽量保证检查的结果 result 栏为 pass 状态,如果没有绑核,numa 绑核对应的那栏失败可以不用太关心,但是其他栏尽量都通过,最不济是 warning 状态

  • 部署:

  • 启动集群:

4、服务访问

安装 MySQL 客户端。如果已安装 MySQL 客户端则可跳过这一步骤。yum -y install mysql


访问 TiDB 数据库,密码为空,也可以使用数据库客户端连接mysql -h 10.0.1.1 -P 4000 -u root


访问 TiDB 的 Grafana 监控:


通过 http://{grafana-ip}:3000 访问集群 Grafana 监控页面,默认用户名和密码均为 admin。


访问 TiDB 的 Dashboard:


通过 http://{pd-ip}:2379/dashboard 访问集群 TiDB Dashboard 监控页面,默认用户名为 root,密码为空。


执行以下命令查看集群的拓扑结构和状态:tiup cluster display <cluster-name>


到此,集群服务搭建完成,可以正常使用。


以下为集群操作的几个常用命令


停止组件例如,下列命令只停止 TiDB 组件:tiup cluster stop ${cluster-name} -R tidb
停止组件中的某一个节点tiup cluster stop ${cluster-name} -N 10.0.6.194:9090
启动组件中的某一个节点tiup cluster start ${cluster-name} -N 10.0.6.194:9090
更改组件的配置后,重启组件tiup cluster reload ${cluster-name} -R 组件名,比如tiup cluster reload tidb-pro -R tidb
复制代码


发布于: 刚刚阅读数: 3
用户头像

TiDB 社区官网:https://tidb.net/ 2021-12-15 加入

TiDB 社区干货传送门是由 TiDB 社区中布道师组委会自发组织的 TiDB 社区优质内容对外宣布的栏目,旨在加深 TiDBer 之间的交流和学习。一起构建有爱、互助、共创共建的 TiDB 社区 https://tidb.net/

评论

发布
暂无评论
记一次 TiDB v7.1 版本生产环境的完整搭建流程_7.x 实践_TiDB 社区干货传送门_InfoQ写作社区