课程名称:3.2.3 How to upgrade TiDB(K8s 部署的 TiDB 集群升级指南)
学习时长:
30分钟
课程收获:
掌握 TiDB 升级的方法,可以使用相关的工具对 TiDB 进行升级
课程内容:
获取TiDB当前使用版本
select tidb_version();
一、Upgrade TiDB Using TiDB Ansible
- 这个功能是支持2.0、2.1、3.0or3.1升级至4.0,或4.0的低版本升级至4.0的最新版本
- 注意事项
- 不支持回退
- 从2.0.6之前的版本升级到4.0之前需要等待集群中正在运行的DDL操作完成后升级
- 从2.0.1之前的版本无法滚动升级至4.0版本,通过停机升级或滚动升级至2.0.1之后的版本
3.操作步骤 - 安装Ansible及其依赖
- 滚动升级
二、Upgrade TiDB Using TiUP(recommended)
- 支持TiDB 3.0、3.1和4.0低版本升级至TiDB 4.0最新版本
- 升级注意事项
- 升级至4.0后不支持回退至3.1或更旧的版本
- 3.0之前的版本需要先用Ansible升级至3.0以上的版本后,再用TiUP进行管理升级
- TiDB Ansible导入到TiUP管理后不能再使用Ansible管理,否则会因原信息不一致导致造成冲突
- 对于满足以下情况之一的Ansible部署集群暂时不支持导入操作
*启用了PLS加密功能的集群
*纯KV的集群,指的是没有部署TiDB实例
*启用了Kafka的集群
*启用了Spark的集群
*启用了Lightning Importer的集群
*仍然使用老的获取方式收集监控指标
*设置了非默认端口
- 升级注意事项
- 从2.0.6之前的版本升级到4.0之前需要等待集群中正在运行的DDL操作完成后升级
- 从2.0.1之前的版本无法滚动升级至4.0版本,通过停机升级或滚动升级至2.0.1之后的版本
- 升级步骤
- 安装TiUP和TiUP cluster
$ curl --proto ‘=https’ --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh
$ tiup cluster - 导入Ansible
$ tiup cluster import -d /home/tidb/tidb-ansible - 滚动升级TiDB cluster
$ tiup cluster upgrade < cluster-name > < version >