重要
このページは英語版のページを機械翻訳しています。原文はこちらからご覧ください。

TiUPを使用してDMクラスターをオフラインでデプロイする

このドキュメントでは、TiUPを使用してDMクラスタをオフラインで展開する方法について説明します。

ステップ1:TiUPオフラインコンポーネントパッケージを準備する

  • TiUPパッケージマネージャーをオンラインでインストールします。

    1. TiUPツールをインストールします。

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

      source .bash_profile
      
    3. TiUPがインストールされているかどうかを確認します。

      which tiup
      
  • TiUPを使用してミラーを引っ張る

    1. インターネットにアクセスできるマシンで必要なコンポーネントをプルします。

      # You can modify ${version} to the needed version.
      tiup mirror clone tidb-dm-${version}-linux-amd64 --os=linux --arch=amd64 \
          --dm-master=${version} --dm-worker=${version} --dmctl=${version} \
          --alertmanager=v0.17.0 --grafana=v4.0.3 --prometheus=v4.0.3 \
          --tiup=v$(tiup --version|grep 'tiup'|awk -F ' ' '{print $1}') --dm=v$(tiup --version|grep 'tiup'|awk -F ' ' '{print $1}')
      

      上記のコマンドは、現在のディレクトリにtidb-dm-${version}-linux-amd64という名前のディレクトリを作成します。このディレクトリには、TiUPによって管理されるコンポーネントパッケージが含まれています。

    2. tarコマンドを使用してコンポーネントパッケージをパックし、隔離された環境の制御マシンにパッケージを送信します。

      tar czvf tidb-dm-${version}-linux-amd64.tar.gz tidb-dm-${version}-linux-amd64
      

      tidb-dm-${version}-linux-amd64.tar.gzは独立したオフライン環境パッケージです。

ステップ2:オフラインTiUPコンポーネントをデプロイ

パッケージをターゲットクラスタの制御マシンに送信した後、次のコマンドを実行してTiUPコンポーネントをインストールします。

# You can modify ${version} to the needed version.
tar xzvf tidb-dm-${version}-linux-amd64.tar.gz
sh tidb-dm-${version}-linux-amd64/local_install.sh
source /home/tidb/.bash_profile

local_install.shスクリプトは、自動的にtiup mirror set tidb-dm-${version}-linux-amd64コマンドを実行して、現在のミラーアドレスをtidb-dm-${version}-linux-amd64に設定します。

ミラーを別のディレクトリに切り替えるには、 tiup mirror set <mirror-dir>コマンドを手動で実行します。公式ミラーに戻す場合は、 tiup mirror set https://tiup-mirrors.pingcap.comを実行します。

ステップ3:初期化構成ファイルを編集する

さまざまなクラスタトポロジに従って、クラスタ初期化構成ファイルを編集する必要があります。

完全な構成テンプレートについては、 TiUP構成パラメーターテンプレートを参照してください。構成ファイルを作成しますtopology.yaml 。他の組み合わせシナリオでは、テンプレートに従って必要に応じて構成ファイルを編集します。

3つのDMマスター、3つのDMワーカー、および1つの監視コンポーネントインスタンスをデプロイする構成は次のとおりです。

---
global:
  user: "tidb"
  ssh_port: 22
  deploy_dir: "/home/tidb/dm/deploy"
  data_dir: "/home/tidb/dm/data"
  # arch: "amd64"

master_servers:
  - host: 172.19.0.101
  - host: 172.19.0.102
  - host: 172.19.0.103

worker_servers:
  - host: 172.19.0.101
  - host: 172.19.0.102
  - host: 172.19.0.103

monitoring_servers:
  - host: 172.19.0.101

grafana_servers:
  - host: 172.19.0.101

alertmanager_servers:
  - host: 172.19.0.101

ノート:

  • DMクラスタの高可用性を確保する必要がない場合は、DMマスターノードを1つだけデプロイし、デプロイされるDMワーカーノードの数は、移行するアップストリームMySQL/MariaDBインスタンスの数以上である必要があります。

  • DMクラスタの高可用性を確保するには、3つのDM-masterノードをデプロイすることをお勧めします。デプロイされるDM-workerノードの数は、移行するアップストリームのMySQL / MariaDBインスタンスの数(たとえば、 DMワーカーノードの数は、アップストリームインスタンスの数より2つ多くなります)。

  • グローバルに有効である必要があるパラメーターについては、構成ファイルのserver_configsセクションで対応するコンポーネントのこれらのパラメーターを構成します。

  • 特定のノードで有効になるはずのパラメーターについては、このノードのconfigつでこれらのパラメーターを構成します。

  • .を使用して、 log.slow-thresholdなどの構成のサブカテゴリを示します。その他の形式については、 TiUP構成テンプレートを参照してください。

  • パラメータの詳細については、 マスターconfig.toml.exampleおよびワーカーconfig.toml.exampleを参照してください。

  • 次のコンポーネント間のポートが相互接続されていることを確認してください。

    • DMマスターノード間のpeer_port (デフォルトでは8291 )は相互接続されています。
    • 各DMマスターノードは、すべてのDMワーカーノードのportつ(デフォルトでは8262 )に接続できます。
    • 各DM-workerノードは、すべてのDM-masterノードのportつ(デフォルトでは8261 )に接続できます。
    • TiUPノードは、すべてのDMマスターノードのportつ(デフォルトでは8261 )に接続できます。
    • TiUPノードは、すべてのDMワーカーノードのportつ(デフォルトでは8262 )に接続できます。

手順4:展開コマンドを実行する

ノート:

TiUPを使用してDMを展開する場合、セキュリティ認証に秘密鍵または対話型パスワードを使用できます。

  • 秘密鍵を使用する場合は、 -iまたは--identity_fileを介して鍵のパスを指定できます。
  • パスワードを使用する場合は、 -pフラグを追加して、パスワード操作ウィンドウに入ります。
  • ターゲットマシンへのパスワードなしのログインが設定されている場合、認証は必要ありません。
tiup dm deploy dm-test ${version} ./topology.yaml --user root [-p] [-i /home/root/.ssh/gcp_rsa]

上記のコマンドでは:

  • デプロイされたDMクラスタの名前はdm-testです。
  • DMクラスタのバージョンは${version}です。 tiup list dm-masterを実行すると、TiUPでサポートされている最新バージョンを表示できます。
  • 初期化設定ファイルはtopology.yamlです。
  • --user rootrootキーを使用してターゲットマシンにログインしてクラスタの展開を完了するか、 sshおよびsudoの特権を持つ他のユーザーを使用して展開を完了することができます。
  • [-i]および[-p] :オプション。パスワードなしでターゲットマシンへのログインを構成した場合、これらのパラメーターは必要ありません。そうでない場合は、2つのパラメーターのいずれかを選択します。 [-i]は、ターゲットマシンにアクセスできるrootのユーザー(または--userで指定された他のユーザー)の秘密鍵です。 [-p]は、ユーザーパスワードをインタラクティブに入力するために使用されます。
  • TiUP DMは、組み込みSSHクライアントを使用します。制御マシンシステムにネイティブなSSHクライアントを使用する場合は、 システムのネイティブSSHクライアントを使用してクラスタに接続するに従って構成を編集します。

出力ログの最後に、 Deployed cluster `dm-test` successfullyが表示されます。これは、展開が成功したことを示します。

ステップ5:TiUPによって管理されているクラスターを確認します

tiup dm list

TiUPは、複数のDMクラスターの管理をサポートしています。上記のコマンドは、名前、展開ユーザー、バージョン、秘密鍵情報など、現在TiUPによって管理されているすべてのクラスターの情報を出力します。

Name  User  Version  Path                                  PrivateKey
----  ----  -------  ----                                  ----------
dm-test  tidb  ${version}  /root/.tiup/storage/dm/clusters/dm-test  /root/.tiup/storage/dm/clusters/dm-test/ssh/id_rsa

手順6:デプロイされたDMクラスタのステータスを確認する

dm-testのクラスタのステータスを確認するには、次のコマンドを実行します。

tiup dm display dm-test

期待される出力には、インスタンスID、ロール、ホスト、リスニングポート、ステータス(クラスタがまだ開始されていないため、ステータスはDown )、およびinactiveクラスタのディレクトリ情報が含まれdm-test

ステップ7:クラスタを開始します

tiup dm start dm-test

出力ログにStarted cluster `dm-test` successfullyが含まれている場合、開始は成功しています。

手順8:クラスタの実行ステータスを確認する

TiUPを使用してDMクラスタのステータスを確認します。

tiup dm display dm-test

出力でStatusUpの場合、クラスタのステータスは正常です。