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

BRを使用してAzureBlobStorageのデータをバックアップおよび復元する

Backup&Restore(BR)ツールは、データをバックアップおよび復元するための外部ストレージとしてAzureBlobStorageを使用することをサポートしています。

ユーザーシナリオ

Azure仮想マシンは、大規模なデータをAzureBlobStorageにすばやく保存できます。 Azure仮想マシンを使用してクラスタをデプロイしている場合は、AzureBlobStorageにデータをバックアップできます。

使用法

BRを使用すると、次の2つの方法で、AzureBlobStorage上のデータをバックアップおよび復元できます。

  • Azure AD(Azure Active Directory)を使用してデータをバックアップおよび復元する
  • アクセスキーを使用してデータをバックアップおよび復元する

一般的に、コマンドラインで重要な情報( account-keyなど)が公開されないようにするには、AzureADを使用することをお勧めします。

以下は、前述の2つの方法を使用したAzureBlobStorageでのバックアップと復元の操作の例です。操作の目的は次のとおりです。

  • バックアップ:Azure Blob Storageのパスプレフィックスとしてt1を使用して、 testのデータベースをcontainer=testのコンテナー内のスペースにバックアップします。
  • 復元:AzureBlobStorageのパスプレフィックスとしてt1を使用するcontainer=testコンテナー内のスペースからtestデータベースへのデータを復元します。

ノート:

AzureADまたはアクセスキーを使用してAzureBlobStorageにデータをバックアップする場合は、 send-credentials-to-tikv = true (デフォルトではtrue )を設定する必要があります。そうしないと、バックアップタスクが失敗します。

このセクションでは、AzureADを使用してデータをバックアップおよび復元する方法について説明します。バックアップまたは復元を実行する前に、環境変数を構成する必要があります。

環境変数を構成する

BRおよびTiKVの動作環境で、環境変数$AZURE_CLIENT_ID 、および$AZURE_TENANT_IDを構成し$AZURE_CLIENT_SECRET

  • TiUPを使用してクラスタを開始すると、TiKVは「systemd」サービスを使用します。次の例では、前述の3つの環境変数をTiKVのパラメーターとして構成する方法を紹介します。

    ノート:

    手順3でTiKVを再起動する必要があります。TiKVを再起動できない場合は、 方法2を使用してデータをバックアップおよび復元します。

    1. このノードのTiKVポートが24000であると仮定します。つまり、「systemd」サービスの名前は「tikv-24000」です。

      systemctl edit tikv-24000
      
    2. 環境変数情報を入力します。

      [Service]
      Environment="AZURE_CLIENT_ID=aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa"
      Environment="AZURE_TENANT_ID=aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa"
      Environment="AZURE_CLIENT_SECRET=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
      
    3. 構成を再ロードし、TiKVを再起動します。

      systemctl daemon-reload
      systemctl restart tikv-24000
      
  • コマンドラインで開始するTiKVおよびBRの$AZURE_CLIENT_SECRET $AZURE_CLIENT_ID $AZURE_TENANT_ID環境で構成されているかどうかを確認するだけです。

    echo $AZURE_CLIENT_ID
    echo $AZURE_TENANT_ID
    echo $AZURE_CLIENT_SECRET
    

環境変数の詳細については、 AzblobURLパラメーターを参照してください。

バックアップ

このセクションでは、データをcool tierにバックアップする方法を示します。つまり、アップロードされたオブジェクトのアクセス層はCoolです。 account-nameaccess-tierは2つの方法で指定できます。バックアップ操作は、選択した方法によって異なります。

  • URLのパラメーターとしてaccount-nameaccess-tierを指定します。

    tiup br backup db --db test -u 127.0.0.1:2379 -s 'azure://test/t1?account-name=devstoreaccount1&access-tier=Cool'
    

    access-tierが設定されていない(値が空の)場合、値はデフォルトでHotです。

  • コマンドラインパラメータとしてaccount-nameaccess-tierを指定します。

    tiup br backup db --db test -u 127.0.0.1:2379 -s 'azure://test/t1?' --azblob.account-name=devstoreaccount1 --azblob.access-tier=Cool
    

戻す

バックアップaccount-nameを指定する方法と同様に、URLまたはコマンドラインパラメータを使用してデータを復元できます。

  • URLのパラメーターとしてaccount-nameを指定します。

    tiup br restore db --db test -u 127.0.0.1:2379 -s 'azure://test/t1?account-name=devstoreaccount1'
    
  • コマンドラインパラメータとしてaccount-nameを指定します。

    tiup br restore db --db test -u 127.0.0.1:2379 -s 'azure://test/t1?' --azblob.account-name=devstoreaccount1
    

方法2:アクセスキーを使用してバックアップおよび復元する(簡単)

Azure ADを使用したデータのバックアップと復元に比べて、環境変数を構成する必要がないため、アクセスキーを使用したバックアップと復元が簡単です。その他の手順は、AzureADを使用する手順と同様です。

バックアップ

  • URLのパラメーターとしてaccount-name 、およびaccount-keyを指定しaccess-tier

    tiup br backup db --db test -u 127.0.0.1:2379 -s 'azure://test/t1?account-name=devstoreaccount1&account-key=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==&access-tier=Cool'
    
  • コマンドラインパラメータとしてaccount-name 、およびaccount-keyを指定しaccess-tier

    tiup br backup db --db test -u 127.0.0.1:2379 -s 'azure://test/t1?' --azblob.account-name=devstoreaccount1 --azblob.account-key=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw== --azblob.access-tier=Cool
    

戻す

  • URLのパラメーターとしてaccount-nameaccount-keyを指定します。

    tiup br restore db --db test -u 127.0.0.1:2379 -s 'azure://test/t1?account-name=devstoreaccount1&account-key=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw=='
    
  • コマンドラインパラメータとしてaccount-nameaccount-keyを指定します。

    tiup br restore db --db test -u 127.0.0.1:2379 -s 'azure://test/t1?' --azblob.account-name=devstoreaccount1 --azblob.account-key=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==
    

互換性

この機能は、v5.4.0以降のバージョンとのみ互換性があります。

も参照してください