【TiDB】TiDB离线方式部署

目录

1 下载TiDB离线组件包

2 安装TiUP

3 合并离线包

4 TIDB 软件和硬件环境建议配置

5 TiDB环境与系统配置检查

6 生成集群初始化配置文件模板 

7 执行部署命令

1 检查就能存在的潜在风险

2 手动修复风险

3 部署 TiDB 集群

8 查看TIUP管理的集群情况

9 检查部署的 TiDB 集群情况

10 启动集群

参考 :


生产环境一般无法连接到外网环境 ,所以直接使用TiUP在线安装TiDB 的方式不太可取 。本篇博客介绍如何使用TiUP离线安装TiDB 

下载地址

分布式数据库 TiDB 社区版 | PingCAP

1 下载TiDB离线组件包

wget https://download.pingcap.org/tidb-community-server-v6.5.5-linux-amd64.tar.gz

wget https://download.pingcap.org/tidb-community-toolkit-v6.5.5-linux-amd64.tar.gz

2 安装TiUP

将离线包发送到目标集群的中控机后,执行以下命令安装 TiUP 组件:

tar -zxvf tidb-community-server-v6.5.5-linux-amd64.tar.gz
cd tidb-community-server-v6.5.5-linux-amd64
sh local_install.sh # 脚本的内容大致为 :检查系统 ,架构 ,tar 命令是否存在 ,设置TiUP的环境变量 设置离线镜像等 

执行成功之后输出以下内容:

设置离线镜像为 /home/software/tidb-community-server-v6.5.5-linux-amd64

生效环境变量 source /root/.bash_profile 或者 从新开一个终端

TiUP的可执行命令在目录下 /root/.tiup/bin/tiup

$ sh local_install.sh
Disable telemetry success
Successfully set mirror to /home/software/tidb-community-server-v6.5.5-linux-amd64
Detected shell: bash
Shell profile:  /root/.bash_profile
/root/.bash_profile has been modified to to add tiup to PATH
open a new terminal or source /root/.bash_profile to use it
Installed path: /root/.tiup/bin/tiup
===============================================
1. source /root/.bash_profile
2. Have a try:   tiup playground
===============================================

local_install.sh 脚本会自动执行 tiup mirror set tidb-community-server-${version}-linux-amd64 命令将当前镜像地址设置为 tidb-community-server-${version}-linux-amd64

若需将镜像切换到其他目录,可以通过手动执行 tiup mirror set <mirror-dir> 进行切换。如果需要切换到在线环境,可执行 tiup mirror set https://tiup-mirrors.pingcap.com

3 合并离线包

如果是通过官方下载页面下载的离线软件包,需要将 TiDB-community-server 软件包和 TiDB-community-toolkit 软件包合并到离线镜像中。执行以下命令合并离线组件到 server 目录下。

# 解压组件包 
tar -xf tidb-community-toolkit-v6.5.5-linux-amd64.tar.gz# 查看目录
ls -ld tidb-community-server-v6.5.5-linux-amd64 tidb-community-toolkit-v6.5.5-linux-amd64cp -rp keys ~/.tiup/
# 合并镜像包
tiup mirror merge ../tidb-community-toolkit-v6.5.5-linux-amd64
$ tiup mirror show
/home/software/tidb-community-server-v6.5.5-linux-amd64$ which tiup
/root/.tiup/bin/tiup

4 TIDB 软件和硬件环境建议配置

TiDB 软件和硬件环境建议配置 | PingCAP 文档中心

5 TiDB环境与系统配置检查

TiDB 环境与系统配置检查 | PingCAP 文档中心

6 生成集群初始化配置文件模板 

执行如下命令,生成集群初始化配置文件:

# 生成在执行命令的目录下 tiup cluster template > topology.yaml

7 执行部署命令

1 检查就能存在的潜在风险

tiup cluster check tidb.yaml

2 手动修复风险

检测出来的风险都可以通过官方文档找到解决方案

例如 报错

10.79.23.47  limits          Fail    soft limit of 'nofile' for user 'tidb' is not set or too low
10.79.23.47  limits          Fail    hard limit of 'nofile' for user 'tidb' is not set or too low
10.79.23.47  limits          Fail    soft limit of 'stack' for user 'tidb' is not set or too low

解决

cat << EOF >>/etc/security/limits.conf
tidb           soft    nofile          1000000
tidb           hard    nofile          1000000
tidb           soft    stack          32768
tidb           hard    stack          32768
EOF


当检查没有fail时,

3 部署 TiDB 集群

tiup cluster deploy tidb-test v6.5.5  tidb.yaml

以上部署示例中:

  • tidb-test 为部署的集群名称。
  • v6.5.5 为部署的集群版本,可以通过执行 tiup list tidb 来查看 TiUP 支持的最新可用版本。
  • 初始化配置文件为tidb.yaml
  • --user root 表示通过 root 用户登录到目标主机完成集群部署,该用户需要有 ssh 到目标机器的权限,并且在目标机器有 sudo 权限。也可以用其他有 ssh 和 sudo 权限的用户完成部署。
  • [-i] 及 [-p] 为可选项,如果已经配置免密登录目标机,则不需填写。否则选择其一即可,[-i] 为可登录到目标机的 root 用户(或 --user 指定的其他用户)的私钥,也可使用 [-p] 交互式输入该用户的密码。

预期日志结尾输出 Deployed cluster `tidb-test` successfully 关键词,表示部署成功。

8 查看TIUP管理的集群情况

TiUP 支持管理多个 TiDB 集群,该命令会输出当前通过 TiUP cluster 管理的所有集群信息,包括集群名称、部署用户、版本、密钥信息等。

$ tiup cluster list
tiup is checking updates for component cluster ...
Starting component `cluster`: /root/.tiup/components/cluster/v1.13.0/tiup-cluster list
Name       User  Version  Path                                            PrivateKey
----       ----  -------  ----                                            ----------
tidb-test  tidb  v6.5.5   /root/.tiup/storage/cluster/clusters/tidb-test  /root/.tiup/storage/cluster/clusters/tidb-test/ssh/id_rsa

9 检查部署的 TiDB 集群情况

预期输出包括 tidb-test 集群中实例 ID、角色、主机、监听端口和状态(由于还未启动,所以状态为 Down/inactive)、目录信息。

$ tiup cluster display tidb-test
tiup is checking updates for component cluster ...
Starting component `cluster`: /root/.tiup/components/cluster/v1.13.0/tiup-cluster display tidb-test
Cluster type:       tidb
Cluster name:       tidb-test
Cluster version:    v6.5.5
Deploy user:        tidb
SSH type:           builtin
Grafana URL:        http://10.79.23.47:3001
ID                 Role          Host         Ports        OS/Arch       Status  Data Dir                                   Deploy Dir
--                 ----          ----         -----        -------       ------  --------                                   ----------
10.79.23.47:9093   alertmanager  10.79.23.47  9093/9094    linux/x86_64  Down    /home/storage/tidb_data/alertmanager-9093  /home/storage/tidb_deploy/alertmanager-9093
10.79.23.47:3001   grafana       10.79.23.47  3001         linux/x86_64  Down    -                                          /home/storage/tidb_deploy/grafana-3001
10.79.23.45:2379   pd            10.79.23.45  2379/2380    linux/x86_64  Down    /home/storage/tidb_data/pd-2379            /home/storage/tidb_deploy/pd-2379
10.79.23.46:2379   pd            10.79.23.46  2379/2380    linux/x86_64  Down    /home/storage/tidb_data/pd-2379            /home/storage/tidb_deploy/pd-2379
10.79.23.47:2379   pd            10.79.23.47  2379/2380    linux/x86_64  Down    /home/storage/tidb_data/pd-2379            /home/storage/tidb_deploy/pd-2379
10.79.23.47:9090   prometheus    10.79.23.47  9090/12020   linux/x86_64  Down    /home/storage/tidb_data/prometheus-9090    /home/storage/tidb_deploy/prometheus-9090
10.79.23.45:4000   tidb          10.79.23.45  4000/10080   linux/x86_64  Down    -                                          /home/storage/tidb_deploy/tidb-4000
10.79.23.46:4000   tidb          10.79.23.46  4000/10080   linux/x86_64  Down    -                                          /home/storage/tidb_deploy/tidb-4000
10.79.23.45:20160  tikv          10.79.23.45  20160/20180  linux/x86_64  N/A     /home/storage/tidb_data/tikv-20160         /home/storage/tidb_deploy/tikv-20160
10.79.23.46:20160  tikv          10.79.23.46  20160/20180  linux/x86_64  N/A     /home/storage/tidb_data/tikv-20160         /home/storage/tidb_deploy/tikv-20160
10.79.23.47:20160  tikv          10.79.23.47  20160/20180  linux/x86_64  N/A     /home/storage/tidb_data/tikv-20160         /home/storage/tidb_deploy/tikv-20160
Total nodes: 11

10 启动集群

启动 tiup cluster start tidb-test

$ tiup cluster start tidb-test
tiup is checking updates for component cluster ...
Starting component `cluster`: /root/.tiup/components/cluster/v1.13.0/tiup-cluster start tidb-test
Starting cluster tidb-test...
+ [ Serial ] - SSHKeySet: privateKey=/root/.tiup/storage/cluster/clusters/tidb-test/ssh/id_rsa, publicKey=/root/.tiup/storage/cluster/clusters/tidb-test/ssh/id_rsa.pub
+ [Parallel] - UserSSH: user=tidb, host=10.79.23.46
+ [Parallel] - UserSSH: user=tidb, host=10.79.23.46
+ [Parallel] - UserSSH: user=tidb, host=10.79.23.45
+ [Parallel] - UserSSH: user=tidb, host=10.79.23.47
+ [Parallel] - UserSSH: user=tidb, host=10.79.23.47
+ [Parallel] - UserSSH: user=tidb, host=10.79.23.46
+ [Parallel] - UserSSH: user=tidb, host=10.79.23.47
+ [Parallel] - UserSSH: user=tidb, host=10.79.23.47
+ [Parallel] - UserSSH: user=tidb, host=10.79.23.47
+ [Parallel] - UserSSH: user=tidb, host=10.79.23.45
+ [Parallel] - UserSSH: user=tidb, host=10.79.23.45
+ [ Serial ] - StartCluster
Starting component pdStarting instance 10.79.23.47:2379Starting instance 10.79.23.46:2379Starting instance 10.79.23.45:2379Start instance 10.79.23.45:2379 successStart instance 10.79.23.47:2379 successStart instance 10.79.23.46:2379 success
Starting component tikvStarting instance 10.79.23.47:20160Starting instance 10.79.23.46:20160Starting instance 10.79.23.45:20160Start instance 10.79.23.47:20160 successStart instance 10.79.23.46:20160 successStart instance 10.79.23.45:20160 success
Starting component tidbStarting instance 10.79.23.46:4000Starting instance 10.79.23.45:4000Start instance 10.79.23.45:4000 successStart instance 10.79.23.46:4000 success
Starting component prometheusStarting instance 10.79.23.47:9090Start instance 10.79.23.47:9090 success
Starting component grafanaStarting instance 10.79.23.47:3001Start instance 10.79.23.47:3001 success
Starting component alertmanagerStarting instance 10.79.23.47:9093Start instance 10.79.23.47:9093 success
Starting component node_exporterStarting instance 10.79.23.45Starting instance 10.79.23.47Starting instance 10.79.23.46Start 10.79.23.45 successStart 10.79.23.47 successStart 10.79.23.46 success
Starting component blackbox_exporterStarting instance 10.79.23.47Starting instance 10.79.23.45Starting instance 10.79.23.46Start 10.79.23.45 successStart 10.79.23.47 successStart 10.79.23.46 success
+ [ Serial ] - UpdateTopology: cluster=tidb-test
Started cluster `tidb-test` successfully

停止

 tiup cluster stop tidb-test

参考 :

使用 TiUP 离线部署 TiDB 集群 | PingCAP 文档中心

使用 TiUP 部署 TiDB 集群 | PingCAP 文档中心 (包含离线安装方式)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/175361.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【jupyter notebook中插件 nbextensions 安装失败分析与解决方法】

文章目录 问题描述分析与解决总结 问题描述 一开始在安装 notebook 中的插件 nbextensions 时根本没有注意到版本的适配问题&#xff0c;都是进行默认的安装&#xff0c;结果安装是最新版本的 notebook7.x&#xff0c;恰好 notebook7.x 版本不再适应插件 nbextensions&#xf…

使用Arthas排查性能问题

Arthas 是一款线上监控诊断产品&#xff0c;通过全局视角实时查看应用 load、内存、gc、线程的状态信息&#xff0c;并能在不修改应用代码的情况下&#xff0c;对业务问题进行诊断&#xff0c;包括查看方法调用的出入参、异常&#xff0c;监测方法执行耗时&#xff0c;类加载信…

Open Feign 源码解析(四) --- 请求对象构造(上)

Open Feign 源码解析四 请求对象的构造&#xff08;上&#xff09; 源码前三篇文章写了这个图的过程 源码前三篇文章的内容归纳起来就是讲了这样的问题&#xff1a; 如何把接口转换为具有发送http请求能力的feign client对象以及如何整合到Spring容器中&#xff1f; 如何构造…

普通表计读数开发思路

一、普通表计类型介绍&#x1f349; 常见的普通表计有SF6&#xff0c;压力表&#xff0c;油位表&#xff08;指针类&#xff09;等。 图1&#xff1a;( 压力表) 图2&#xff1a;&#xff08;油位表-指针类&#xff09; 图3&#xff1a;&#xff08;SF6表&#xff09; 图4:&a…

linux 磁盘管理、分区管理常用命令

文章目录 基础命令挂载新硬盘/分区添加内存交换分区swaplvm分区管理模式 基础命令 查看目录文件大小 du -sh /backup du -sh /backup/* du -sh *查看磁盘挂载信息 df -lhT查看某个目录挂载在哪个分区&#xff0c;以及分区的磁盘使用情况 df [目录] #例如&#xff1a;df /ho…

(二) Windows 下 Sublime Text 3 安装离线插件 Anaconda

1 下载 Sublime Text 3 免安装版 Download - Sublime Text 2 下载 Package Control&#xff0c;放到 Sublime Text Build 3211\Data\Installed Packages 目录下。 Installation - Package Control 3 页面搜索 anaconda anaconda - Search - Package Control Anaconda - Pac…

vue3通过provide和inject实现多层级组件通信

父组件 <template><div><h1>我是父组件 {{num}}</h1><hr><child></child></div> </template><script setup> import child from ./child.vue; import { ref,provide } from vue; let num ref(520) provide(pare…

kafka的详细安装部署

简介&#xff1a; Kafka是一个分布式流处理平台&#xff0c;主要用于处理高吞吐量的实时数据流。Kafka最初由LinkedIn公司开发&#xff0c;现在由Apache Software Foundation维护和开发。 Kafka的核心是一个分布式发布-订阅消息系统&#xff0c;它可以处理大量的消息流&#…

PHP TCP服务端监听端口接收客户端RFID网络读卡器上传的读卡数据

本示例使用设备&#xff1a;WIFI/TCP/UDP/HTTP协议RFID液显网络读卡器可二次开发语音播报POE-淘宝网 (taobao.com) <?php header("content-type:text/html;charsetGBK");set_time_limit(0); $port39169; //监听端口if(($socket socket_create(AF_INET, SOCK…

共享模型之不可变

前言 该文章后续还需要进行修改&#xff01;&#xff01; 不可变的解释是对象属性不可以更改。 在多线程下&#xff0c;格式转化使用SimpleDateFormat可能会报错。这是因为线程之间互相影响导致。 public class test {public static void main(String[] args) {SimpleDateFo…

抽象类-Java

抽象类 一、父类方法的不确定性二、抽象类介绍三、抽象类细节四、练习题 一、父类方法的不确定性 引入&#xff1a;对于一个动物&#xff0c;不知道它吃什么&#xff0c;比如猫吃鱼&#xff0c;兔子吃萝卜。动物类中的 eat 方法往往由它的子类去具体实现。 class Animal {pub…

qgis添加arcgis的FeatureServer

左侧浏览器-ArcGIS要素服务器-新建连接 http://sampleserver6.arcgisonline.com/arcgis/rest/services/ 展开-双击即可

sql中group by和having的使用

group by&#xff1a;按照某个字段或者某些字段进行分组。 having&#xff1a;对分组之后的数据进行再次过滤&#xff0c;having必须和group by一起用&#xff0c;且在group by后面。 比如person表如下&#xff08;以下查询均基于此表&#xff09;&#xff1a; 1.group by 用法…

为何要隐藏IP地址?网络上哪些行为需要隐藏IP和更换IP?

网络已经成为现代人生活的重要组成部分&#xff0c;人们在网络上交流、学习、娱乐、购物等。但是&#xff0c;在享受网络带来的便利时&#xff0c;我们也需要时刻保护自己的隐私和安全。其中&#xff0c;IP地址作为网络通信中的重要标识&#xff0c;如何隐藏以及在哪些情况下需…

C语言题目强化-DAY12

题型指引 一、选择题二、编程题 ★★写在前面★★ 本题库源自互联网&#xff0c;仅作为个人学习使用&#xff0c;记录C语言题目练习的过程&#xff0c;如果对你也有帮助&#xff0c;那就点个赞吧。 一、选择题 1、请阅读以下程序&#xff0c;其运行结果是&#xff08; &#x…

CMake语法解读 | Qt6需要用到

CMake 入门CMakeLists.txtmain.cpp编译示例cmake常用参数入门 Hello CMake CMake 是一个用于配置跨平台源代码项目应该如何配置的工具建立在给定的平台上。 ├── CMakeLists.txt # 希望运行的 CMake命令 ├── main.cpp # 带有main 的源文件 ├── include # 头文件目录 …

GLM: 自回归空白填充的多任务预训练语言模型

当前&#xff0c;ChatGLM-6B 在自然语言处理领域日益流行。其卓越的技术特点和强大的语言建模能力使其成为对话语言模型中的佼佼者。让我们深入了解 ChatGLM-6B 的技术特点&#xff0c;探索它在对话模型中的创新之处。 GLM: 自回归空白填充的多任务预训练语言模型 ChatGLM-6B 技…

C++二分查找视频教程:两数之和

作者推荐 利用广度优先或模拟解决米诺骨牌 本文涉及的基础知识点 二分查找算法合集 题目 给你一个下标从 1 开始的整数数组 numbers &#xff0c;该数组已按 非递减顺序排列 &#xff0c;请你从数组中找出满足相加之和等于目标数 target 的两个数。如果设这两个数分别是 n…

Webhook端口中的自签名身份验证

概述 有时&#xff0c;可能需要通过 Webhook 端口从交易伙伴处接收数据&#xff0c;但该交易伙伴可能需要更多的安全性&#xff0c;而不仅仅是用于验证入站 Webhook 请求的基本身份验证用户名/密码 – 或者您可能只想在入站 Webhook 消息上添加额外的安全层。 使用 Webhook 端…

使用STM32和蓝牙模块进行无线数据传输的实践

无线数据传输在现代通信领域中具有重要的地位&#xff0c;而蓝牙技术是一种常用的无线数据传输技术。本文介绍了如何使用STM32微控制器和蓝牙模块实现无线数据传输的方案&#xff0c;包括硬件设计、蓝牙模块配置、数据发送和接收等步骤&#xff0c;并给出相应的代码示例。 一、…