TiDB Operator 1.3.0 Release Notes
发布日期: 2022 年 2 月 15 日
TiDB Operator 版本:1.3.0
兼容性改动
由于 #4400 的变更,如果使用 v1.3.0-beta.1 及更早版本的 TiDB Operator 跨 Kubernetes 集群部署 TiDB 集群,直接升级 TiDB Operator 会导致集群进行失败的滚动更新。你需要执行以下操作来升级 TiDB Operator:
- 更新 CRD。
- 添加新的
spec.acrossK8s
字段到 TidbCluster 定义,其值设置为true
。 - 升级 TiDB Operator。
由于 #4434 的问题,在部署 v1.3.0 版本的 TiDB Operator 情况下,直接升级 TiFlash 到 v5.4.0 及更高版本可能会导致 TiFlash 无法使用并且丢失元数据。如果集群中部署了 TiFlash,推荐升级到 v1.3.1 及之后版本,再执行升级操作。
由于 #4435 的问题,在部署 v1.3.0 版本的 TiDB Operator 情况下,必须在 TiFlash 的配置中显式配置
tmp_path
字段,才能使用 v5.4.0 及更高版本的 TiFlash。推荐升级到 v1.3.1 及之后版本后,再部署 TiFlash。
新功能
- 添加新的
spec.tidb.tlsClient.skipInternalClientCA
字段,以支持内部组件访问 TiDB 时跳过服务端证书验证 (#4388, @just1900) - 支持设置所有组件 Pod 的 DNS 配置 (#4394, @handlerww)
- 添加新的
spec.tidb.initializer.createPassword
字段,支持部署新集群时为 TiDB 设置随机密码 (#4328, @mikechengwei) - 添加新的
failover.recoverByUID
字段,以支持为 TiKV/TiFlash/DM Worker 仅执行一次性的 Recover 操作 (#4373, @better0332) - 添加新的
spec.pd.startUpScriptVersion
字段,以支持在 PD 启动脚本中使用dig
命令而不是nslookup
命令来解析域名 (#4379, @july2993)
优化提升
- 部署或更新组件的 StatefulSet 预先检查配置的 VolumeMount 是否存在,防止集群进行失败的滚动更新 (#4369, @july2993)
- 跨 Kubernetes 集群部署 TiDB 集群功能增强,包括:
- 添加新的
spec.acrossK8s
字段来表示跨 Kubernetes 集群部署 TiDB 集群 (#4400, @KanShiori) - 支持跨 Kubernetes 集群部署 Heterogeneous TiDB 集群 (#4387, @KanShiori)
- 跨 Kubernetes 集群部署 TiDB 集群场景下
spec.clusterDomain
字段不是必须的,该字段仅仅用于组件间访问的地址 (#4408, @KanShiori) - 修复跨 Kubernetes 部署 TiDB 的场景下,某集群的所有 PD 下线导致同一集群内 Pump 异常的问题 (#4377, @just1900)
- 添加新的