https://docs.pingcap.com/zh/tidb/stable/maintain-tidb-using-tiup

本文介绍了使用 TiUP 运维 TiDB 集群的常见操作,包括查看集群列表、启动集群、查看集群状态、修改配置参数、关闭集群、销毁集群等。

查看集群列表

TiUP cluster 组件可以用来管理多个 TiDB 集群,在每个 TiDB 集群部署完毕后,该集群会出现在 TiUP 的集群列表里,可以使用 list 命令来查看。

tiup cluster list

启动集群

启动集群操作会按 PD -> TiKV -> Pump -> TiDB -> TiFlash -> Drainer -> TiCDC -> Prometheus -> Grafana -> Alertmanager 的顺序启动整个 TiDB 集群所有组件:

tiup cluster start ${cluster-name}
 
注意

你需要将 ${cluster-name} 替换成实际的集群名字,若忘记集群名字,可通过 tiup cluster list 查看。

该命令支持通过 -R 和 -N 参数来只启动部分组件。

例如,下列命令只启动 PD 组件:

tiup cluster start ${cluster-name} -R pd

下列命令只启动 1.2.3.4 和 1.2.3.5 这两台机器上的 PD 组件:

tiup cluster start ${cluster-name} -N 1.2.3.4:2379,1.2.3.5:2379
 
注意

若通过 -R 和 -N 启动指定组件,需要保证启动顺序正确(例如需要先启动 PD 才能启动 TiKV),否则可能导致启动失败。

查看集群状态

集群启动之后需要检查每个组件的运行状态,以确保每个组件工作正常。TiUP 提供了 display 命令,节省了登录到每台机器上去查看进程的时间。

tiup cluster display ${cluster-name}

修改配置参数

集群运行过程中,如果需要调整某个组件的参数,可以使用 edit-config 命令来编辑参数。具体的操作步骤如下:

  1. 以编辑模式打开该集群的配置文件:

    tiup cluster edit-config ${cluster-name}
  2. 设置参数:

    首先确定配置的生效范围,有以下两种生效范围:

    • 如果配置的生效范围为该组件全局,则配置到 server_configs。例如:

      server_configs: tidb: log.slow-threshold: 300
    • 如果配置的生效范围为某个节点,则配置到具体节点的 config 中。例如:

      tidb_servers: - host: 10.0.1.11 port: 4000 config: log.slow-threshold: 300

    参数的格式参考 TiUP 配置参数模版

    配置项层次结构使用 . 表示。

    关于组件的更多配置参数说明,可参考 tidb config.toml.exampletikv config.toml.example 和 pd config.toml.example

  3. 执行 reload 命令滚动分发配置、重启相应组件:

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

示例

如果要调整 tidb-server 中事务大小限制参数 txn-total-size-limit 为 1G,该参数位于 performance 模块下,调整后的配置如下:

server_configs: tidb: performance.txn-total-size-limit: 1073741824

然后执行 tiup cluster reload ${cluster-name} -R tidb 命令滚动重启。

Hotfix 版本替换

常规的升级集群请参考升级文档,但是在某些场景下(例如 Debug),可能需要用一个临时的包替换正在运行的组件,此时可以用 patch 命令:

tiup cluster patch --help
Replace the remote package with a specified package and restart the service Usage: tiup cluster patch <cluster-name> <package-path> [flags] Flags: -h, --help 帮助信息 -N, --node strings 指定被替换的节点 --overwrite 在未来的 scale-out 操作中使用当前指定的临时包 -R, --role strings 指定被替换的服务类型 --transfer-timeout int transfer leader 的超时时间 Global Flags: --native-ssh 使用系统默认的 SSH 客户端 --wait-timeout int 等待操作超时的时间 --ssh-timeout int SSH 连接的超时时间 -y, --yes 跳过所有的确认步骤

例如,有一个 TiDB 实例的 hotfix 包放在 /tmp/tidb-hotfix.tar.gz 目录下。如果此时想要替换集群上的所有 TiDB 实例,则可以执行以下命令:

tiup cluster patch test-cluster /tmp/tidb-hotfix.tar.gz -R tidb

或者只替换其中一个 TiDB 实例:

tiup cluster patch test-cluster /tmp/tidb-hotfix.tar.gz -N 172.16.4.5:4000

重命名集群

部署并启动集群后,可以通过 tiup cluster rename 命令来对集群重命名:

tiup cluster rename ${cluster-name} ${new-name}
 
注意
  • 重命名集群会重启监控(Prometheus 和 Grafana)。
  • 重命名集群之后 Grafana 可能会残留一些旧集群名的面板,需要手动删除这些面板。

关闭集群

关闭集群操作会按 Alertmanager -> Grafana -> Prometheus -> TiCDC -> Drainer -> TiFlash -> TiDB -> Pump -> TiKV -> PD 的顺序关闭整个 TiDB 集群所有组件(同时也会关闭监控组件):

tiup cluster stop ${cluster-name}

和 start 命令类似,stop 命令也支持通过 -R 和 -N 参数来只停止部分组件。

例如,下列命令只停止 TiDB 组件:

tiup cluster stop ${cluster-name} -R tidb

下列命令只停止 1.2.3.4 和 1.2.3.5 这两台机器上的 TiDB 组件:

tiup cluster stop ${cluster-name} -N 1.2.3.4:4000,1.2.3.5:4000

清除集群数据

此操作会关闭所有服务,并清空其数据目录或/和日志目录,并且无法恢复,需要谨慎操作。

清空集群所有服务的数据,但保留日志:

tiup cluster clean ${cluster-name} --data

清空集群所有服务的日志,但保留数据:

tiup cluster clean ${cluster-name} --log

清空集群所有服务的数据和日志:

tiup cluster clean ${cluster-name} --all

清空 Prometheus 以外的所有服务的日志和数据:

tiup cluster clean ${cluster-name} --all --ignore-role prometheus

清空节点 172.16.13.11:9000 以外的所有服务的日志和数据:

tiup cluster clean ${cluster-name} --all --ignore-node 172.16.13.11:9000

清空部署在 172.16.13.12 以外的所有服务的日志和数据:

tiup cluster clean ${cluster-name} --all --ignore-node 172.16.13.12

销毁集群

销毁集群操作会关闭服务,清空数据目录和部署目录,并且无法恢复,需要谨慎操作。

tiup cluster destroy ${cluster-name}

[转帖]TiUP 常见运维操作的更多相关文章

  1. 【redis使用全解析】常见运维操作

    作者:gnuhpc 出处:http://www.cnblogs.com/gnuhpc/ 1.1 启动 1.1.1 启动redis $ redis-server redis.conf 常见选项: ./r ...

  2. rabbitmq常见运维命令和问题总结

    常见运维命令作用: yum安装erlang的环境配置: ERLANG_HOME=/usr/lib64/erlang export PATH=$PATH:$ERLANG_HOME/bin 常见rabbi ...

  3. Linux内存运维操作及常用命令

    Linux内存运维操作及常用命令 1.问题诊断 1.1 什么是 Linux 服务器 Load Average? 1.2如何查看 Linux 服务器负载? 1.3服务器负载高怎么办? 1.4如何查看服务 ...

  4. 2015年br运维操作归档

    归档2015年在br做运维时常用的命令,主要梳理出log的过滤操作. 对于日志文本的处理,常见还是sed和awk,具体如下: 统计ip访问量: cat nginx.log |awk '{print $ ...

  5. 10大HBase常见运维工具整理

    摘要:HBase自带许多运维工具,为用户提供管理.分析.修复和调试功能.本文将列举一些常用HBase工具,开发人员和运维人员可以参考本文内容,利用这些工具对HBase进行日常管理和运维. HBase组 ...

  6. Redis 相关运维操作

    背景 Redis作为目前全球最流行的KV存储,除了使用之外,还需要做好日常的运维工作.关于运维相关的工作,本文从以下方面进行介绍说明(Redis5.0以上): 内存方面 客户端连接方面 工具方面 说明 ...

  7. linux常见运维题

    linux运维题 一.填空题 1. 在Linux 系统 中,以文件方式访问设备 . (linux下一切都是文件) 2. Linux 内核引导时,从文件/etc/fstab中读取要加载的文件系统 . ( ...

  8. WebLogic11g-常用运维操作

    转:http://www.codeweblog.com/weblogic11g-%e5%b8%b8%e7%94%a8%e8%bf%90%e7%bb%b4%e6%93%8d%e4%bd%9c/ 希望这篇 ...

  9. [转帖]Linux企业运维人员最常用150个命令汇总

    Linux企业运维人员最常用150个命令汇总 https://clsn.io/clsn/lx998.html 基本上都用过了. 命令 功能说明 线上查询及帮助命令(2个) man 查看命令帮助,命令的 ...

  10. 深入浅出学习透析 Nginx 服务器的基本原理和配置指南「运维操作实战篇」

    Nginx前提回顾 Nginx 是一个高性能的 Web 和反向代理服务器, 它具有有很多非常优越的特性: Web服务器:相比 Apache,Nginx 使用更少的资源,支持更多的并发连接,体现更高的效 ...

随机推荐

  1. 牛刀小试基本语法,Go lang1.18入门精炼教程,由白丁入鸿儒,go lang基本语法和变量的使用EP02

    书接上回,Go lang1.18首个程序的运行犹如一声悠扬的长笛,标志着并发编程的Go lang巨轮正式开始起航.那么,在这艘巨轮之上,我们首先该做些什么呢?当然需要了解最基本的语法,那就是基础变量的 ...

  2. 性能之巅:定位和优化程序CPU、内存、IO瓶颈

    摘要:性能优化指在不影响系统运行正确性的前提下,使之运行得更快,完成特定功能所需的时间更短,或拥有更强大的服务能力. #一.思维导图 #二.什么是性能优化? 性能优化指在不影响系统运行正确性的前提下, ...

  3. 详解NLP和时序预测的相似性【附赠AAAI21最佳论文INFORMER的详细解析】

    摘要:本文主要分析自然语言处理和时序预测的相似性,并介绍Informer的创新点. 前言 时序预测模型无外乎RNN(LSTM, GRU)以及现在非常火的Transformer.这些时序神经网络模型的主 ...

  4. 一文详解什么是可解释AI

    摘要:本文带来什么是可解释AI,如何使用可解释AI能力来更好理解图片分类模型的预测结果,获取作为分类预测依据的关键特征区域,从而判断得到分类结果的合理性和正确性,加速模型调优. 1. 为什么需要可解释 ...

  5. 云图说|将源端MongoDB业务搬迁至华为云DDS的几种方式

    摘要:华为云文档数据库服务DDS能帮您在业务需要时,快速便捷的搬迁源端MongoDB业务上云. 如果您因业务调整或需要使用华为云文档数据库DDS特性功能时,可以通过数据迁移功能将原有MongoDB数据 ...

  6. OpenHarmony移植案例与原理:如何适配服务启动引导部件bootstrap_lite

    摘要:本文介绍移植开发板时如何适配服务启动引导部件bootstrap_lite,并介绍相关的运行机制原理. 本文分享自华为云社区<OpenHarmony移植案例与原理 - startup子系统之 ...

  7. 如何配置Apple推送证书 push证书

    ​ 转载:如何配置Apple推送证书 push证书 想要制作push证书,就需要使用快捷工具appuploader工具制 作证书,然后使用Apple的推送功能配置push证书,就可以得到了.PS:pu ...

  8. PPT 如何将大段WORD制作成PPT

    PPT 如何将大段WORD制作成PPT 标记等级 发送到PPT 图片.表格,无法发送

  9. 页面滚动,打包,appium工具

    ''' 移动到元素element对象的"底端",与当前窗口的"底部"对齐: 我们需要将页面下拉一个滑轮 ''' for y in range(3): js = ...

  10. 【已解决】无法打开.xlsx文件,xlrd.biffh.XLRDError: Excel xlsx file; not supported

    原因是最近xlrd更新到了2.0.1版本,只支持.xls文件.所以x1 = xlrd.open_workbook("data.xlsx")会报错. 可以安装旧版xlrd,在cmd中 ...