通过 TidbCluster 配置 TiDB 集群

TidbCluster 文件支持在其上面直接配置 TiDB/TiKV/PD/TiFlash/TiCDC 的配置选项,本篇文章将介绍如何在 TidbCluster 上配置参数。目前 Operator 1.1 版本支持了 TiDB 集群 v3.1 版本参数。针对各组件配置参数,请参考 PingCAP 官方文档。

配置 TiDB 配置参数

你可以通过 TidbCluster Custom Resource 的 spec.tidb.config 来配置 TiDB 配置参数,以下是一个例子。获取所有可以配置的 TiDB 配置参数,请参考 TiDB 配置文档

注意:

为了兼容 helm 部署,如果你是通过 CR 文件部署 TiDB 集群,即使你不设置 Config 配置,也需要保证 Config: {} 的设置,从而避免 TiDB 组件无法正常启动。

  1. apiVersion: pingcap.com/v1alpha1
  2. kind: TidbCluster
  3. metadata:
  4. name: basic
  5. spec:
  6. ....
  7. tidb:
  8. image: pingcap.com/tidb:v3.1.0
  9. imagePullPolicy: IfNotPresent
  10. replicas: 1
  11. service:
  12. type: ClusterIP
  13. config:
  14. split-table: true
  15. oom-action: "log"
  16. requests:
  17. cpu: 1

配置 TiKV 配置参数

你可以通过 TidbCluster Custom Resource 的 spec.tikv.config 来配置 TiKV 配置参数,以下是一个例子。获取所有可以配置的 TiKV 配置参数,请参考 TiKV 配置文档

注意:

为了兼容 helm 部署,如果你是通过 CR 文件部署 TiDB 集群,即使你不设置 Config 配置,也需要保证 Config: {} 的设置,从而避免 TiKV 组件无法正常启动。

  1. apiVersion: pingcap.com/v1alpha1
  2. kind: TidbCluster
  3. metadata:
  4. name: basic
  5. spec:
  6. ....
  7. tikv:
  8. image: pingcap.com/tikv:v3.1.0
  9. config:
  10. grpc-concurrenc: 4
  11. sync-log: true
  12. replicas: 1
  13. requests:
  14. cpu: 2

配置 PD 配置参数

你可以通过 TidbCluster Custom Resource 的 spec.pd.config 来配置 PD 配置参数,以下是一个例子。获取所有可以配置的 PD 配置参数,请参考 PD 配置文档

注意:

为了兼容 helm 部署,如果你是通过 CR 文件部署 TiDB 集群,即使你不设置 Config 配置,也需要保证 Config: {} 的设置,从而避免 PD 组件无法正常启动。

  1. apiVersion: pingcap.com/v1alpha1
  2. kind: TidbCluster
  3. metadata:
  4. name: basic
  5. spec:
  6. .....
  7. pd:
  8. image: pingcap.com/pd:v3.1.0
  9. config:
  10. format: "format"
  11. disable-timestamp: false

配置 TiFlash 配置参数

你可以通过 TidbCluster Custom Resource 的 spec.tiflash.config 来配置 TiFlash 配置参数,以下是一个例子。

  1. apiVersion: pingcap.com/v1alpha1
  2. kind: TidbCluster
  3. metadata:
  4. name: basic
  5. spec:
  6. ...
  7. tiflash:
  8. config:
  9. config:
  10. logger:
  11. count: 5
  12. level: information

配置 TiCDC 启动参数

你可以通过 TidbCluster Custom Resource 的 spec.ticdc.config 来配置 TiCDC 启动参数,以下是一个例子。获取所有可以配置的 TiCDC 启动参数,请参考 TiCDC 启动参数文档

  1. apiVersion: pingcap.com/v1alpha1
  2. kind: TidbCluster
  3. metadata:
  4. name: basic
  5. spec:
  6. ...
  7. ticdc:
  8. config:
  9. timezone: UTC
  10. gcTTL: 86400
  11. logLevel: info