TiDB Operator 1.3.0 Release Notes
Release date: February 15, 2022
TiDB Operator version: 1.3.0
Compatibility Change
Due to changes in #4400, if a TiDB cluster is deployed across multiple Kubernetes clusters by TiDB Operator (<= v1.3.0-beta.1), upgrading TiDB Operator to v1.3.0 directly will cause failed rolling upgrade. You have to upgrade TiDB Operator by the following steps:
- Update CRD.
- Add a new
spec.acrossK8s
field in TidbCluster spec and set it totrue
. - Upgrade TiDB Operator.
Due to the issue in #4434, if you upgrade TiFlash to v5.4.0 or later when using v1.3.0 TiDB Operator, TiFlash might lose metadata and not work. If TiFlash is deployed in your cluster, it is recommended that you upgrade TiDB Operator to v1.3.1 or later versions before upgrading TiFlash.
Due to the issue in #4435, when using TiDB Operator v1.3.0, you must set the
tmp_path
field in TiFlash's config to use TiFlash v5.4.0 or later versions. It is recommended that you upgrade TiDB Operator to v1.3.1 or later versions before you deploy TiFlash.
New Features
- Add a new field
spec.tidb.tlsClient.skipInternalClientCA
to skip server certificate verification when internal components access TiDB (#4388, @just1900) - Support configuring DNS config for Pods of all components (#4394, @handlerww)
- Add a new field
spec.tidb.initializer.createPassword
to support setting a random password for TiDB when deploying a new cluster (#4328, @mikechengwei) - Add a new field
failover.recoverByUID
to support one-time recover for TiKV/TiFlash/DM Worker (#4373, @better0332) - Add a new field
spec.pd.startUpScriptVersion
to use thedig
command instead ofnslookup
to lookup domain in the startup script of PD (#4379, @july2993)
Improvements
- Pre-check whether
VolumeMount
exists when the StatefuleSet of components is deployed or updated to avoid failed rolling upgrade (#4369, @july2993) - Enhance the feature of deploying a TiDB cluster across Kubernetes clusters:
- Add a new field
spec.acrossK8s
to indicate deploying a TiDB cluster across Kubernetes clusters (#4400, @KanShiori) - Support deploying heterogeneous TiDB cluster across Kubernetes clusters (#4387, @KanShiori)
- The field
spec.clusterDomain
is not required when TiDB cluster is deployed across Kubernetes clusters. The field is only used for addresses accessed between components (#4408, @KanShiori) - Fix the issue that in cross-Kubernetes deployment, Pump becomes abnormal when all PDs of one Kubernetes cluster are down (#4377, @just1900)
- Add a new field