在 ARM64 机器上部署 TiDB 集群

本文档介绍如何在 ARM64 机器上部署 TiDB 集群。

前置条件

部署 TiDB Operator

  • 如果部署的 TiDB Operator 大于或等于 v1.3.1 版本,按常规方法部署 TiDB Operator 即可,不需要执行以下操作修改镜像。

  • 如果部署的 TiDB Operator 小于 v1.3.1 版本,在 ARM64 机器上部署 TiDB Operator 的步骤与在 Kubernetes 上部署 TiDB Operator 的步骤相同。唯一区别是,在自定义部署 TiDB Operator 这一步,当获取到 tidb-operator chart 中的 values.yaml 文件后,你需要修改文件中的 operatorImagetidbBackupManagerImage 字段为 ARM64 版本镜像。

    # ...
    operatorImage: pingcap/tidb-operator-arm64:v1.3.1
    # ...
    tidbBackupManagerImage: pingcap/tidb-backup-manager-arm64:v1.3.1
    # ...
    

部署 TiDB 集群

  • 如果部署的 TiDB 集群大于或等于 v5.4.2 版本,按常规方法部署 TiDB 集群 即可,不需要执行以下操作修改镜像。

  • 如果部署的 TiDB 集群小于 v5.4.2 版本,在 ARM64 机器上部署 TiDB 集群的步骤与在标准 Kubernetes 上部署 TiDB 集群 的步骤相同。唯一区别是,你需要将 TidbCluster 定义文件中相关组件的镜像设置为 ARM64 版本。

    apiVersion: pingcap.com/v1alpha1
    kind: TidbCluster
    metadata:
      name: ${cluster_name}
      namespace: ${cluster_namespace}
    spec:
      version: "v5.4.1"
      # ...
      helper:
        image: busybox:1.33.0
      # ...
      pd:
        baseImage: pingcap/pd-arm64
        # ...
      tidb:
        baseImage: pingcap/tidb-arm64
        # ...
      tikv:
        baseImage: pingcap/tikv-arm64
        # ...
      pump:
        baseImage: pingcap/tidb-binlog-arm64
        # ...
      ticdc:
        baseImage: pingcap/ticdc-arm64
        # ...
      tiflash:
        baseImage: pingcap/tiflash-arm64
        # ...
    

初始化 TiDB 集群

在 ARM64 机器上初始化 TiDB 集群的步骤与在 Kubernetes 上的初始化 TiDB 集群的步骤 相同。唯一区别是,你需要将 TidbInitializer 定义文件中的 spec.image 字段设置为 ARM64 版本镜像。例如:

apiVersion: pingcap.com/v1alpha1
kind: TidbInitializer
metadata:
  name: ${initializer_name}
  namespace: ${cluster_namespace}
spec:
  image: kanshiori/mysqlclient-arm64
  # ...

部署 TiDB 集群监控

  • 如果部署的 TiDB 集群大于或等于 v5.4.2 版本,按常规方法部署 TiDB 集群的监控与告警即可,不需要执行以下操作修改镜像。

  • 如果部署的 TiDB 集群小于 v5.4.2 版本,在 ARM64 机器上部署 TiDB 集群监控的步骤与 TiDB 集群的监控与告警 的步骤相同。唯一区别是,你需要将 TidbMonitor 定义文件中的 spec.initializer.baseImage 字段设置为 ARM64 版本镜像。

    apiVersion: pingcap.com/v1alpha1
    kind: TidbMonitor
    metadata:
      name: ${monitor_name}
    spec:
      # ...
      initializer:
        baseImage: pingcap/tidb-monitor-initializer-arm64
        version: v5.4.1
      # ...
    
下载 PDF文档反馈社区交流
文档内容是否有帮助?
产品
TiDB
学习
客户案例
PingCAP Education
TiDB in Action
© 2023 PingCAP. All Rights Reserved.