文件菜单

使用Tiup部署TIDB群集

Tiup.是TiDB 4.0中引入的集群操作维护工具。TiUP提供Tiup集群,在golang编写的群集管理组件。通过使用TIUP群集,您可以轻松地执行每日数据库操作,包括部署,启动,停止,销毁,缩放和升级TIDB集群,并管理TIDB群集参数。

TiUP支持部署TiDB、TiFlash、TiDB Binlog、TiCDC和监控系统。本文档介绍了不同拓扑下TiDB集群的部署方法。

第1步:先决条件和预先生

请阅读以下文档:

第2步:在控制机上安装TIUP

您可以以两种方式中的任一种在控制机上安装TIUP:在线部署和脱机部署。

方法一:在线部署TiUP

使用常规用户帐户登录控制机(拍摄Tidb.以“User”用户为例。所有的TiUP安装和集群管理操作都可以由Tidb.用户。

  1. 执行以下命令安装TiUP:

    旋度-  proto.'= https'--tlsv1.2 -sf https://tiup-mirrors.www.schmieso.com/install.sh.|上海
  2. 设置TiUP环境变量:

    重新填充全局环境变量:

    . bash_profile

    确认是否已安装TIUP:

    哪一个Tiup.
  3. 安装TiUP集群组件:

    Tiup集群
  4. 如果已安装TIUP,请将TIUP群集组件更新为最新版本:

    Tiup更新 - 自我&&tiup更新集群

    预期产出包括“更新成功!”

  5. 验证TIUP集群的当前版本:

    Tiup  - 无线群集

方法二:离线部署TiUP

使用TiUP离线部署TiDB集群的操作步骤如下:

第1步:准备TIUP离线组件包

要准备TIUP脱机组件包,请手动包装脱机组件包Tiup镜克隆

  1. 在线安装TIUP包管理器。

    1. 安装TiUP工具:

      旋度-  proto.'= https'--tlsv1.2 -sf https://tiup-mirrors.www.schmieso.com/install.sh.|上海
    2. 重新填充全局环境变量:

      . bash_profile
    3. 确认是否已安装TIUP:

      哪一个Tiup.
  2. 用TiUP拉镜子。

    1. 将所需的组件拉到可访问Internet的计算机上:

      Tiup镜像克隆Tidb-Community-Server-$ {version}-Linux-AMD64$ {version}——操作系统=Linux  -  arch.=AMD64

      上面的命令创建一个名为tidb-community-server - {version} -linux-amd64美元在当前目录中,其中包含启动群集所需的组件包。

    2. 通过使用包装组件包柏油命令并将包裹发送到孤立环境中的控制机:

      柏油czvf tidb-community-server -$ {version}-linux-amd64.tar.gz tidb-community-server -$ {version}-Linux-AMD64

      tidb-community-server - {version} -linux-amd64.tar.gz美元是一个独立的离线环境包。

  3. 您可以自定义离线镜像,或者调整已存在的离线镜像内容。

    如果您需要对已存在的离线镜像进行调整(如添加组件版本等),请执行以下操作:

    1. 在拉出脱机镜像时,可以通过参数指定组件信息、版本信息等具体信息,从而获得不完整的脱机镜像。例如,如果离线镜像中只包含TiUP v1.5.2和TiUP Cluster v1.5.2的离线镜像,可以使用如下命令:

      Tiup镜像克隆Tiup -custom-mirror-v1.5.2——Tiup v1.5.2——cluster v1.5.2

      如果只需要特定平台的组件,则可以使用——操作系统——拱参数。

    2. 参考“使用TiUP Pull the mirror using TiUP”步骤2,将这个不完整的离线镜像发送到隔离环境中的控制机。

    3. 检查当前离线镜像在隔离环境中的控制机上的路径。如果您的TiUP工具是最新版本的,可以通过运行以下命令获取当前镜像地址:

      tiup镜子显示

      如果上述命令的输出表示显示命令不存在,您可能使用旧版本的TIUP。在这种情况下,您可以从中获取当前的镜像地址$ HOME / .tiup / tiup.toml.记录此镜像地址。在以下步骤中,$ {base_mirror}用于指此地址。

    4. 将不完整的脱机镜像合并到现有的脱机镜像:

      首先,复制的目录$ home / .tiup目录:

      CP- r$ {base_mirror}/键$ home/.tiup/

      然后使用TIUP命令将不完整的离线镜像合并到使用中的镜像中:

      Tiup镜像合并Tiup -custom-mirror-v1.5.2
    5. 完成上述步骤后,通过运行来检查结果tiup列表命令。在本文档的示例中,两者的输出tiup列表tiup.TIUP列表集群表明相应的组件v1.5.2是可用的。

步骤2:部署离线TiUP组件

将包裹发送到目标群集的控制机后,通过运行以下命令来安装TiUP组件:

柏油xzvf tidb-community-server -$ {version}-linux-amd64.tar.gz.&&\上海TIDB-Community-Server-$ {version}-linux-amd64 / local_install.sh&&\/home/tidb/.bash_profile.

local_install.sh脚本自动执行TIUP镜像SET TIDB-Community-Server - $ {version} -linux-amd64命令将当前镜像地址设置为tidb-community-server - {version} -linux-amd64美元

要将镜像切换到另一个目录,可以手动执行提示镜像设置命令。要将镜像切换到在线环境,您可以执行Tiup Mirror Set https://tiup-mirrors.www.schmieso.com命令。

步骤3:初始化集群拓扑文件

根据预期的集群拓扑结构,您需要手动创建和编辑集群初始化配置文件。

要创建群集初始化配置文件,您可以使用TIUP在控制机上创建yaml格式的配置文件:

Tiup集群模板>拓扑.Yaml.

注意:

对于混合部署场景,您也可以执行Tiup集群模板--full> topology.yaml创建推荐的拓扑模板。对于地理分布式部署方案,您可以执行Tiup集群模板--Multi-DC>拓扑.YAML创建推荐的拓扑模板。

执行vi topology.yaml要查看配置文件内容:

全球用户:“tidb”ssh_port:22deploy_dir:“/ tidb-deploy”data_dir:“/ tidb-data”server_configs:{}pd_servers:主持人:10.0.1.4 -主机:10.0.1.5  - 主机:10.0.1.6 tidb_servers:—host:10.0.1.7 -主机:10.0.1.8  - 主机:10.0.1.9 TIKV_SERVERS: - 主机:10.0.1.1  - 主机:10.0.1.2  - 主机:10.0.1.3 monitoring_servers: - 主机:10.0.1.4 grafana_servers: - 主机:10.0.1.4 AlertManager_Servers: - 主机:10.0.1.4

下面的示例包括六个常见场景。您需要修改配置文件(命名为拓扑.Yaml.),根据拓扑描述和对应链接中的模板查看。对于其他场景,请编辑相应的配置模板。

  • 最小部署拓扑

    这是基本群集拓扑,包括TIDB-Server,Tikv-Server和PD-Server。它适用于OLTP应用程序。

  • TiFlash部署拓扑结构

    这是部署Tiflash以及最小的群集拓扑。Tiflash是一个柱状存储引擎,逐渐成为标准的群集拓扑。它适用于实时HTAP应用程序。

  • TiCDC部署拓扑结构

    这是部署TICDC以及最小的群集拓扑。TICDC是一种用于复制TIDB的增量数据的工具,在TIDB 4.0中引入。它支持多个下游平台,例如TIDB,MySQL和MQ。与TIDB Binlog相比,TICDC具有较低的延迟和本机高可用性。部署后,启动TICDC和使用CDC CLI.

  • TIDB Binlog部署拓扑

    这是将TiDB Binlog与最小集群拓扑一起部署。TiDB Binlog是用于复制增量数据的广泛使用的组件。它提供接近实时的备份和复制。

  • Tispark部署拓扑

    这是部署Tispark以及最小的群集拓扑。Tispark是一个用于在TIDB / TIKV上运行Apache Spark的组件,以回答OLAP查询。目前,Tiup Cluster对Tispark的支持仍然存在实验

  • 混合部署拓扑

    这是在单个计算机上部署多个实例。您需要为目录,端口,资源比和标签添加额外的配置。

  • Geo-distributed部署拓扑结构

    这种拓扑在两个城市中占据了三个数据中心的典型体系结构。它引入了地理分布式部署架构和需要注意的关键配置。

注意:

步骤4:执行Deployment命令

注意:

使用TIUP部署TIDB时,可以使用秘密密钥或交互式密码进行安全身份验证:

  • 如果使用秘密密钥,则可以通过键指定键的路径-我——identity_file;
  • 如果使用密码,请添加- p标志输入密码交互窗口;
  • 如果已配置无密码登录目标计算机,则无需身份验证。

通常,TIUP创建指定的用户和组拓扑.Yaml.目标计算机上的文件,具有以下例外:

  • 配置的用户名拓扑.Yaml.已经存在于目标机器上。
  • 你已经使用了——skip-create-user命令行中的选项以显式跳过创建用户的步骤。

在执行之前部署命令,使用查看检查——应用用于检测和自动修复集群潜在风险的命令:

Tiup Cluster Check ./topology.yaml -User root[- p][-i / home/root/.ssh/gcp_rsa.]提示集群检查。/拓扑。Yaml——apply——user root[- p][-i / home/root/.ssh/gcp_rsa.]

然后执行部署命令,部署TiDB集群。

Tiup集群部署tidb-test v5.2.1 ./拓扑。yaml——用户根[- p][-i / home/root/.ssh/gcp_rsa.]

在上面的命令中:

  • 部署的TIDB群集的名称是tidb-test
  • 您可以通过运行查看最新支持的版本tiup tidb列表.这个文档需要v5.2.1作为一个例子。
  • 初始化配置文件是拓扑.Yaml.
  • - 用户根:通过命令行登录目标计算机关键字完成集群部署,也可以用其他用户sshsudo完成部署的特权。
  • [-一世][-p]:可选的。如果您已经配置了不带密码登录到目标计算机,则不需要这些参数。如果不是,请选择两个参数中的一个。[-一世]是私人钥匙用户(或由其他用户指定的用户)——用户)可以访问目标机器。[-p]用于交互方式输入用户密码。
  • 如果需要指定要在目标计算机上创建的用户组名,请参见这个例子

在输出日志的末尾,您将看到已成功部署群集`tidb-test`.这表示部署成功。

步骤5:检查TiUP管理的集群

Tiup集群列表

TiUP支持管理多个TiDB集群。上面的命令输出当前由TiUP管理的所有集群的信息,包括名称、部署用户、版本和密钥信息:

start / home/tidb/.tiup/components/cluster/v1.5.0/cluster列表名称用户版本路径privatekey ---- ---- -------- ---- ---------- tidb-test tidb v5.2.1 / home/tidb/.tiup/storage/cluster/clusters/tidb-test / home/tidb/.tiup/storage/cluster/clusters/tidb-test/ssh/id_rsa

步骤6:检查已部署的TIDB群集的状态

例如,执行以下命令检查tidb-test集群:

TIUP群集显示TIDB-TEST

预期输出包括实例ID,角色,主机,侦听端口和状态(因为群集尚未启动,因此状态为/不活跃)和目录信息。

步骤7:启动TiDB集群

提示集群启动tidb-test

如果输出日志包括成功启动群集`tidb-test`,开始是成功的。

步骤8:检查TiDB集群运行状态

对于特定操作,请参阅验证群集状态

接下来是什么

如果你部署了TIFLASH.与TiDB集群一起使用,请参见以下文档:

如果你部署了Ticdc.与TiDB集群一起使用,请参见以下文档:

注意:

默认情况下,TIDB,TIUP和TIDB仪表板与PINGCAP共享使用详细信息,以帮助了解如何改进产品。有关共享的详细信息以及如何禁用共享,请参阅遥测