TiUP 离线镜像源搭建教程

前言
tiup 镜像为部署集群或通过 tiup 执行相关工具的源,可以是本地的离线镜像(本地的一个目录)或远程镜像(官方镜像 https://tiup-mirrors.pingcap.com
)。
TiUP 简介
TiUP是一个TiDB包管理器,管理众多组件如TiDB、PD、TiKV等。 当想要运行任何组件时,只需要执行一条TiUP命令即可。
TiUP 安装
在 TiDB 官方文档中,建议联网安装 TiUP 组件:
[root@lucifer ~]# curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh
但是很多内网环境不支持外网连接,即使是临时开通部署后,后续运维也可能会遇到报错:
failed to start: fetch /timestamp.json from mirror(https://tiup-mirrors.pingcap.com) failed: download from https://tiup-mirrors.pingcap.com/timestamp.json failed: Get “https://tiup-mirrors.pingcap.com/timestamp.json”: dial tcp: lookup tiup-mirrors.pingcap.com on 114.114.114.114:53: read udp 192.168.52.2:44673->114.114.114.114:53: i/o timeout
查看镜像源配置:
## 代表为官方镜像源
[root@lucifer ~]# tiup mirror show
https://tiup-mirrors.pingcap.com
建议内网环境部署完成后,切换为本地离线镜像源,方便运维。
离线部署
准备 TiUP 离线组件包
首先,找一台可以连接外网的主机,在线安装 TiUP 包管理器工具:
[root@lucifer ~]# curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh
确保 tiup 已经成功安装:
[root@lucifer ~]# source .bash_profile
[root@lucifer ~]# tiup --version
1.16.2 tiup
Go Version: go1.21.13
Git Ref: v1.16.2
GitHash: 678c52de0c0ef30634b8ba7302a8376caa95d50d
使用 tiup mirror clone
命令手动拉取需要的组件:
## 定义对应版本,我这里是 v8.5.3
[root@lucifer ~]# version=v8.5.3
[root@lucifer ~]# tiup mirror clone tidb-community-server-${version}-linux-amd64 ${version} --os=linux --arch=amd64
通过 tar 命令打包离线组件包:
[root@lucifer ~]# tar czvf tidb-community-server-${version}-linux-amd64.tar.gz tidb-community-server-${version}-linux-amd64
tidb-community-server-v8.5.3-linux-amd64/
tidb-community-server-v8.5.3-linux-amd64/prometheus-v8.5.3-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/tispark-v2.4.1-any-any.tar.gz
tidb-community-server-v8.5.3-linux-amd64/alertmanager-v0.26.0-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/PCC-v1.0.2-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/insight-v0.4.2-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/82.tikv-importer.json
tidb-community-server-v8.5.3-linux-amd64/3738.dmctl.json
tidb-community-server-v8.5.3-linux-amd64/1.index.json
tidb-community-server-v8.5.3-linux-amd64/5768.grafana.json
tidb-community-server-v8.5.3-linux-amd64/dmctl-v8.5.3-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/influxdb-v2.5.0-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/pd-recover-v8.5.3-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/demo-v0.0.11-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/spark-v2.4.3-any-any.tar.gz
tidb-community-server-v8.5.3-linux-amd64/715.bench.json
tidb-community-server-v8.5.3-linux-amd64/183.sync-diff-inspector.json
tidb-community-server-v8.5.3-linux-amd64/1180.tiup.json
tidb-community-server-v8.5.3-linux-amd64/pd-v8.5.3-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/tiproxy-v1.3.2-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/tiflash-v8.5.3-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/6953.pd-recover.json
tidb-community-server-v8.5.3-linux-amd64/tiup-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/11283.dumpling.json
tidb-community-server-v8.5.3-linux-amd64/4863.pump.json
tidb-community-server-v8.5.3-linux-amd64/10.errdoc.json
tidb-community-server-v8.5.3-linux-amd64/blackbox_exporter-v0.23.0-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/sync-diff-inspector-v9.0.0-beta.1-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/drainer-v8.3.0-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/server-v1.16.2-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/9609.ctl.json
tidb-community-server-v8.5.3-linux-amd64/tikv-importer-v4.0.2-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/9.blackbox_exporter.json
tidb-community-server-v8.5.3-linux-amd64/package-v0.0.9-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/tidb-lightning-v8.5.3-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/11.PCC.json
tidb-community-server-v8.5.3-linux-amd64/cluster-v1.16.2-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/dm-master-v8.5.3-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/snapshot.json
tidb-community-server-v8.5.3-linux-amd64/17.tispark.json
tidb-community-server-v8.5.3-linux-amd64/pump-v8.3.0-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/dba-v1.0.4-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/tidb-v8.5.3-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/6.tikv-br.json
tidb-community-server-v8.5.3-linux-amd64/br-v8.5.3-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/40.demo.json
tidb-community-server-v8.5.3-linux-amd64/11356.tidb-lightning.json
tidb-community-server-v8.5.3-linux-amd64/1.root.json
tidb-community-server-v8.5.3-linux-amd64/diag-v1.6.0-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/3.package.json
tidb-community-server-v8.5.3-linux-amd64/tikv-cdc-v1.1.1-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/18.insight.json
tidb-community-server-v8.5.3-linux-amd64/7.alertmanager.json
tidb-community-server-v8.5.3-linux-amd64/6950.cdc.json
tidb-community-server-v8.5.3-linux-amd64/bench-v1.12.0-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/pushgateway-v0.7.0-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/keys/
tidb-community-server-v8.5.3-linux-amd64/keys/260cacafffd26c47-snapshot.json
tidb-community-server-v8.5.3-linux-amd64/keys/518ba018508a1d66-root.json
tidb-community-server-v8.5.3-linux-amd64/keys/aac1ca97e377f6d2-root.json
tidb-community-server-v8.5.3-linux-amd64/keys/5aceabfad76e9981-index.json
tidb-community-server-v8.5.3-linux-amd64/keys/8c45deaddd757516-pingcap.json
tidb-community-server-v8.5.3-linux-amd64/keys/7b0cbab4be036527-timestamp.json
tidb-community-server-v8.5.3-linux-amd64/keys/dc36ee9e5bc7dcd9-root.json
tidb-community-server-v8.5.3-linux-amd64/dm-v1.16.2-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/4834.drainer.json
tidb-community-server-v8.5.3-linux-amd64/1089.playground.json
tidb-community-server-v8.5.3-linux-amd64/1030.server.json
tidb-community-server-v8.5.3-linux-amd64/1014.client.json
tidb-community-server-v8.5.3-linux-amd64/6966.pd.json
tidb-community-server-v8.5.3-linux-amd64/3749.dm-master.json
tidb-community-server-v8.5.3-linux-amd64/5.pushgateway.json
tidb-community-server-v8.5.3-linux-amd64/tikv-br-v1.1.0-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/tikv-v8.5.3-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/ctl-v8.5.3-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/764.tiproxy.json
tidb-community-server-v8.5.3-linux-amd64/6374.tiflash.json
tidb-community-server-v8.5.3-linux-amd64/dm-worker-v8.5.3-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/5.chaosd.json
tidb-community-server-v8.5.3-linux-amd64/root.json
tidb-community-server-v8.5.3-linux-amd64/3747.dm-worker.json
tidb-community-server-v8.5.3-linux-amd64/errdoc-v4.0.7-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/tidb-dashboard-v8.5.3-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/5821.prometheus.json
tidb-community-server-v8.5.3-linux-amd64/7.influxdb.json
tidb-community-server-v8.5.3-linux-amd64/4.dba.json
tidb-community-server-v8.5.3-linux-amd64/playground-v1.16.2-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/1077.dm.json
tidb-community-server-v8.5.3-linux-amd64/dumpling-v8.5.3-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/chaosd-v1.1.1-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/grafana-v8.5.3-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/2.spark.json
tidb-community-server-v8.5.3-linux-amd64/local_install.sh
tidb-community-server-v8.5.3-linux-amd64/client-v1.16.2-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/4.tikv-cdc.json
tidb-community-server-v8.5.3-linux-amd64/tiup-v1.16.2-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/113.cloud.json
tidb-community-server-v8.5.3-linux-amd64/cdc-v8.5.3-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/1173.cluster.json
tidb-community-server-v8.5.3-linux-amd64/6604.tikv.json
tidb-community-server-v8.5.3-linux-amd64/9.node_exporter.json
tidb-community-server-v8.5.3-linux-amd64/cloud-v1.0.0-beta.5-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/timestamp.json
tidb-community-server-v8.5.3-linux-amd64/2240.diag.json
tidb-community-server-v8.5.3-linux-amd64/node_exporter-v1.5.0-linux-amd64.tar.gz
tidb-community-server-v8.5.3-linux-amd64/482.tidb-dashboard.json
tidb-community-server-v8.5.3-linux-amd64/11366.br.json
tidb-community-server-v8.5.3-linux-amd64/11059.tidb.json
[root@lucifer ~]# ll tidb-community-server-v8.5.3-linux-amd64.tar.gz
-rw-r--r-- 1 root root 3207855391 Aug 26 09:53 tidb-community-server-v8.5.3-linux-amd64.tar.gz
此时,tidb-community-server-v8.5.3-linux-amd64.tar.gz
就是一个独立的离线环境包。
部署离线环境 TiUP 组件
将离线包发送到目标集群的中控机:
[root@prod1 ~]# scp 192.168.31.222:/data/tidb-community-server-v8.5.3-linux-amd64.tar.gz .
root@192.168.31.222's password:
tidb-community-server-v8.5.3-linux-amd64.tar.gz 100% 3059MB 160.0MB/s 00:19
执行以下命令安装 TiUP 组件:
## 解压离线环境包
[root@prod1 ~]# tar -xf tidb-community-server-v8.5.3-linux-amd64.tar.gz
## local_install.sh 脚本会自动执行设置当前镜像地址为离线镜像源
[root@prod1 ~]# sh tidb-community-server-v8.5.3-linux-amd64/local_install.sh
Detected shell: bash
Shell profile: /root/.bash_profile
✔ Installed in /root/.tiup/bin/tiup
✔ tiup PATH is already set, skip
tiup is installed now 🎉
Next step:
1: To make PATH change effective, restart your shell or execute:
source /root/.bash_profile
2: Start a local TiDB for development:
tiup playground
## 生效环境变量
[root@prod1 ~]# source /root/.bash_profile
查看 tiup 版本:
[root@prod1 ~]# tiup --version
1.16.2 v1.16.2-nightly-39
Go Version: go1.24.1
Git Ref: master
GitHash: f6aa0ac09b9d6405929c2cea3c0207880e53d199
查看可用组件:
[root@prod1 ~]# tiup list
Available components:
Name Owner Description
---- ----- -----------
PCC pingcap A tool used to capture plan changes among different versions of TiDB
alertmanager pingcap Prometheus alertmanager
bench pingcap Benchmark database with different workloads
blackbox_exporter pingcap Blackbox prober exporter
br pingcap TiDB/TiKV cluster backup restore tool.
cdc pingcap CDC is a change data capture tool for TiDB
chaosd pingcap An easy-to-use Chaos Engineering tool used to inject failures to a physical node
client pingcap Client to connect playground
cloud pingcap CLI tool to manage TiDB Cloud
cluster pingcap Deploy a TiDB cluster for production
ctl pingcap TiDB controller suite
dba pingcap dbatoolset
demo pingcap The dataset import tools for the demo of TiDB
diag pingcap Clinic client for data collection and quick health check
dm pingcap Data Migration Platform manager
dm-master pingcap dm-master component of Data Migration Platform.
dm-worker pingcap dm-worker component of Data Migration Platform.
dmctl pingcap dmctl component of Data Migration Platform.
drainer pingcap The drainer componet of TiDB binlog service
dumpling pingcap Dumpling is a CLI tool that helps you dump MySQL/TiDB data.
errdoc pingcap Document about TiDB errors
grafana pingcap Grafana is the open source analytics \u0026 monitoring solution for every database
influxdb pingcap InfluxDB
insight pingcap TiDB-Insight collector
node_exporter pingcap Exporter for machine metrics
package pingcap A toolbox to package tiup component
pd pingcap PD is the abbreviation for Placement Driver. It is used to manage and schedule the TiKV cluster.
pd-recover pingcap PD Recover is a disaster recovery tool of PD, used to recover the PD cluster which cannot start or provide services normally.
playground pingcap Bootstrap a local TiDB cluster for fun
prometheus pingcap The Prometheus monitoring system and time series database
pump pingcap The pump componet of TiDB binlog service
pushgateway pingcap Push acceptor for ephemeral and batch jobs
server pingcap TiUP publish/cache server
spark pingcap Spark is a fast and general cluster computing system for Big Data
sync-diff-inspector pingcap sync-diff-inspector is a tool used to verify the consistency across different MySQL-compatible data sources.
tidb pingcap TiDB is an open source distributed HTAP database compatible with the MySQL protocol.
tidb-dashboard pingcap TiDB Dashboard is a Web UI for monitoring, diagnosing, and managing the TiDB cluster
tidb-lightning pingcap TiDB Lightning is a tool used for fast full import of large amounts of data into a TiDB cluster
tiflash pingcap The TiFlash Columnar Storage Engine
tikv pingcap Distributed transactional key-value database, originally created to complement TiDB.
tikv-br pingcap TiKV cluster backup restore tool
tikv-cdc pingcap TiKV-CDC is a change data capture tool for TiKV
tikv-importer pingcap
tiproxy pingcap TiProxy is a database proxy that is based on TiDB.
tispark pingcap tispark
tiup pingcap TiUP is a command-line component management tool that can help to download and install TiDB platform components to the local system
检查当前镜像源:
[root@prod1 ~]# tiup mirror show
/root/tidb-community-server-v8.5.3-linux-amd64
已经切换为本地离线镜像源。
本文链接:https://www.orcy.net.cn/4282.html,转载请附上原文出处链接
发表评论