📣
TiDB Cloud Essential はパブリックプレビュー中です。このページは自動翻訳されたものです。原文はこちらからご覧ください。

TiDB のソフトウェアおよびハードウェア要件

このドキュメントでは、TiDBデータベースの導入と実行に必要なソフトウェアおよびハードウェア要件について説明します。TiDBは、高性能なオープンソースの分散SQLデータベースであり、Intelアーキテクチャサーバー、ARMアーキテクチャサーバー、および主要な仮想化環境に導入でき、良好な動作を実現します。TiDBは、主要なハードウェアネットワークとLinuxオペレーティングシステムのほとんどをサポートしています。

OSおよびプラットフォームの要件

v8.5 LTS では、TiDB はオペレーティング システムと CPU アーキテクチャのさまざまな組み合わせに対して複数レベルの品質標準を保証します。

  • TiDB は、次のオペレーティング システムと CPU アーキテクチャの組み合わせに対してエンタープライズ レベルの本番品質を提供し、製品機能は包括的かつ体系的に検証されています。

    オペレーティングシステムサポートされているCPUアーキテクチャ
    Red Hat Enterprise Linux 8.4 以降の 8.x バージョン
    • x86_64
    • ARM64
    アマゾン リナックス 2
    • x86_64
    • ARM64
    Amazon Linux 2023
    • x86_64
    • ARM64
    Rocky Linux 9.1 以降
    • x86_64
    • ARM64
    Kylin V10 SP1/SP2/SP3 (SP3はv7.5.5以降でサポートされます)
    • x86_64
    • ARM64
    ユニオンテック OS (UOS) V20
    • x86_64
    • ARM64
    オープンオイラー 22.03 LTS SP1/SP3
    • x86_64
    • ARM64
  • 以下のオペレーティングシステムとCPUアーキテクチャの組み合わせでは、TiDBをコンパイル、ビルド、デプロイできます。また、OLTP、OLAP、およびデータツールの基本機能もご利用いただけます。ただし、これらの組み合わせは包括的かつ体系的なテストが行​​われていないため、TiDBはエンタープライズレベルの本番品質を保証するものではありません

    オペレーティングシステムサポートされているCPUアーキテクチャ
    macOS 12 (Monterey) 以降
    • x86_64
    • ARM64
    Oracle Enterprise Linux 8以降x86_64
    Ubuntu LTS 20.04以降x86_64
    CentOS ストリーム 8
    • x86_64
    • ARM64
    Debian 10 (Buster) 以降x86_64
    Fedora 38以降x86_64
    openSUSE Leap v15.5 以降 (Tumbleweed は含みません) x86_64
    SUSE Linux Enterprise Server 15 x86_64

    注記:

    • Oracle Enterprise Linux の場合、TiDB は Red Hat Compatible Kernel (RHCK) をサポートしており、Oracle Enterprise Linux が提供する Unbreakable Enterprise Kernel はサポートしていません。
    • Ubuntu 16.04のサポートは、TiDBの将来のバージョンでは削除される予定です。Ubuntu 18.04以降へのアップグレードを強くお勧めします。
    • CentOS Stream 8 は、2024 年 5 月 31 日にビルドの終了到達します。
  • 前の 2 つの表に記載されているオペレーティング システムの 32 ビット バージョンを使用している場合、TiDB が 32 ビット オペレーティング システムおよび対応する CPUアーキテクチャ上でコンパイル、ビルド、または展開可能であることは保証されません。つまり、TiDB は 32 ビット オペレーティング システムに積極的に適応しません。

  • 上記に記載されていない他のオペレーティング システム バージョンも動作する可能性がありますが、公式にはサポートされていません。

TiDBのコンパイルと実行に必要なライブラリ

TiDBのコンパイルと実行に必要なライブラリバージョン
Golang1.23以降
さびnightly-2023-12-28 以降
GCC7.x
LLVM17.0以降

TiDB の実行に必要なライブラリ: glibc (2.28-151.el8 バージョン)

Dockerイメージの依存関係

次の CPU アーキテクチャがサポートされています。

ソフトウェア要件

制御機

ソフトウェアバージョン
SSHパス1.06以降
TiUP1.5.0以降

注記:

制御マシンにTiUPを展開するクラスターを操作および管理する必要があります。

ターゲットマシン

ソフトウェアバージョン
SSHパス1.06以降
2.0.12以降
タールどれでも

サーバー要件

TiDBは、Intel x86-64アーキテクチャの64ビット汎用ハードウェアサーバープラットフォーム、またはARMアーキテクチャのハードサーバープラットフォームに導入および実行できます。開発環境、テスト環境、および本番環境におけるサーバーハードウェア構成に関する要件と推奨事項(オペレーティングシステム自体が占有するリソースは除く)は次のとおりです。

開発およびテスト環境

成分CPUメモリローカルストレージネットワークインスタンス数(最小要件)
ティドブ8コア以上16 GB以上ストレージ要件ギガビットネットワークカード1 (PDと同じマシンに展開可能)
PD4コア以上8GB以上SAS、200 GB以上ギガビットネットワークカード1 (TiDB と同じマシンにデプロイ可能)
ティクブ8コア以上32 GB以上SAS、200 GB以上ギガビットネットワークカード3
TiFlash32コア以上64 GB以上SSD、200 GB以上ギガビットネットワークカード1
TiCDC8コア以上16 GB以上SAS、200 GB以上ギガビットネットワークカード1
TiProxy4コア以上8GB以上SASギガビットネットワークカード1

注記:

  • テスト環境では、TiDB インスタンスと PD インスタンスを同じサーバーにデプロイできます。
  • パフォーマンス関連のテストでは、テスト結果の正確性を保証するために、低パフォーマンスのstorageおよびネットワーク ハードウェア構成を使用しないでください。
  • TiKVサーバーでは、読み取りと書き込みを高速化するために NVMe SSD を使用することをお勧めします。
  • 機能のテストと検証のみを行う場合は、手順TiDB クイックスタートガイドに従って、TiDB を 1 台のマシンにデプロイします。
  • v6.3.0以降、Linux AMD64アーキテクチャでTiFlashを展開するには、CPUがAVX2命令セットをサポートしている必要があります。1 grep avx2 /proc/cpuinfo出力されていることを確認してください。Linux ARM64アーキテクチャでTiFlashを展開するには、CPUがARMv8命令セットアーキテクチャをサポートしている必要があります。3 grep 'crc32' /proc/cpuinfo | grep 'asimd'出力されていることを確認してください。命令セット拡張を使用することで、TiFlashのベクトル化エンジンはより優れたパフォーマンスを発揮できます。

生産環境

成分CPUメモリハードディスクの種類ネットワークインスタンス数(最小要件)
ティドブ16コア以上48 GB以上SSD10 ギガビット ネットワーク カード (2 枚を推奨)2
PD8コア以上16 GB以上SSD10 ギガビット ネットワーク カード (2 枚を推奨)3
ティクブ16コア以上64 GB以上SSD10 ギガビット ネットワーク カード (2 枚を推奨)3
TiFlash48コア以上128 GB以上1台以上のSSD10 ギガビット ネットワーク カード (2 枚を推奨)2
TiCDC16コア以上64 GB以上SSD10 ギガビット ネットワーク カード (2 枚を推奨)2
モニター8コア以上16 GB以上SASギガビットネットワークカード1
TiProxy8コア以上16 GB以上SAS10 ギガビット ネットワーク カード (2 枚を推奨)2

注記:

  • 本番環境では、TiDBインスタンスとPDインスタンスを同じサーバーにデプロイできます。パフォーマンスと信頼性の要件が高い場合は、別々にデプロイすることをお勧めします。
  • 本番環境では、TiDB、TiKV、 TiFlash をそれぞれ少なくとも 8 個の CPU コアで構成することを強くお勧めします。パフォーマンスを向上させるには、より高い構成をお勧めします。
  • PCIe SSD を使用している場合は TiKV ハード ディスクのサイズを 4 TB 以内に抑え、通常の SSD を使用している場合は 1.5 TB 以内に抑えることをお勧めします。
  • AWS、Google Cloud、AzureなどのクラウドプロバイダーにTiKVをデプロイする場合は、TiKVノードにクラウドディスクを使用することをお勧めします。クラウド環境でTiKVインスタンスがクラッシュした場合、ローカルディスク上のデータが失われる可能性があります。

TiFlashを展開する前に、次の点に注意してください。

  • TiFlash は複数のディスクに展開になります。
  • TiKVデータのリアルタイムレプリケーションをバッファリングするため、 TiFlashデータディレクトリの最初のディスクには高性能SSDを使用することをお勧めします。このディスクのパフォーマンスは、PCIe SSDなど、TiKVのパフォーマンスよりも低くてはなりません。ディスク容量は総容量の10%以上にする必要があります。そうでないと、このノードのボトルネックになる可能性があります。他のディスクには通常のSSDを使用できますが、高性能なPCIe SSDの方がパフォーマンスが向上することにご注意ください。
  • TiFlash はTiKV とは別のノードにデプロイすることをお勧めします。TiFlash とTiFlashを同じノードにデプロイする必要がある場合は、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の導入状況に基づいて、ネットワーク側とホスト側で適切なポートを開くことができます。

成分デフォルトポート説明
ティドブ4000アプリケーションとDBAツールの通信ポート
ティドブ10080TiDBステータスを報告するための通信ポート
TiKV20160TiKV通信ポート
ティクブ20180TiKVステータスを報告するための通信ポート
PD2379TiDBとPD間の通信ポート
PD2380PDクラスタ内のノード間通信ポート
TiFlash9000TiFlash TCPサービスポート
TiFlash3930TiFlash RAFTおよびコプロセッサーサービスポート
TiFlash20170TiFlashプロキシサービスポート
TiFlash20292PrometheusがTiFlash Proxyメトリックを取得するためのポート
TiFlash8234PrometheusがTiFlashメトリクスを取得するためのポート
TiCDC8300TiCDC通信ポート
監視9090Prometheusサービスの通信ポート
監視12020NgMonitoringサービスの通信ポート
ノードエクスポーター9100各TiDBクラスタノードのシステム情報を報告するための通信ポート
ブラックボックスエクスポーター9115TiDB クラスタ内のポートを監視するために使用される Blackbox_exporter 通信ポート
グラファナ3000外部Web監視サービスとクライアント(ブラウザ)アクセス用のポート
アラートマネージャー9093アラートウェブサービスのポート
アラートマネージャー9094警報通信ポート

ストレージ要件

成分ディスク容量要件健全なディスク使用率
ティドブ
  • ログディスク用に少なくとも30 GB
  • v6.5.0以降では、インデックスの追加などのDDL操作を高速化するために、Fast Online DDL(tidb_ddl_enable_fast_reorg変数で制御)がデフォルトで有効になっています。アプリケーションに大きなオブジェクトを含むDDL操作がある場合、またはIMPORT INTOを使用してデータをインポートする場合は、TiDB用に追加のSSDディスク容量(100GB以上)を用意することを強くお勧めします。詳細な設定手順については、 「TiDBインスタンスの一時領域の設定」をご覧ください。
90%未満
PDデータディスクとログディスクにはそれぞれ少なくとも20 GB 90%未満
TiKVデータディスクとログディスクにはそれぞれ少なくとも100 GB 80%未満
TiFlashデータディスクには少なくとも100 GB、ログディスクには少なくとも30 GB 80%未満
TiUP
  • 制御マシン: 単一バージョンの TiDB クラスターをデプロイする場合、必要な空き容量は 1 GB 以下です。複数バージョンの TiDB クラスターをデプロイする場合は、必要な空き容量が増加します。
  • デプロイメントサーバー(TiDBコンポーネントが実行されるマシン): TiFlashは約700MB、その他のコンポーネント(PD、TiDB、TiKVなど)はそれぞれ約200MBのスペースを占有します。クラスターのデプロイメントプロセス中、 TiUPクラスターは一時ファイルを保存するために1MB未満の一時スペース( /tmpディレクトリ)を必要とします。
該当なし
Ngモニタリング
  • コンプロフ: 3 x 1 GB x コンポーネント数 (各コンポーネントは1日あたり約1 GB、合計3日間) + 20 GB の予約済みスペース
  • Top SQL: 30 x 50 MB x コンポーネント数(各コンポーネントは1日あたり約50 MBを占有し、合計30日間)
  • ConprofとTop SQLは予約スペースを共有します
該当なし

TiDBはXFSとExt4ファイルシステムをサポートしています。その他のファイルシステムは本番環境では推奨されません。

Webブラウザの要件

TiDBはデータベースメトリクスの可視化にグラファナを使用しています。JavaScriptが有効になっている最新バージョンのMicrosoft Edge、Safari、Chrome、またはFirefoxで十分です。

TiFlash分散storageおよびコンピューティングアーキテクチャのハードウェアおよびソフトウェア要件

上記のTiFlashソフトウェアおよびハードウェア要件は、storageとコンピューティングを組み合わせたアーキテクチャを対象としています。v7.0.0以降、 TiFlashは分散型storageおよびコンピューティングアーキテクチャをサポートします。このアーキテクチャでは、 TiFlashは書き込みノードとコンピューティングノードの2種類のノードに分割されます。これらのノードの要件は次のとおりです。

  • ソフトウェア: 結合されたstorageとコンピューティングアーキテクチャと同じままですOSおよびプラットフォームの要件参照)。
  • ネットワーク ポート: 結合されたstorageおよびコンピューティングアーキテクチャと同じままですネットワーク参照)。
  • ディスク容量:
    • TiFlash書き込みノード:少なくとも200GBのディスク容量を設定することをお勧めします。これは、 TiFlashレプリカの追加やリージョンレプリカの移行時に、Amazon S3にデータをアップロードする前にローカルバッファとして使用されます。また、Amazon S3と互換性のあるオブジェクトstorageが必要です。
    • TiFlashコンピュートノード:少なくとも100GBのディスク容量を設定することをお勧めします。これは主に、書き込みノードから読み取ったデータをキャッシュしてパフォーマンスを向上させるために使用されます。コンピュートノードのキャッシュが完全に使用される場合もありますが、これは正常です。
  • CPU およびメモリの要件については、次のセクションで説明します。

開発およびテスト環境

成分CPUメモリローカルストレージネットワークインスタンス数(最小要件)
TiFlash書き込みノード16コア以上32 GB以上SSD、200 GB以上ギガビットイーサネット1
TiFlashコンピューティングノード16コア以上32 GB以上SSD、100 GB以上ギガビットイーサネット0(以下の注記を参照)

生産環境

成分CPUメモリディスクタイプネットワークインスタンス数(最小要件)
TiFlash書き込みノード32コア以上64 GB以上1台以上のSSD10 ギガビット イーサネット (2 個を推奨)1
TiFlashコンピューティングノード32コア以上64 GB以上1台以上のSSD10 ギガビット イーサネット (2 個を推奨)0(以下の注記を参照)

注記:

TiUPなどのデプロイメント ツールを使用して、 [0, +inf]範囲内でTiFlashコンピューティング ノードを迅速にスケールインまたはスケールアウトできます。

このページは役に立ちましたか?