チュートリアル:REST API を使用して Azure Data Box BLOB ストレージにデータをコピーする

重要

Azure Data Box では、BLOB レベルでのアクセス層の割り当てがサポートされるようになりました。 このチュートリアルで扱うステップは、更新されたデータ コピー プロセスを反映したもので、ブロック BLOB に特化したものとなっています。

ブロック BLOB データの適切なアクセス層を決定する方法については、「ブロック BLOB の適切なアクセス層を決定する」セクションを参照してください。 「データを Data Box にコピーする」セクションに記載されているステップに沿って、データを適切なアクセス層にコピーします。

このセクションに含まれる情報は、2024 年 4 月 1 日以降に発注された注文に適用されます。

注意事項

この記事では、間もなくサポート終了 (EOL) 状態になる Linux ディストリビューションである CentOS について説明します。 適宜、使用と計画を検討してください。 詳細については、「CentOS のサポート終了に関するガイダンス」を参照してください。

このチュートリアルでは、http または https を使用して REST API 経由で Azure Data Box BLOB ストレージに接続する手順について説明します。 接続後、Data Box BLOB ストレージにデータをコピーして Data Box の発送を準備するために必要な手順についても説明します。

このチュートリアルでは、以下の内容を学習します。

  • 前提条件
  • http 経由または https 経由で Data Box BLOB ストレージに接続する
  • Data Box にデータをコピーする

前提条件

開始する前に次の点を確認します。

  1. Azure Data Box の設定に関するチュートリアルを完了していること。
  2. Data Box を受け取り済みで、ポータル内の注文の状態が [発送済み] であること。
  3. Data Box BLOB ストレージのシステム要件を確認済みであり、API、SDK、ツールのサポートされているバージョンに習熟していること。
  4. Data Box にコピーしたい対象データを保存しているホスト コンピューターにアクセスできること。 このホスト コンピューターは次の条件を満たしている必要があります。
    • サポート対象のオペレーティング システムが実行されていること。
    • 高速ネットワークに接続していること。 10 GbE 接続を少なくとも 1 つ利用することを強くお勧めします。 10 GbE 接続を利用できない場合は、1 GbE データ リンクを使用できますが、コピーの速度が影響を受けます。
  5. お客様のホスト コンピューターに AzCopy V10 をダウンロードする。 AzCopy はホスト コンピューターから Azure Data Box BLOB ストレージにデータをコピーするのに使用します。

http または https 経由で接続する

Data Box BLOB ストレージには http または https を使用して接続できます。

  • Data Box BLOB ストレージへの接続に推奨される安全な方法は https です。
  • http は、信頼されたネットワーク経由で接続するときに使用します。

Data Box BLOB ストレージに接続するための手順は、http 経由の場合と https 経由の場合とで異なります。

http 経由で接続する

http 経由の Data Box BLOB ストレージ REST API への接続では、以下の手順が必要になります。

  • デバイス IP と BLOB サービス エンドポイントをリモート ホストに追加する
  • パートナー ソフトウェアを構成し、接続を確認する

以下のセクションでは、これらの各手順について説明します。

デバイス IP アドレスと Blob service エンドポイントを追加する

  1. Data Box デバイスにサインインします。 ロックが解除されていることを確認してください。

    デバイスが [ロック解除] として表示されたダッシュボード示すスクリーンショット。

  2. [ネットワーク インターフェイスの設定] に移動します。 クライアントへの接続に使用するネットワーク インターフェイスのデバイスの IP アドレスをメモします。

    I P アドレスを確認できる [ネットワーク設定] を示すスクリーンショット。

  3. [接続とコピー] に移動し、 [REST] をクリックします。

    アクセス設定として [REST] を選択できる [接続とコピー] ペインを示すスクリーンショット。

  4. [ストレージ アカウントへのアクセスとデータのアップロード] ダイアログから [Blob service エンドポイント] をコピーします。

    [Blob service エンドポイント] をコピーできる [ストレージ アカウントへのアクセスとデータのアップロード] ダイアログ ボックスを示すスクリーンショット。

  5. メモ帳を管理者として起動し、C:\Windows\System32\Drivers\etc にある hosts ファイルを開きます。

  6. hosts ファイルに <device IP address> <Blob service endpoint> というエントリを追加します。

  7. 次の図を参考にしてください。 hosts ファイルを保存します。

    I P アドレスと Blob service エンドポイントが追加されたメモ帳ドキュメントを示すスクリーンショット。

接続を確認し、パートナー ソフトウェアを構成する

クライアントに接続するためのパートナー ソフトウェアを構成します。 パートナー ソフトウェアに接続するためには、通常、前の手順のローカル Web UI にある [接続とコピー] ページから収集した下記の情報 (異なる場合もあります) が必要になります。

  • ストレージ アカウント名
  • アクセス キー
  • Blob service endpoint

正常に接続が確立されたことを確認するために、Storage Explorer を使用して外部のストレージ アカウントにアタッチします。 Storage Explorer をお持ちでない場合は、ダウンロードしてインストールする必要があります。

Storage Explorer を初めて使用するときは、次の手順を行う必要があります。

  1. 一番上のコマンド バーから [編集] > [Azure Stack を対象にする] に移動します。

    [編集] メニューの [Target Azure Stack]\(Azure Stack を対象にする\) が選択されていることを示すスクリーンショット。

  2. Storage Explorer を再起動して、変更を反映させます。

    [今すぐ再起動] ボタンを示すスクリーンショット。

次の手順に従ってストレージ アカウントに接続し、その接続を確認します。

  1. Storage Explorer で、 [Azure Storage へ接続] ダイアログを開きます。 [Azure Storage へ接続] ダイアログで、 [Use a storage account name and key](ストレージ アカウント名とキーを使用) を選択します。

    [ストレージ アカウント名とキーを使用する] が選択された [Azure Storage へ接続] ダイアログ ボックスを示すスクリーンショット。

  2. 自分のアカウント名アカウント キー (ローカル Web UI の [接続とコピー] ページのキー 1 の値) を貼り付けます。 ストレージ エンドポイント ドメインに [Other (enter below)](その他 (以下に入力)) を選択し、Blob service エンドポイントを指定します (下図)。 [HTTP を使用する] オプションは、http で転送する場合にのみオンにします。 https を使用する場合は、このオプションをオフのままにしてください。 [次へ] を選択します。

    値が入力された [名前とキーを使用して接続する] ダイアログ ボックスを示すスクリーンショット。

  3. [接続の概要] ダイアログで、指定した情報を確認します。 [接続] を選択します。

    [接続] が選択された [接続の概要] ダイアログ ボックスを示すスクリーンショット。

  4. 正常に追加されたアカウントが、名前の後に "External, Other (外部、その他)" を伴って Storage Explorer に表示されます。 [BLOB コンテナー] をクリックすると、コンテナーが表示されます。

    [BLOB コンテナー] が選択された Explorer メニューを示すスクリーンショット。

https 経由で接続する

https 経由の Azure Blob Storage REST API への接続では、以下の手順が必要になります。

  • Azure portal から証明書をダウンロードします。 この証明書は、Web UI と Azure Blob Storage REST API への接続に使用します。
  • クライアントまたはリモート ホストで証明書をインポートする。
  • デバイス IP と BLOB サービス エンドポイントをクライアントまたはリモート ホストに追加する。
  • パートナー ソフトウェアを構成し、接続を確認する。

以下のセクションでは、これらの各手順について説明します。

[証明書のダウンロード]

Azure portal を使用して証明書をダウンロードします。

  1. Azure portal にサインインします。

  2. お客様の Data Box の注文に移動し、[全般] > [デバイスの詳細] の順に移動します。

  3. [デバイスの資格情報][デバイスの API アクセス] に移動します。 [Download] を選択します。 この操作によって、<注文名>.cer 証明書ファイルがダウンロードされます。 このファイルを保存し、デバイスへの接続に使用するクライアントまたはリモート ホストにインストールします。

    Azure portal での証明書のダウンロード

証明書のインポート

HTTPS 経由で Data Box BLOB ストレージにアクセスするには、デバイスの TLS/SSL 証明書が必要です。 この証明書をクライアント アプリケーションで利用できるようにする方法は、アプリケーション、オペレーティング システム、およびディストリビューションによって異なります。 システムの証明書ストアにインポートされた証明書にアクセスできるアプリケーションもあれば、そのメカニズムを利用しないアプリケーションもあります。

このセクションでは、いくつかのアプリケーションに固有の情報を説明しています。 他のアプリケーションの詳細については、使用しているアプリケーションとオペレーティング システムのドキュメントを参照してください。

次の手順に従って、.cer ファイルを Windows または Linux クライアントのルート ストアにインポートします。 Windows システムでは、Windows PowerShell または Windows Server UI を使用して、証明書をシステムにインポートしてインストールできます。

Windows PowerShell の使用

  1. Windows PowerShell セッションを管理者として開始します。

  2. コマンド プロンプトに、次のコマンドを入力します。

    Import-Certificate -FilePath C:\temp\localuihttps.cer -CertStoreLocation Cert:\LocalMachine\Root
    

Windows Server UI を使用する

  1. .cer ファイルを右クリックし、 [証明書のインストール] を選択します。 このアクションにより、証明書のインポート ウィザードが開始されます。

  2. [ストアの場所][ローカル マシン] を選択し、[次へ] を選択します。

    証明書インポート ウィザード、Windows Server

  3. [証明書をすべて次のストアに配置する] を選択し、[参照] を選択します。 リモート ホストのルート ストアに移動し、[次へ]を選択します。

    証明書インポート ウィザード、証明書ストア

  4. 完了 を選択します。 インポートが成功したことを通知するメッセージが表示されます。

    証明書インポート ウィザード、インポートの完了

Linux システムを使用する

証明書をインポートする方法は、ディストリビューションによって異なります。

Ubuntu や Debian などのいくつかのディストリビューションでは、update-ca-certificates コマンドを使用します。

  • Base64 エンコードの証明書ファイルの名前を変更して拡張子 .crt を付け、それを /usr/local/share/ca-certificates directory にコピーします。
  • コマンド update-ca-certificates を実行します。

RHEL、Fedora、および CentOS の最近のバージョンでは、update-ca-trust コマンドを使用します。

  • 証明書ファイルを /etc/pki/ca-trust/source/anchors ディレクトリにコピーします。
  • update-ca-trust を実行します。

詳細については、お使いのディストリビューションに固有のドキュメントを参照してください。

デバイス IP アドレスと Blob service エンドポイントを追加する

http 経由での接続時のデバイスの IP アドレスと Blob service エンドポイントの追加手順と同じ手順に従います。

パートナー ソフトウェアを構成し、接続を確認する

http 経由での接続時に使用したパートナー ソフトウェアの構成手順に従います。 唯一の違いは、http を使用するオプションをオフにしておく必要があることです。

ブロック BLOB の適切なアクセス層を決定する

重要

このセクションに含まれる情報は、2024 年 4 月 1 日以降に発注された注文に適用されます。

Azure Storage では、同じストレージ アカウント内の複数のアクセス層にブロック BLOB データを保存できます。 この機能を使用すると、データにアクセスする頻度に基づいて、データをより効率的に整理して保存できます。 次の表には、Azure Storage のアクセス層に関する情報と推奨事項を記載しています。

レベル 推奨事項 ベスト プラクティス
ホット 頻繁にアクセスまたは変更されるオンライン データに適しています。 この層はストレージ コストが最も高く、アクセス コストは最も安くなります。 この層のデータは、定期的かつアクティブに使用する必要があります。
クール 頻繁なアクセスや変更を行わないオンライン データの場合に適している。 この層はホット アクセス層よりもストレージ コストは安く、アクセス コストは高くなる。 この層のデータは、30 日間以上保存する必要がある。
コールド アクセスや変更は頻繁に行わない一方で、迅速な取得を必要とするオンライン データに適しています。 この層はクール層よりもストレージ コストは安く、アクセス コストは高くなる。 この層のデータは、90 日間以上保存する必要がある。
アーカイブ ほとんどアクセスされないオフライン データで、待機時間の要件が低い場合に適しています。 この層のデータは、180 日間以上保存する必要がある。 180 日以内にアーカイブ ストレージ層から削除されたデータは、早期削除料金の対象になります。

BLOB アクセス層の詳細については、「BLOB データのアクセス層」を参照してください。 より詳細なベスト プラクティスについては、「BLOB アクセス層を使用するためのベスト プラクティス」を参照してください。

Data Box 内の対応するフォルダーにコピーすることで、ブロック BLOB データを適切なアクセス層に転送できます。 このプロセスについては、「Azure Data Box にデータをコピーする」セクションで詳しく説明します。

Data Box にデータをコピーする

1 つ以上の Data Box 共有に接続したら、次のステップはデータをコピーすることです。 データのコピーを開始する前に、次の制限事項を確認してください。

  • データのコピー中は、そのサイズが Azure Storage と Data Box の制限に関するページに記載されたサイズ制限に準拠していることを確認してください。
  • Data Box と Data Box 以外の別のアプリケーションを同時にアップロードした場合、アップロード ジョブの失敗やデータの破損が起きる可能性があります。

重要

データが Azure Storage にコピーされたことを確認するまでは、ソース データのコピーを保持するようにしてください。

このチュートリアルでは、Data Box BLOB ストレージにデータをコピーするために AzCopy が使用されます。 GUI ベースのツールを使用したい場合は、Azure Storage Explorer や 他のパートナー ソフトウェアを使用してデータをコピーすることもできます。

コピーの手順は次のとおりです。

  • コンテナーを作成する
  • フォルダーの内容を Data Box BLOB ストレージにアップロードする
  • 変更されたファイルを Data Box BLOB ストレージにアップロードする

以下のセクションでは、これらの各手順について詳しく説明します。

コンテナーを作成する

BLOB は常にコンテナーにアップロードされるため、最初の手順はコンテナーを作成することです。 コンテナーを使用すると、お客様のコンピューター上のフォルダーにファイルを整理するように、BLOB のグループを整理できます。 BLOB コンテナーを作成するには、以下の手順に従います。

  1. Storage Explorer を開きます。

  2. 左側のウィンドウで、BLOB コンテナーを作成するストレージ アカウントを展開します。

  3. [BLOB コンテナー] を右クリックし、コンテキスト メニューの [BLOB コンテナーの作成] を選択します。

    [BLOB コンテナー] のコンテキスト メニュー、[BLOB コンテナーの作成]

  4. [BLOB コンテナー] フォルダーの下にテキスト ボックスが表示されます。 BLOB コンテナーの名前を入力します。 BLOB コンテナーの名前付けに関する規則と制限については、「コンテナーを作成し、アクセス許可を設定する」を参照してください。

  5. 作業を終えたら、Enter キーを押して BLOB コンテナーを作成するか、Esc キーを押して取り消します。 BLOB コンテナーが正常に作成されると、選択したストレージ アカウントの [BLOB コンテナー] フォルダーの下に表示されます。

    作成された BLOB コンテナー

フォルダーのコンテンツを Data Box BLOB ストレージにアップロードする

AzCopy を使用して、フォルダー内のすべてのファイルを Windows または Linux 上の BLOB ストレージにアップロードします。 フォルダー内のすべての BLOB をアップロードするには、次の AzCopy コマンドを入力します。

Linux

azcopy \
    --source /mnt/myfolder \
    --destination https://data-box-storage-account-name.blob.device-serial-no.microsoftdatabox.com/container-name/ \
    --dest-key <key> \
    --recursive

Windows

AzCopy /Source:C:\myfolder /Dest:https://data-box-storage-account-name.blob.device-serial-no.microsoftdatabox.com/container-name/ /DestKey:<key> /S

<key> はお客様のアカウント キーで置き換えてください。 ストレージ アカウントに移動すると、Azure portal 内でアカウント キーを取得できます。 [設定]> [アクセス キー]の順に選択し、キーを選択してから、値をコピーして AzCopy コマンドに貼り付けます。

指定した宛先コンテナーが存在しない場合、AzCopy によってコンテナーが作成され、そのコンテナーにファイルがアップロードされます。 お客様のデータ ディレクトリへのソース パスを更新して、宛先 URL の data-box-storage-account-name を、お客様の Data Box に関連付けられたストレージ アカウントの名前で置き換えます。

指定したディレクトリのコンテンツを BLOB ストレージに再帰的にアップロードするには、Linux の場合は --recursive オプションを、Windows の場合は /S オプションを指定します。 これらのオプションのいずれかを使用して AzCopy を実行すると、すべてのサブフォルダーとサブフォルダー内のファイルもアップロードされます。

変更されたファイルを Data Box BLOB ストレージにアップロードする

AzCopy を使用して、最終更新時刻に基づいてファイルをアップロードすることもできます。 更新ファイルまたは新規ファイルのみをアップロードするには、Linux の場合は --exclude-older パラメータを、Windows の場合は /XO パラメータを AzCopy コマンドに追加します。

ローカル ソース内のコピー先には存在しないリソースのみをコピーするには、Linux の場合は --exclude-older--exclude-newer の両パラメータを、Windows の場合は /XO/XN の両パラメータを AzCopy コマンドで指定します。 AzCopy は、このタイムスタンプが指定する更新データのみをアップロードします。

Linux

azcopy \
--source /mnt/myfolder \
--destination https://data-box-storage-account-name.blob.device-serial-no.microsoftdatabox.com/container-name/ \
--dest-key <key> \
--recursive \
--exclude-older

Windows

AzCopy /Source:C:\myfolder /Dest:https://data-box-storage-account-name.blob.device-serial-no.microsoftdatabox.com/container-name/ /DestKey:<key> /S /XO

接続またはコピー操作中にエラーが発生する場合は、Data Box BLOB ストレージの問題のトラブルシューティングに関するページを参照してください。

次のステップは、発送するデバイスの準備です。

次のステップ

このチュートリアルでは、Azure Data Box に関する次のようなトピックについて説明しました。

  • REST API を使用して Azure Data Box BLOB ストレージにデータをコピーする場合の前提条件
  • http 経由または https 経由の Data Box BLOB ストレージへの接続
  • ブロック BLOB の適切なアクセス層の決定
  • Data Box にデータをコピーする

次のチュートリアルに進み、お客様の Data Box を Microsoft に返送する方法を学習してください。