diff --git a/hardware-and-software-requirements.md b/hardware-and-software-requirements.md index 3c1d1028ca53..33d968864985 100644 --- a/hardware-and-software-requirements.md +++ b/hardware-and-software-requirements.md @@ -51,9 +51,10 @@ TiDB 支持部署和运行在 Intel x86-64 架构的 64 位通用硬件服务器 | **组件** | **CPU** | **内存** | **本地存储** | **网络** | **实例数量(最低要求)** | | --- | --- | --- | --- | --- | --- | -| TiDB | 8核+ | 16 GB+ | 无特殊要求 | 千兆网卡 | 1(可与 PD 同机器) | -| PD | 4核+ | 8 GB+ | SAS, 200 GB+ | 千兆网卡 | 1(可与 TiDB 同机器) | -| TiKV | 8核+ | 32 GB+ | SSD, 200 GB+ | 千兆网卡 | 3 | +| TiDB | 8 核+ | 16 GB+ | 无特殊要求 | 千兆网卡 | 1(可与 PD 同机器) | +| PD | 4 核+ | 8 GB+ | SAS, 200 GB+ | 千兆网卡 | 1(可与 TiDB 同机器) | +| TiKV | 8 核+ | 32 GB+ | SSD, 200 GB+ | 千兆网卡 | 3 | +| TiFlash | 32 核+ | 64 GB+ | SSD, 200 GB+ | 千兆网卡 | 1 | > **注意:** > @@ -67,16 +68,21 @@ TiDB 支持部署和运行在 Intel x86-64 架构的 64 位通用硬件服务器 | **组件** | **CPU** | **内存** | **硬盘类型** | **网络** | **实例数量(最低要求)** | | --- | --- | --- | --- | --- | --- | -| TiDB | 16核+ | 32 GB+ | SAS | 万兆网卡(2块最佳) | 2 | +| TiDB | 16 核+ | 32 GB+ | SAS | 万兆网卡(2 块最佳) | 2 | | PD | 4核+ | 8 GB+ | SSD | 万兆网卡(2块最佳) | 3 | -| TiKV | 16核+ | 32 GB+ | SSD | 万兆网卡(2块最佳) | 3 | -| 监控 | 8核+ | 16 GB+ | SAS | 千兆网卡 | 1 | +| TiKV | 16 核+ | 32 GB+ | SSD | 万兆网卡(2 块最佳) | 3 | +| TiFlash | 48 核+ | 128 GB+ | 1 or more SSDs | 万兆网卡(2 块最佳) | 2 | +| 监控 | 8 核+ | 16 GB+ | SAS | 千兆网卡 | 1 | > **注意:** > > - 生产环境中的 TiDB 和 PD 可以部署和运行在同服务器上,如对性能和可靠性有更高的要求,应尽可能分开部署。 > - 生产环境强烈推荐使用更高的配置。 > - TiKV 硬盘大小配置建议 PCI-E SSD 不超过 2 TB,普通 SSD 不超过 1.5 TB。 +> - TiFlash 支持[多盘部署](/tiflash/tiflash-configuration.md#多盘部署),所以无需使用 RAID。 +> - TiFlash 数据目录的第一块磁盘推荐用高性能 SSD 来缓冲 TiKV 同步数据的实时写入,该盘性能应不低于 TiKV 所使用的磁盘,比如 PCI-E SSD。并且该磁盘容量建议不小于总容量的 10%,否则它可能成为这个节点的能承载的数据量的瓶颈。而其他磁盘可以根据需求部署多块普通 SSD,当然更好的 PCI-E SSD 硬盘会带来更好的性能。 +> - TiFlash 推荐与 TiKV 部署在不同节点,如果条件所限必须将 TiFlash 与 TiKV 部署在相同节点,则需要适当增加 CPU 核数和内存,且尽量将 TiFlash 与 TiKV 部署在不同的磁盘,以免互相干扰。 +> - TiFlash 硬盘总容量大致为:`整个 TiKV 集群的需同步数据容量 / TiKV 副本数 * TiFlash 副本数`。例如整体 TiKV 的规划容量为 1 TB、TiKV 副本数为 3、TiFlash 副本数为 2,则 TiFlash 的推荐总容量为 `1024 GB / 3 * 2`。用户可以选择同步部分表数据而非全部,具体容量可以根据需要同步的表的数据量具体分析。 ## 网络要求 diff --git a/tiflash/deploy-tiflash.md b/tiflash/deploy-tiflash.md deleted file mode 100644 index a2607997db44..000000000000 --- a/tiflash/deploy-tiflash.md +++ /dev/null @@ -1,142 +0,0 @@ ---- -title: 部署 TiFlash 集群 -category: reference -aliases: ['/docs-cn/dev/reference/tiflash/deploy/'] ---- - -# 部署 TiFlash 集群 - -> **注意:** -> -> 体验 TiFlash RC 版建议和 [PingCAP 官方](mailto:info@pingcap.com)联系,以获得更多资讯和辅助。 - -本文介绍了部署 TiFlash 集群的环境要求以及不同场景下的部署方式。 - -## 推荐硬件配置 - -本节根据不同的 TiFlash 部署模式给出了硬件配置建议。 - -### TiFlash 单独部署模式 - -* 最低配置:32 VCore, 64 GB RAM, 1 SSD + n HDD -* 推荐配置:48 VCore, 128 GB RAM, 1 NVMe SSD + n SSD - -部署机器不限,最少一台即可。单台机器可以使用多盘,但不推荐单机多实例部署。 - -推荐用一个 SSD 盘来缓冲 TiKV 同步数据的实时写入,该盘性能不低于 TiKV 所使用的硬盘,建议是性能更好的 NVMe SSD。该 SSD 盘容量建议不小于总容量的 10%,否则它可能成为这个节点的能承载的数据量的瓶颈。而其他硬盘,可以选择部署多块 HDD 或者普通 SSD,当然更好的硬盘会带来更好的性能。 - -TiFlash 支持[多盘部署](/tiflash/tiflash-configuration.md#多盘部署),所以无需使用 RAID。 - -### TiFlash 和 TiKV 部署在相同节点模式 - -参考 [TiKV 节点的硬件配置](/hardware-and-software-requirements.md#服务器建议配置),并且适当增加内存和 CPU 核数。 - -建议不要将 TiFlash 与 TiKV 同盘部署,以防互相干扰。 - -硬盘选择标准同 [TiFlash 单独部署模式](#tiflash-单独部署模式)。硬盘总容量大致为:`整个 TiKV 集群的需同步数据容量 / TiKV 副本数 * TiFlash 副本数`。例如整体 TiKV 的规划容量为 1TB、TiKV 副本数为 3、TiFlash 副本数为 2,则 TiFlash 的推荐总容量为 `1024GB / 3 * 2`。用户可以选择同步部分表数据而非全部。 - -## 针对 TiDB 的版本要求 - -目前 TiFlash 的测试是基于 TiDB 4.0 版本的相关组件(包括 TiDB、PD、TiKV、TiFlash)来进行的,TiDB 4.0 版本的下载方式参考以下安装部署步骤。 - -## 安装部署 TiFlash - -本节介绍了在不同场景下如何安装部署 TiFlash,包括以下场景: - -- [全新部署 TiFlash](#全新部署-tiflash) -- [在原有 TiDB 集群上新增 TiFlash 组件](#在原有-tidb-集群上新增-tiflash-组件) - -> **注意:** -> -> 1. 在开启 TiFlash 进程之前,必须确保 PD 的 Placement Rules 功能已开启(开启方法见[在原有 TiDB 集群上新增 TiFlash 组件](#在原有-tidb-集群上新增-tiflash-组件)一节的第 2 步)。 -> 2. 在 TiFlash 运行期间,必须确保 PD 的 Placement Rules 功能保持开启状态。 - -### 全新部署 TiFlash - -TiUP Cluster 是适用于 TiDB 4.0 及以上版本的部署工具,目前推荐使用 TiUP Cluster 安装部署 TiFlash,部署流程如下: - -1. 参考 [TiUP 部署文档](/production-deployment-using-tiup.md)安装 TiUP。 - -2. 安装 TiUP cluster 组件 - - {{< copyable "shell-regular" >}} - - ```shell - tiup cluster - ``` - -3. 编写 topology 配置文件,保存为 `topology.yaml`。 - - 可以参考[全量的配置文件模版](https://github.com/pingcap/tiup/blob/master/examples/topology.example.yaml)。 - - 除了部署 TiDB 集群的配置,需要额外在 `tiflash_servers` 下配置 tiflash servers 所在的 ip(目前只支持 ip,不支持域名)。 - - 如果需要部署 TiFlash,请把 `pd` 部分的 `replication.enable-placement-rules` 配置设置为 `true`。 - - {{< copyable "" >}} - - ```ini - server_configs: - pd: - replication.enable-placement-rules: true - - pd_servers: - - host: 172.19.0.101 - - host: 172.19.0.102 - - host: 172.19.0.103 - - tidb_servers: - - host: 172.19.0.101 - - tikv_servers: - - host: 172.19.0.101 - - host: 172.19.0.102 - - host: 172.19.0.103 - - tiflash_servers: - - host: 172.19.0.103 - ``` - - 如果希望自定义部署目录,需要配置 data_dir 参数,不需要则不加。如果希望[多盘部署](/tiflash/tiflash-configuration.md#多盘部署),则以逗号分隔各部署目录,例如: - - {{< copyable "" >}} - - ```ini - tiflash_servers: - - host: 172.19.0.103 - data_dir: /data1/tiflash/data,/data2/tiflash/data - ``` - -4. 按照 TiUP 部署流程完成集群部署的剩余步骤,包括: - - 部署 TiDB 集群,其中 test 为集群名: - - {{< copyable "shell-regular" >}} - - ```shell - tiup cluster deploy test v4.0.0-rc topology.yaml -i ~/.ssh/id_rsa - ``` - - 启动 TiDB 集群: - - {{< copyable "shell-regular" >}} - - ```shell - tiup cluster start test - ``` - -5. 查看集群状态 - - {{< copyable "shell-regular" >}} - - ```shell - tiup cluster display test - ``` - -### 在原有 TiDB 集群上新增 TiFlash 组件 - -1. 首先确认当前 TiDB 的版本支持 TiFlash,否则需要先升级 TiDB 集群至 4.0 rc 以上版本。 - -2. 在 pd-ctl(目前 pd-ctl 还没有接入 TiUP Cluster,需要从 [这里](https://download.pingcap.org/tidb-v4.0.0-rc-linux-amd64.tar.gz) 手动进行下载)中输入 `config set enable-placement-rules true` 命令,以开启 PD 的 Placement Rules 功能。 - -3. 参考 [扩容 TiFlash 节点](/scale-tidb-using-tiup.md#扩容-tiflash-节点) 章节对 TiFlash 进行部署。 diff --git a/tiflash/troubleshoot-tiflash.md b/tiflash/troubleshoot-tiflash.md index 14ec54e1bbc5..b571f9e5a304 100644 --- a/tiflash/troubleshoot-tiflash.md +++ b/tiflash/troubleshoot-tiflash.md @@ -38,7 +38,7 @@ category: reference 该问题一般由于配置错误或者环境问题导致 TiFlash 处于异常状态,可以先通过以下步骤定位问题组件: -1. 检查 PD 是否开启 Placement Rules 功能(开启方法见[在原有 TiDB 集群上新增 TiFlash 组件](/tiflash/deploy-tiflash.md#在原有-tidb-集群上新增-tiflash-组件)的第 2 步): +1. 使用 pd-ctl 检查 PD 的 [Placement Rules](/configure-placement-rules.md) 功能是否开启: {{< copyable "shell-regular" >}} @@ -46,7 +46,7 @@ category: reference echo 'config show replication' | /path/to/pd-ctl -u http://: ``` - 预期结果为 `"enable-placement-rules": "true"`。 + 预期结果为 `"enable-placement-rules": "true"`(已开启)。如未开启,具体开启方法参考[开启 Placement Rules 特性](/configure-placement-rules.md#开启-placement-rules-特性)。 2. 通过 TiFlash-Summary 监控面板下的 UpTime 检查操作系统中 TiFlash 进程是否正常。