使用 TiUP 离线部署 TiDB 集群

    在 选择对应版本的 TiDB server 离线镜像包(包含 TiUP 离线组件包)。

    方式二:使用 tiup mirror clone 命令手动打包离线组件包

    1. 在线环境中安装 TiUP 包管理器工具

      1. 执行如下命令安装 TiUP 工具:

      2. 重新声明全局环境变量:

        1. source .bash_profile
      3. 确认 TiUP 工具是否安装:

        1. which tiup
    2. 使用 TiUP 制作离线镜像

      1. 在一台和外网相通的机器上拉取需要的组件:

        1. tiup mirror clone tidb-community-server-${version}-linux-amd64 ${version} --os=linux --arch=amd64

        该命令会在当前目录下创建一个名叫 tidb-community-server-${version}-linux-amd64 的目录,里面包含 TiUP 管理的组件包。

      2. 通过 tar 命令将该组件包打包然后发送到隔离环境的中控机:

          此时,tidb-community-server-${version}-linux-amd64.tar.gz 就是一个独立的离线环境包。

      将离线包发送到目标集群的中控机后,执行以下命令安装 TiUP 组件:

      1. tar xzvf tidb-community-server-${version}-linux-amd64.tar.gz
      2. sh tidb-community-server-${version}-linux-amd64/local_install.sh
      3. source /home/tidb/.bash_profile

      若需将镜像切换到其他目录,可以通过手动执行 tiup mirror set <mirror-dir> 进行切换。如果需要切换到在线环境,可执行 tiup mirror set https://tiup-mirrors.pingcap.com

      使用 root 用户登录目标机器,将部署目标机器数据盘格式化成 ext4 文件系统,挂载时添加 nodelallocnoatime 挂载参数。 是必选参数,否则 TiUP 安装时检测无法通过;noatime 是可选建议参数。

      /dev/nvme0n1 数据盘为例,具体操作步骤如下:

      1. 查看数据盘。

        1. Disk /dev/nvme0n1: 1000 GB
      2. 创建分区表。

        1. parted -s -a optimal /dev/nvme0n1 mklabel gpt -- mkpart primary ext4 1 -1
        1. mkfs.ext4 /dev/nvme0n1p1
      3. 查看数据盘分区 UUID。

        本例中 nvme0n1p1 的 UUID 为 c51eb23b-195c-4061-92a9-3fad812cc12f

        1. lsblk -f
        1. NAME FSTYPE LABEL UUID MOUNTPOINT
        2. sda
        3. ├─sda1 ext4 237b634b-a565-477b-8371-6dff0c41f5ab /boot
        4. ├─sda2 swap f414c5c0-f823-4bb1-8fdf-e531173a72ed
        5. └─sda3 ext4 547909c1-398d-4696-94c6-03e43e317b60 /
        6. └─nvme0n1p1 ext4 c51eb23b-195c-4061-92a9-3fad812cc12f
      4. 编辑 /etc/fstab 文件,添加 nodelalloc 挂载参数。

        1. UUID=c51eb23b-195c-4061-92a9-3fad812cc12f /data1 ext4 defaults,nodelalloc,noatime 0 2
      5. 挂载数据盘。

        1. mkdir /data1 && \
        2. mount -a
      6. 执行以下命令,如果文件系统为 ext4,并且挂载参数中包含 nodelalloc,则表示已生效。

        1. mount -t ext4
        1. /dev/nvme0n1p1 on /data1 type ext4 (rw,noatime,nodelalloc,data=ordered)

      集群初始化配置文件需要手动编写,完整的全配置参数模版可以参考 Github TiUP 项目配置参数模版。需要在中控机上面创建 YAML 格式配置文件,例如 topology.yaml:

      1. cat topology.yaml

      执行以下命令来部署 TiDB 集群。

      1. tiup cluster deploy tidb-test v4.0.0 topology.yaml --user tidb [-p] [-i /home/root/.ssh/gcp_rsa]
      2. tiup cluster start tidb-test

      预期日志结尾输出会有 关键词,表示部署成功。

      部署完成后,集群相关操作可参考 。