ソフトウェアとハードウェアの推奨事項
TiDB は、高性能のオープンソース分散 SQL データベースとして、Intelアーキテクチャサーバー、ARMアーキテクチャサーバー、および主要な仮想化環境に導入でき、良好に動作します。 TiDB は、ほとんどの主要なハードウェア ネットワークと Linux オペレーティング システムをサポートしています。
OS とプラットフォームの要件
v7.1 LTS では、TiDB は、オペレーティング システムと CPU アーキテクチャの組み合わせに関するさまざまな品質基準に対するマルチレベルのサポートを提供します。
以下のオペレーティング システムと CPU アーキテクチャの組み合わせに対して、TiDB はエンタープライズ レベルの本番品質を提供し、製品機能は包括的かつ体系的に検証されています。
オペレーティングシステム サポートされている CPU アーキテクチャ Red Hat Enterprise Linux 8.4 以降の 8.x バージョン - x86_64
- アーム64
- Red Hat Enterprise Linux 7.3 以降の 7.x バージョン
- CentOS 7.3 以降 7.x バージョン
- x86_64
- アーム64
アマゾン リナックス 2 - x86_64
- アーム64
キリン オイラー V10 SP1/SP2 - x86_64
- アーム64
ユニオンテック OS (UOS) V20 - x86_64
- アーム64
openEuler 22.03 LTS SP1 - x86_64
- アーム64
注記:
CentOS Linux EOLによると、CentOS Linux 8 のアップストリーム サポートは 2021 年 12 月 31 日に終了しました。CentOS Stream 8 は引き続き CentOS 組織によってサポートされます。
以下のオペレーティング システムと CPU アーキテクチャの組み合わせでは、TiDB をコンパイル、構築、展開できます。さらに、OLTP、OLAP、データ ツールの基本機能も使用できます。ただし、TiDB はエンタープライズ レベルの本番品質を保証しません。
オペレーティングシステム サポートされている CPU アーキテクチャ macOS 12 (モントレー) 以降 - x86_64
- アーム64
Oracle Enterprise Linux 7.3 以降の 7.x バージョン x86_64 Ubuntu LTS 18.04以降 x86_64 CentOS 8 ストリーム - x86_64
- アーム64
Debian 9 (ストレッチ) 以降 x86_64 Fedora 35 以降 x86_64 openSUSE Leap v15.3 以降 (Tumbleweed は含まない) x86_64 SUSE Linux エンタープライズ サーバー 15 x86_64 注記:
- Oracle Enterprise Linux の場合、TiDB は Red Hat 互換カーネル (RHCK) をサポートしますが、Oracle Enterprise Linux が提供する Unbreakable Enterprise Kernel はサポートしません。
- Ubuntu 16.04 のサポートは、TiDB の将来のバージョンでは削除される予定です。 Ubuntu 18.04 以降にアップグレードすることを強くお勧めします。
前の 2 つの表にリストされているオペレーティング システムの 32 ビット バージョンを使用している場合、TiDB が 32 ビット オペレーティング システムおよび対応する CPUアーキテクチャ上でコンパイル可能、ビルド可能、またはデプロイ可能であることは保証されません。そうでない場合、TiDB は積極的に適応しません。 32 ビット オペレーティング システムに対応します。
上記以外のオペレーティング システムのバージョンは動作する可能性がありますが、正式にはサポートされていません。
TiDB のコンパイルと実行に必要なライブラリ
TiDB のコンパイルと実行に必要なライブラリ | バージョン |
---|---|
Golang | 1.20以降 |
さび | 夜間-2022-07-31 以降 |
GCC | 7.x |
LLVM | 13.0以降 |
TiDB の実行に必要なライブラリ: glibc (2.28-151.el8 バージョン)
Docker イメージの依存関係
次の CPU アーキテクチャがサポートされています。
- x86_64。 TiDB v6.6.0 以降では、 x84-64-v2 命令セットが必須になります。
- アーム64
ソフトウェアの推奨事項
制御機
ソフトウェア | バージョン |
---|---|
SSHパス | 1.06以降 |
TiUP | 1.5.0以降 |
注記:
TiDB クラスターを操作制御マシンにTiUPを展開する管理する必要があります。
対象マシン
ソフトウェア | バージョン |
---|---|
SSHパス | 1.06以降 |
沼 | 2.0.12以降 |
タール | どれでも |
サーバーの推奨事項
TiDB は、Intel x86-64アーキテクチャの 64 ビット汎用ハードウェアサーバープラットフォーム、または ARMアーキテクチャのハードサーバープラットフォームに展開して実行できます。開発、テスト、本番環境のサーバーハードウェア構成に関する要件と推奨事項 (オペレーティング システム自体が占有するリソースは無視します) は次のとおりです。
開発およびテスト環境
成分 | CPU | メモリ | ローカルストレージ | 通信網 | インスタンスの数 (最小要件) |
---|---|---|---|---|---|
TiDB | 8コア以上 | 16GB以上 | 特別な要件はありません | ギガビットネットワークカード | 1 (PD と同じマシンにデプロイ可能) |
PD | 4コア以上 | 8GB以上 | SAS、200GB以上 | ギガビットネットワークカード | 1 (TiDB と同じマシンにデプロイ可能) |
TiKV | 8コア以上 | 32GB以上 | SAS、200GB以上 | ギガビットネットワークカード | 3 |
TiFlash | 32コア以上 | 64GB以上 | SSD、200GB以上 | ギガビットネットワークカード | 1 |
TiCDC | 8コア以上 | 16GB以上 | SAS、200GB以上 | ギガビットネットワークカード | 1 |
注記:
- テスト環境では、TiDB インスタンスと PD インスタンスを同じサーバーにデプロイできます。
- パフォーマンス関連のテストでは、テスト結果の正確性を保証するために、低パフォーマンスのstorageとネットワーク ハードウェア構成を使用しないでください。
- TiKVサーバーの場合、読み取りと書き込みを高速化するために NVMe SSD を使用することをお勧めします。
- 機能をテストして検証するだけの場合は、 TiDB クイック スタート ガイドに従って単一マシンに TiDB をデプロイします。
- TiDBサーバーはディスクを使用してサーバーログを保存するため、テスト環境ではディスクの種類と容量に特別な要件はありません。
- v6.3.0 以降、Linux AMD64アーキテクチャでTiFlash を展開するには、CPU が AVX2 命令セットをサポートする必要があります。
cat /proc/cpuinfo | grep avx2
に出力があることを確認します。 Linux ARM64アーキテクチャでTiFlashを導入するには、CPU が ARMv8 命令セットアーキテクチャをサポートしている必要があります。cat /proc/cpuinfo | grep 'crc32' | grep 'asimd'
に出力があることを確認します。命令セット拡張を使用することにより、TiFlash のベクトル化エンジンはより優れたパフォーマンスを実現できます。
本番環境
成分 | CPU | メモリ | ハードディスクの種類 | 通信網 | インスタンスの数 (最小要件) |
---|---|---|---|---|---|
TiDB | 16コア以上 | 48GB以上 | SSD | 10 ギガビット ネットワーク カード (2 枚を推奨) | 2 |
PD | 8コア以上 | 16GB以上 | SSD | 10 ギガビット ネットワーク カード (2 枚を推奨) | 3 |
TiKV | 16コア以上 | 64GB以上 | SSD | 10 ギガビット ネットワーク カード (2 枚を推奨) | 3 |
TiFlash | 48コア以上 | 128GB以上 | 1 つ以上の SSD | 10 ギガビット ネットワーク カード (2 枚を推奨) | 2 |
TiCDC | 16コア以上 | 64GB以上 | SSD | 10 ギガビット ネットワーク カード (2 枚を推奨) | 2 |
モニター | 8コア以上 | 16GB以上 | SAS | ギガビットネットワークカード | 1 |
注記:
- 本番環境では、TiDB インスタンスと PD インスタンスを同じサーバーにデプロイできます。パフォーマンスと信頼性に対してより高い要件がある場合は、それらを個別に導入してみてください。
- 本番環境では、TiDB、TiKV、およびTiFlashをそれぞれ少なくとも 8 個の CPU コアで構成することを強くお勧めします。より良いパフォーマンスを得るには、より高い構成をお勧めします。
- TiKV ハードディスクのサイズは、PCIe SSD を使用している場合は 4 TB 以内、通常の SSD を使用している場合は 1.5 TB 以内にすることをお勧めします。
TiFlashを展開する前に、次の点に注意してください。
- TiFlash は複数のディスクに展開されるにすることができます。
- TiKV データのリアルタイム レプリケーションをバッファリングするために、 TiFlashデータ ディレクトリの最初のディスクとして高性能 SSD を使用することをお勧めします。このディスクのパフォーマンスは、PCIe SSD などの TiKV のパフォーマンスよりも低くてはなりません。ディスク容量は総容量の 10% 以上である必要があります。そうしないと、このノードのボトルネックになる可能性があります。他のディスクに通常の SSD を導入することもできますが、より優れた PCIe SSD の方がパフォーマンスが向上することに注意してください。
- TiFlash をTiKV とは別のノードにデプロイすることをお勧めします。 TiFlashと TiKV を同じノードに展開する必要がある場合は、CPU コアとメモリの数を増やし、相互の干渉を避けるためにTiFlashと TiKV を異なるディスクに展開してみてください。
- TiFlashディスクの総容量は
the data volume of the entire TiKV cluster to be replicated / the number of TiKV replicas * the number of TiFlash replicas
のように計算されます。たとえば、TiKV の計画全体容量が 1 TB、TiKV レプリカの数が 3、 TiFlashレプリカの数が 2 の場合、 TiFlashの推奨合計容量は1024 GB / 3 * 2
です。一部のテーブルのデータのみを複製できます。この場合、複製するテーブルのデータ量に応じてTiFlashの容量を決定してください。
TiCDC を展開する前に、500 GB を超える PCIe SSD ディスクに TiCDC を展開することが推奨されることに注意してください。
ネットワーク要件
オープンソースの分散 SQL データベースである TiDB を実行するには、次のネットワーク ポート構成が必要です。実際の環境での TiDB 導入に基づいて、管理者はネットワーク側とホスト側で関連するポートを開くことができます。
成分 | デフォルトのポート | 説明 |
---|---|---|
TiDB | 4000 | アプリケーションとDBAツール用の通信ポート |
TiDB | 10080 | TiDB ステータスを報告するための通信ポート |
TiKV | 20160 | TiKV通信ポート |
TiKV | 20180年 | TiKV ステータスを報告するための通信ポート |
PD | 2379 | TiDB と PD 間の通信ポート |
PD | 2380 | PDクラスタ内のノード間通信ポート |
TiFlash | 9000 | TiFlash TCP サービス ポート |
TiFlash | 3930 | TiFlash RAFT およびコプロセッサーサービス ポート |
TiFlash | 20170年 | TiFlashプロキシ サービス ポート |
TiFlash | 20292 | Prometheus がTiFlashプロキシ メトリクスをプルするためのポート |
TiFlash | 8234 | Prometheus がTiFlashメトリクスをプルするためのポート |
Pump | 8250 | Pump通信ポート |
Drainer | 8249 | Drainer通信ポート |
TiCDC | 8300 | TiCDC 通信ポート |
監視 | 9090 | Prometheus サービスの通信ポート |
監視 | 12020 | NgMonitoring サービスの通信ポート |
ノードエクスポーター | 9100 | すべての TiDB クラスター ノードのシステム情報を報告するための通信ポート |
ブラックボックスエクスポーター | 9115 | Blackbox_exporter 通信ポート。TiDB クラスター内のポートを監視するために使用されます。 |
グラファナ | 3000 | 外部 Web 監視サービスおよびクライアント (ブラウザ) アクセス用のポート |
アラートマネージャー | 9093 | アラート Web サービスのポート |
アラートマネージャー | 9094 | アラート通信ポート |
ディスク容量の要件
成分 | ディスク容量の要件 | 健全なディスク使用率 |
---|---|---|
TiDB |
| 90%未満 |
PD | データ ディスクとログ ディスクにそれぞれ少なくとも 20 GB | 90%未満 |
TiKV | データ ディスクとログ ディスクにそれぞれ少なくとも 100 GB | 80%未満 |
TiFlash | データ ディスクには少なくとも 100 GB、ログ ディスクには少なくとも 30 GB それぞれ | 80%未満 |
TiUP |
| 該当なし |
NGモニタリング |
| 該当なし |
Web ブラウザの要件
TiDB はグラファナに依存してデータベース メトリックの視覚化を提供します。 Javascript が有効になっている最新バージョンの Internet Explorer、Chrome、または Firefox で十分です。