TiDB データベース プラットフォームのクイック スタート ガイド

このガイドでは、TiDB の使用を開始するための最も簡単な方法について説明します。非本番環境では、次のいずれかの方法で TiDB データベースをデプロイできます。

ノート:

  • TiDB、TiUP、および TiDB ダッシュボードは、使用状況の詳細を PingCAP と共有して、製品の改善方法を理解するのに役立ちます。共有される内容と共有を無効にする方法の詳細については、 テレメトリーを参照してください。

  • このガイドで提供されている展開方法は、本番用ではなく、クイック スタート専用です。

ローカル テスト クラスターをデプロイする

  • シナリオ: 単一の macOS または Linuxサーバーを使用して、テスト用にローカル TiDB クラスターをすばやく展開します。このようなクラスターをデプロイすることで、TiDB の基本的なアーキテクチャと、TiDB、TiKV、PD、および監視コンポーネントなどのコンポーネントの操作を学習できます。
  • macOS
  • Linux

分散システムとして、基本的な TiDB テスト クラスターは通常、2 つの TiDB インスタンス、3 つの TiKV インスタンス、3 つの PD インスタンス、およびオプションの TiFlash インスタンスで構成されます。 TiUP Playground を使用すると、次の手順を実行して、テスト クラスターをすばやく構築できます。

  1. TiUP をダウンロードしてインストールします。

    curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh

    次のメッセージが表示されたら、TiUP は正常にインストールされています。

    Successfully set mirror to https://tiup-mirrors.pingcap.com Detected shell: zsh Shell profile: /Users/user/.zshrc /Users/user/.zshrc has been modified to add tiup to PATH open a new terminal or source /Users/user/.zshrc to use it Installed path: /Users/user/.tiup/bin/tiup =============================================== Have a try: tiup playground ===============================================

    上記の出力のシェル プロファイル パスに注意してください。次のステップでパスを使用する必要があります。

  2. グローバル環境変数を宣言します。

    ノート:

    インストール後、TiUP は対応するシェル プロファイル ファイルの絶対パスを表示します。パスに応じて、次のsourceのコマンドの${your_shell_profile}を変更する必要があります。この場合、ステップ 1 の出力から${your_shell_profile}/Users/user/.zshrcです。

    source ${your_shell_profile}
  3. 現在のセッションでクラスターを開始します。

    • 1 つの TiDB インスタンス、1 つの TiKV インスタンス、1 つの PD インスタンス、および 1 つの TiFlash インスタンスで最新バージョンの TiDB クラスターを開始する場合は、次のコマンドを実行します。

      tiup playground
    • TiDB のバージョンと各コンポーネントのインスタンス数を指定する場合は、次のようなコマンドを実行します。

      tiup playground v6.2.0 --db 2 --pd 3 --kv 3

      このコマンドは、v6.2.0 などのバージョン クラスターをローカル マシンにダウンロードして起動します。最新バージョンを表示するには、 tiup list tidbを実行します。

      このコマンドは、クラスターのアクセス方法を返します。

      CLUSTER START SUCCESSFULLY, Enjoy it ^-^ To connect TiDB: mysql --comments --host 127.0.0.1 --port 4001 -u root -p (no password) To connect TiDB: mysql --comments --host 127.0.0.1 --port 4000 -u root -p (no password) To view the dashboard: http://127.0.0.1:2379/dashboard PD client endpoints: [127.0.0.1:2379 127.0.0.1:2382 127.0.0.1:2384] To view Prometheus: http://127.0.0.1:9090 To view Grafana: http://127.0.0.1:3000

      ノート:

      • v5.2.0 以降、TiDB は Apple M1 チップを使用するマシンでのtiup playgroundの実行をサポートしています。
      • このように運用されているプレイグラウンドの場合、テスト デプロイが終了した後、TiUP は元のクラスター データをクリーンアップします。コマンドを再実行すると、新しいクラスターが取得されます。
      • データをストレージに保持する場合は、 tiup --tag <your-tag> playground ...を実行します。詳細はTiUPリファレンスガイドを参照してください。
  4. TiDB にアクセスするための新しいセッションを開始します。

    • TiUP クライアントを使用して TiDB に接続します。

      tiup client
    • MySQL クライアントを使用して TiDB に接続することもできます。

      mysql --host 127.0.0.1 --port 4000 -u root
  5. http://127.0.0.1:9090で TiDB の Prometheus ダッシュボードにアクセスします。

  6. TiDB ダッシュボードhttp://127.0.0.1:2379/ダッシュボードにアクセスします。デフォルトのユーザー名はrootで、パスワードは空です。

  7. http://127.0.0.1:3000から TiDB の Grafana ダッシュボードにアクセスします。デフォルトのユーザー名とパスワードはどちらもadminです。

  8. (オプション) 分析用にデータを TiFlash にロードする

  9. テスト デプロイ後にクラスターをクリーンアップします。

    1. Control+Cを押して、上記の TiDB サービスを停止します。
    2. サービスが停止したら、次のコマンドを実行します。

      tiup clean --all

ノート:

TiUP Playground はデフォルトで127.0.0.1をリッスンし、サービスはローカルでのみアクセス可能です。サービスを外部からアクセスできるようにする場合は、 --hostパラメータを使用してリッスン アドレスを指定し、ネットワーク インターフェイス カード (NIC) を外部からアクセス可能な IP アドレスにバインドします。

分散システムとして、基本的な TiDB テスト クラスターは通常、2 つの TiDB インスタンス、3 つの TiKV インスタンス、3 つの PD インスタンス、およびオプションの TiFlash インスタンスで構成されます。 TiUP Playground を使用すると、次の手順を実行して、テスト クラスターをすばやく構築できます。

  1. TiUP をダウンロードしてインストールします。

    curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh

    次のメッセージが表示されたら、TiUP は正常にインストールされています。

    Successfully set mirror to https://tiup-mirrors.pingcap.com Detected shell: zsh Shell profile: /Users/user/.zshrc /Users/user/.zshrc has been modified to add tiup to PATH open a new terminal or source /Users/user/.zshrc to use it Installed path: /Users/user/.tiup/bin/tiup =============================================== Have a try: tiup playground ===============================================

    上記の出力のシェル プロファイル パスに注意してください。次のステップでパスを使用する必要があります。

  2. グローバル環境変数を宣言します。

    ノート:

    インストール後、TiUP は対応するシェル プロファイル ファイルの絶対パスを表示します。パスに応じて、次のsourceのコマンドの${your_shell_profile}を変更する必要があります。

    source ${your_shell_profile}
  3. 現在のセッションでクラスターを開始します。

    • 1 つの TiDB インスタンス、1 つの TiKV インスタンス、1 つの PD インスタンス、および 1 つの TiFlash インスタンスで最新バージョンの TiDB クラスターを開始する場合は、次のコマンドを実行します。

      tiup playground
    • TiDB のバージョンと各コンポーネントのインスタンス数を指定する場合は、次のようなコマンドを実行します。

      tiup playground v6.2.0 --db 2 --pd 3 --kv 3

      このコマンドは、v6.2.0 などのバージョン クラスターをローカル マシンにダウンロードして起動します。最新バージョンを表示するには、 tiup list tidbを実行します。

      このコマンドは、クラスターのアクセス方法を返します。

      CLUSTER START SUCCESSFULLY, Enjoy it ^-^ To connect TiDB: mysql --host 127.0.0.1 --port 4000 -u root -p (no password) --comments To view the dashboard: http://127.0.0.1:2379/dashboard PD client endpoints: [127.0.0.1:2379] To view the Prometheus: http://127.0.0.1:9090 To view the Grafana: http://127.0.0.1:3000

      ノート:

      このように運用されているプレイグラウンドの場合、テスト デプロイが終了した後、TiUP は元のクラスター データをクリーンアップします。コマンドを再実行すると、新しいクラスターが取得されます。データをストレージに保持する場合は、 tiup --tag <your-tag> playground ...を実行します。詳細はTiUPリファレンスガイドを参照してください。

  4. TiDB にアクセスするための新しいセッションを開始します。

    • TiUP クライアントを使用して TiDB に接続します。

      tiup client
    • MySQL クライアントを使用して TiDB に接続することもできます。

      mysql --host 127.0.0.1 --port 4000 -u root
  5. http://127.0.0.1:9090で TiDB の Prometheus ダッシュボードにアクセスします。

  6. TiDB ダッシュボードhttp://127.0.0.1:2379/ダッシュボードにアクセスします。デフォルトのユーザー名はrootで、パスワードは空です。

  7. http://127.0.0.1:3000から TiDB の Grafana ダッシュボードにアクセスします。デフォルトのユーザー名とパスワードはどちらもadminです。

  8. (オプション) 分析用にデータを TiFlash にロードする

  9. テスト デプロイ後にクラスターをクリーンアップします。

    1. Control+Cを押してプロセスを停止します。
    2. サービスが停止したら、次のコマンドを実行します。

      tiup clean --all

ノート:

TiUP Playground はデフォルトで127.0.0.1をリッスンし、サービスはローカルでのみアクセス可能です。サービスを外部からアクセスできるようにする場合は、 --hostパラメータを使用してリッスン アドレスを指定し、ネットワーク インターフェイス カード (NIC) を外部からアクセス可能な IP アドレスにバインドします。

1 台のマシンで本番環境のデプロイをシミュレートする

  • シナリオ: 完全なトポロジーを備えた最小の TiDB クラスターを体験し、単一の Linuxサーバーで運用環境の展開手順をシミュレートします。

このセクションでは、TiUP で最小のトポロジの YAML ファイルを使用して TiDB クラスターをデプロイする方法について説明します。

準備

次の要件を満たすターゲット マシンを準備します。

  • CentOS 7.3 以降のバージョンがインストールされている
  • Linux OS はインターネットにアクセスできます。これは、TiDB および関連するソフトウェア インストール パッケージをダウンロードするために必要です。

最小の TiDB クラスター トポロジは次のとおりです。

ノート:

次のインスタンスの IP アドレスは、IP の例としてのみ機能します。実際の展開では、IP を実際の IP に置き換える必要があります。

実例カウント知財Configuration / コンフィグレーション
TiKV310.0.1.1
10.0.1.1
10.0.1.1
ポートとディレクトリの競合を避ける
TiDB110.0.1.1デフォルトのポート
グローバル ディレクトリの構成
PD110.0.1.1デフォルトのポート
グローバル ディレクトリの構成
ティフラッシュ110.0.1.1デフォルトのポート
グローバル ディレクトリの構成
モニター110.0.1.1デフォルトのポート
グローバル ディレクトリの構成

ターゲット マシンのその他の要件:

  • rootユーザーとそのパスワードが必要です

  • ターゲット マシンのファイアウォール サービスを停止します 、または TiDB クラスターノードが必要とするポートを開く

  • 現在、TiUP クラスターは、x86_64 (AMD64) および ARM アーキテクチャーでの TiDB のデプロイをサポートしています。

    • AMD64 では CentOS 7.3 以降のバージョンを使用することをお勧めします
    • ARM では CentOS 7.6 1810 を使用することをお勧めします

デプロイ

ノート:

通常のユーザーまたはrootユーザーとしてターゲット マシンにログインできます。次の手順では、例としてrootのユーザーを使用します。

  1. TiUP をダウンロードしてインストールします。

    curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh
  2. グローバル環境変数を宣言します。

    ノート:

    インストール後、TiUP は対応するシェル プロファイル ファイルの絶対パスを表示します。パスに応じて、次のsourceのコマンドの${your_shell_profile}を変更する必要があります。

    source ${your_shell_profile}
  3. TiUP のクラスター コンポーネントをインストールします。

    tiup cluster
  4. TiUP クラスターが既にマシンにインストールされている場合は、ソフトウェア バージョンを更新します。

    tiup update --self && tiup update cluster
  5. sshdサービスの接続制限を増やすには、root ユーザー権限を使用します。これは、TiUP が複数のマシンで展開をシミュレートする必要があるためです。

    1. /etc/ssh/sshd_configを変更し、 MaxSessions20に設定します。

    2. sshdのサービスを再起動します。

      service sshd restart
  6. クラスターを作成して開始します。

    次のテンプレートに従って構成ファイルを編集し、 topo.yamlという名前を付けます。

    # # Global variables are applied to all deployments and used as the default value of # # the deployments if a specific deployment value is missing. global: user: "tidb" ssh_port: 22 deploy_dir: "/tidb-deploy" data_dir: "/tidb-data" # # Monitored variables are applied to all the machines. monitored: node_exporter_port: 9100 blackbox_exporter_port: 9115 server_configs: tidb: log.slow-threshold: 300 tikv: readpool.storage.use-unified-pool: false readpool.coprocessor.use-unified-pool: true pd: replication.enable-placement-rules: true replication.location-labels: ["host"] tiflash: logger.level: "info" pd_servers: - host: 10.0.1.1 tidb_servers: - host: 10.0.1.1 tikv_servers: - host: 10.0.1.1 port: 20160 status_port: 20180 config: server.labels: { host: "logic-host-1" } - host: 10.0.1.1 port: 20161 status_port: 20181 config: server.labels: { host: "logic-host-2" } - host: 10.0.1.1 port: 20162 status_port: 20182 config: server.labels: { host: "logic-host-3" } tiflash_servers: - host: 10.0.1.1 monitoring_servers: - host: 10.0.1.1 grafana_servers: - host: 10.0.1.1
    • user: "tidb" : tidbシステム ユーザー (デプロイ時に自動的に作成される) を使用して、クラスターの内部管理を実行します。デフォルトでは、ポート 22 を使用して SSH 経由でターゲット マシンにログインします。
    • replication.enable-placement-rules : この PD パラメータは、TiFlash が正常に動作するように設定されています。
    • host : ターゲット マシンの IP。
  7. クラスタ デプロイ コマンドを実行します。

    tiup cluster deploy <cluster-name> <tidb-version> ./topo.yaml --user root -p
    • <cluster-name> : クラスター名を設定します

    • <tidb-version> : TiDB クラスターのバージョンを設定します。 tiup list tidbコマンドを実行すると、サポートされている TiDB のすべてのバージョンを確認できます。

    • -p : ターゲット マシンへの接続に使用するパスワードを指定します。

      ノート:

      秘密鍵を使用する場合は、 -iで鍵のパスを指定できます。 -i-pを同時に使用しないでください。

    「y」とroot人のユーザーのパスワードを入力して、デプロイを完了します。

    Do you want to continue? [y/N]: y Input SSH password:
  8. クラスターを開始します。

    tiup cluster start <cluster-name>
  9. クラスターにアクセスします。

    • MySQL クライアントをインストールします。すでにインストールされている場合は、この手順をスキップしてください。

      yum -y install mysql
    • TiDB にアクセスします。パスワードが空です:

      mysql -h 10.0.1.1 -P 4000 -u root
    • http://{grafana-ip}:3000で Grafana 監視ダッシュボードにアクセスします。デフォルトのユーザー名とパスワードは両方ともadminです。

    • TiDB ダッシュボードhttp://{pd-ip}:2379/ダッシュボードにアクセスします。デフォルトのユーザー名はrootで、パスワードは空です。

    • 現在デプロイされているクラスターのリストを表示するには:

      tiup cluster list
    • クラスタのトポロジとステータスを表示するには:

      tiup cluster display <cluster-name>

次は何ですか