TIUP部署TiDB v4.0.10集群

2023-10-13 02:20
文章标签 部署 tidb 集群 v4.0 tiup

本文主要是介绍TIUP部署TiDB v4.0.10集群,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

使用普通用户登录中控机,以 tidb 用户为例,后续安装 TiUP 及集群管理操作均通过该用户完成

在这里插入图片描述

安装TiUP及cluster组件

执行如下命令安装 TiUP 工具:

curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh

按如下步骤设置 TiUP 环境变量:

source .bash_profile

确认 TiUP 工具是否安装:

which tiup

安装 TiUP cluster 组件

tiup cluster

如果已经安装,则更新 TiUP cluster 组件至最新版本

tiup update --self && tiup update cluster

验证当前 TiUP cluster 版本信息。执行如下命令查看 TiUP cluster 组件版本:

tiup --binary cluster

由于模拟多机部署,需要通过 root 用户调大 sshd 服务的连接数限制:
修改 /etc/ssh/sshd_configMaxSessions 调至 20。
重启 sshd 服务:

service sshd restart

创建并启动集群

按下面的配置模板,编辑配置文件,命名为 prd-mfg-cluster.yaml

# # Global variables are applied to all deployments and used as the default value of
# # the deployments if a specific deployment value is missing.global:user: "tidb"ssh_port: 22deploy_dir: "/app/tidb/deploy"data_dir: "/app/tidb/data"arch: "amd64" # Supported values: "amd64", "arm64" (default: "amd64")# # Monitored variables are applied to all the machines.
monitored:node_exporter_port: 9100blackbox_exporter_port: 9115deploy_dir: "/app/tidb/monitored/monitored-9100"data_dir: "/app/tidb/monitored/monitored-9100/data"log_dir: "/app/tidb/monitored/monitored-9100/log"server_configs:tidb:alter-primary-key: truebinlog.enable: falsebinlog.ignore-error: falselog.slow-threshold: 2000lower-case-table-names: 1max-index-length: 12288mem-quota-query: 2147483648oom-action: logperformance.max-txn-ttl: 3600000tikv:# server.grpc-concurrency: 4# raftstore.apply-pool-size: 2# raftstore.store-pool-size: 2# rocksdb.max-sub-compactions: 1# storage.block-cache.capacity: "16GB"# readpool.unified.max-thread-count: 12readpool.storage.use-unified-pool: falsereadpool.coprocessor.use-unified-pool: truepd:schedule.leader-schedule-limit: 4schedule.region-schedule-limit: 2048schedule.replica-schedule-limit: 64pd_servers:- host: 10.254.212.17ssh_port: 22name: "pd-1"client_port: 2379peer_port: 2380deploy_dir: "/app/tidb/deploy/pd-2379"data_dir: "/app/tidb/data/pd-2379"log_dir: "/app/tidb/deploy/pd-2379/log"- host: 10.254.212.18ssh_port: 22name: "pd-2"client_port: 2379peer_port: 2380deploy_dir: "/app/tidb/deploy/pd-2379"data_dir: "/app/tidb/data/pd-2379"log_dir: "/app/tidb/deploy/pd-2379/log"- host: 10.254.212.19ssh_port: 22name: "pd-3"client_port: 2379peer_port: 2380deploy_dir: "/app/tidb/deploy/pd-2379"data_dir: "/app/tidb/data/pd-2379"log_dir: "/app/tidb/deploy/pd-2379/log"tidb_servers:- host: 10.254.212.11ssh_port: 22port: 4000status_port: 10080deploy_dir: "/app/tidb/deploy/tidb-4000"log_dir: "/app/tidb/deploy/tidb-4000/log"config:log.level: warnlog.slow-query-file: tidb_slow_query.log- host: 10.254.212.12ssh_port: 22port: 4000status_port: 10080deploy_dir: "/app/tidb/deploy/tidb-4000"log_dir: "/app/tidb/deploy/tidb-4000/log"config:log.level: warnlog.slow-query-file: tidb_slow_query.log- host: 10.254.212.13ssh_port: 22port: 4000status_port: 10080deploy_dir: "/app/tidb/deploy/tidb-4000"log_dir: "/app/tidb/deploy/tidb-4000/log"config:log.level: warnlog.slow-query-file: tidb_slow_query.logtikv_servers:- host: 10.254.212.14ssh_port: 22port: 20160status_port: 20180deploy_dir: "/app/tidb/deploy/tikv-20160"data_dir: "/app/tidb/data/tikv-20160"log_dir: "/app/tidb/deploy/tikv-20160/log"- host: 10.254.212.15ssh_port: 22port: 20160status_port: 20180deploy_dir: "/app/tidb/deploy/tikv-20160"data_dir: "/app/tidb/data/tikv-20160"log_dir: "/app/tidb/deploy/tikv-20160/log"- host: 10.254.212.16ssh_port: 22port: 20160status_port: 20180deploy_dir: "/app/tidb/deploy/tikv-20160"data_dir: "/app/tidb/data/tikv-20160"log_dir: "/app/tidb/deploy/tikv-20160/log"cdc_servers:- host: 10.254.212.20port: 8300deploy_dir: "/app/tidb/deploy/cdc-8300"log_dir: "/app/tidb/deploy/cdc-8300/log"- host: 10.254.212.21port: 8300deploy_dir: "/app/tidb/deploy/cdc-8300"log_dir: "/app/tidb/deploy/cdc-8300/log"- host: 10.254.212.22port: 8300deploy_dir: "/app/tidb/deploy/cdc-8300"log_dir: "/app/tidb/deploy/cdc-8300/log"monitoring_servers:- host: 10.254.212.23ssh_port: 22port: 9090deploy_dir: "/app/tidb/deploy/prometheus-8249"data_dir: "/app/tidb/data/prometheus-8249"log_dir: "/app/tidb/deploy/prometheus-8249/log"grafana_servers:- host: 10.254.212.23port: 3000deploy_dir: /app/tidb/deploy/grafana-3000alertmanager_servers:- host: 10.254.212.23ssh_port: 22web_port: 9093cluster_port: 9094deploy_dir: "/app/tidb/deploy/alertmanager-9093"data_dir: "/app/tidb/data/alertmanager-9093"log_dir: "/app/tidb/deploy/alertmanager-9093/log"## config_file: "/home/tidb/prd-mfg-cluster/alertfeishu.yml"

执行集群部署命令:

tiup cluster deploy prd-mfg-tidb-cluster v4.0.10 /home/tidb/prd-mfg-cluster/prd-mfg-cluster.yaml --user root -p

参数 表示设置集群名称
参数 表示设置集群版本,可以通过 tiup list tidb 命令来查看当前支持部署的 TiDB 版本

启动集群

tiup cluster start prd-mfg-cluster

查看集群情况

tiup cluster display prd-mfg-cluster

访问 TiDB 的 Grafana 监控:

通过 http://10.254.212.23:3000 访问集群 Grafana 监控页面,默认用户名和密码均为 admin
访问 TiDB 的 Dashboard:
通过 http://10.254.212.19:2379/dashboard 访问集群 TiDB Dashboard 监控页面,默认用户名为 root,密码为空。
执行以下命令确认当前已经部署的集群列表:

命令

tiup cluster list

将集群升级到指定版本

tiup cluster upgrade <cluster-name> <version>

以升级到 v5.0.0 版本为例:

tiup cluster upgrade <cluster-name> v5.0.0

滚动升级会逐个升级所有的组件。升级 TiKV 期间,会逐个将 TiKV 上的所有 leader 切走再停止该 TiKV 实例。默认超时时间为
5 分钟,超过后会直接停止实例。 如果不希望驱逐 leader,而希望立刻升级,可以在上述命令中指定
–force,该方式会造成性能抖动,不会造成数据损失。 如果希望保持性能稳定,则需要保证 TiKV 上的所有 leader 驱逐完成后再停止该 TiKV 实例,可以指定 --transfer-timeout 为一个超大值,如 --transfer-timeout
100000000,单位为 s。

重启某个节点或角色

tiup cluster reload ${cluster-name} [-N <nodes>] [-R <roles>]
tiup cluster reload tidbtest -N 10.254.241.66:9001

重命名集群

tiup cluster rename ${cluster-name} ${new-name}

这篇关于TIUP部署TiDB v4.0.10集群的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/200110

相关文章

Nginx分布式部署流程分析

《Nginx分布式部署流程分析》文章介绍Nginx在分布式部署中的反向代理和负载均衡作用,用于分发请求、减轻服务器压力及解决session共享问题,涵盖配置方法、策略及Java项目应用,并提及分布式事... 目录分布式部署NginxJava中的代理代理分为正向代理和反向代理正向代理反向代理Nginx应用场景

linux部署NFS和autofs自动挂载实现过程

《linux部署NFS和autofs自动挂载实现过程》文章介绍了NFS(网络文件系统)和Autofs的原理与配置,NFS通过RPC实现跨系统文件共享,需配置/etc/exports和nfs.conf,... 目录(一)NFS1. 什么是NFS2.NFS守护进程3.RPC服务4. 原理5. 部署5.1安装NF

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

Nginx部署HTTP/3的实现步骤

《Nginx部署HTTP/3的实现步骤》本文介绍了在Nginx中部署HTTP/3的详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录前提条件第一步:安装必要的依赖库第二步:获取并构建 BoringSSL第三步:获取 Nginx

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

Redis中哨兵机制和集群的区别及说明

《Redis中哨兵机制和集群的区别及说明》Redis哨兵通过主从复制实现高可用,适用于中小规模数据;集群采用分布式分片,支持动态扩展,适合大规模数据,哨兵管理简单但扩展性弱,集群性能更强但架构复杂,根... 目录一、架构设计与节点角色1. 哨兵机制(Sentinel)2. 集群(Cluster)二、数据分片

Linux部署中的文件大小写问题的解决方案

《Linux部署中的文件大小写问题的解决方案》在本地开发环境(Windows/macOS)一切正常,但部署到Linux服务器后出现模块加载错误,核心原因是Linux文件系统严格区分大小写,所以本文给大... 目录问题背景解决方案配置要求问题背景在本地开发环境(Windows/MACOS)一切正常,但部署到

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

MySQL 主从复制部署及验证(示例详解)

《MySQL主从复制部署及验证(示例详解)》本文介绍MySQL主从复制部署步骤及学校管理数据库创建脚本,包含表结构设计、示例数据插入和查询语句,用于验证主从同步功能,感兴趣的朋友一起看看吧... 目录mysql 主从复制部署指南部署步骤1.环境准备2. 主服务器配置3. 创建复制用户4. 获取主服务器状态5

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序