チュートリアル:SMB 経由で Azure Data Box Heavy にデータをコピーする
Azure Data Box Heavy にデータをコピーする
重要
Azure Data Box では、BLOB レベルでのアクセス層の割り当てがサポートされるようになりました。 このチュートリアルで扱うステップは、更新されたデータ コピー プロセスを反映したもので、ブロック BLOB に特化したものとなっています。
このセクションに含まれる情報は、2024 年 4 月 1 日以降に発注された注文に適用されます。
このチュートリアルでは、ローカル Web UI を使用してホスト コンピューターに接続し、そこからデータをコピーする方法について説明します。
このチュートリアルでは、以下の内容を学習します。
- Data Box Heavy に接続する
- データを Data Box Heavy にコピーする
ソース サーバーから、SMB、NFS、REST、データ コピー サービスを介して Data Box に、またはマネージド ディスクに、データをコピーできます。
いずれの場合も、共有名、フォルダー名、データ サイズが、「Azure Storage と Data Box Heavy サービスの制限」に記載されているガイドラインに従っていることを確認します。
前提条件
開始する前に次の点を確認します。
- Azure Data Box Heavy の設定に関するチュートリアルを完了していること。
- Data Box Heavy を受け取り済みで、ポータル内の注文の状態が [発送済み] であること。
- Data Box Heavy にコピーするデータが格納されているホスト コンピューターがあること。 このホスト コンピューターは次の条件を満たしている必要があります。
- サポート対象のオペレーティング システムが実行されていること。
- 高速ネットワークに接続していること。 最速のコピー速度を得るため、2 つの 40 GbE 接続 (ノードごとに 1 つずつ) を並列で利用できます。 40 GbE 接続を使用できない場合は、少なくとも 2 つの 10 GbE 接続 (ノードごとに 1 つずつ) を使用することをお勧めします。
Data Box Heavy 共有に接続する
選択したストレージ アカウントに基づいて、Data Box Heavy では最大で次のものが作成されます。
- GPv1 および GPv2 に対して関連付けられているストレージ アカウントごとに 3 つの共有。
- Premium ストレージに対して 1 つの共有。
- BLOB ストレージ アカウントには 1 つの共有 (4 つの各アクセス層ごとに 1 つのフォルダーを含む)。
次の表は、接続先となる Data Box 共有の名前と、ターゲット ストレージ アカウントにアップロードするデータの種類を示しています。 また、ソース データのコピー先である共有とディレクトリの階層も示しています。
ストレージの種類 | 共有名 | 第 1 レベル エンティティ | 第 2 レベル エンティティ | 第 3 レベル エンティティ |
---|---|---|---|---|
ブロック BLOB | <storageAccountName>_BlockBlob | <\accessTier> | <\containerName> | <\blockBlob> |
ページ BLOB | <\storageAccountName>_PageBlob | <\containerName> | <\pageBlob> | |
File Storage | <\storageAccountName>_AzFile | <\fileShareName> | <\file> |
ファイルを Data Box 共有の root フォルダーに直接コピーすることはできません。 代わりに、ユース ケースに応じて Data Box 共有内にフォルダーを作成します。
ブロック BLOB では、ファイル レベルでのアクセス層の割り当てをサポートしています。 ブロック BLOB 共有にファイルをコピーする場合のベストプラクティスとしてお勧めするのは、適切なアクセス層内に新しいサブフォルダーを追加することです。 新しいサブフォルダーを作成してから、必要に応じて各サブフォルダーにファイルを追加していきます。
ブロック BLOB 共有のルートにあるどのフォルダーにも、新しいコンテナーが作成されます。 そのフォルダー内のすべてのファイルは、ストレージ アカウントのデフォルトのアクセス層にブロック BLOB としてコピーされます。
BLOB アクセス層の詳細については、「BLOB データのアクセス層」を参照してください。 アクセス層のベスト プラクティスについての詳細情報は、「BLOB アクセス層を使用する場合のベスト プラクティス」を参照してください。
次の表は、Data Box 上の共有への UNC パスと、それに対応するデータのアップロード先である Azure Storage のパスの URL を示しています。 Azure Storage の最終的なパスの URL は、UNC 共有パスから導き出すことができます。
Azure Storage の種類 | Data Box 共有 |
---|---|
Azure ブロック BLOB | \\<DeviceIPAddress>\<storageaccountname_BlockBlob>\<accessTier>\<ContainerName>\myBlob.txt https://<storageaccountname>.blob.core.windows.net/<ContainerName>/myBlob.txt |
Azure ページ BLOB | \\<DeviceIPAddress>\<storageaccountname_PageBlob>\<ContainerName>\myBlob.vhd https://<storageaccountname>.blob.core.windows.net/<ContainerName>/myBlob.vhd |
Azure Files | \\<DeviceIPAddress>\<storageaccountname_AzFile>\<ShareName>\myFile.txt https://<storageaccountname>.file.core.windows.net/<ShareName>/myFile.txt |
BLOB アクセス層の詳細については、「BLOB データのアクセス層」を参照してください。 アクセス層のベスト プラクティスについての詳細情報は、「BLOB アクセス層を使用する場合のベスト プラクティス」を参照してください。
接続する手順は、クライアントに Windows と Linux のいずれを使用するかによって異なります。
注意
デバイスの両方のノードに並列して接続するには、同じ手順に従ってください。
Windows システムで接続する
Windows Server ホスト コンピューターを使用している場合は、これらの手順に従って Data Box Heavy に接続します。
最初に、認証を行ってセッションを開始します。 [接続とコピー] に移動します。 [資格情報の取得] をクリックして、ストレージ アカウントに関連付けられている共有用のアクセス資格情報を取得します。
[共有にアクセスしてデータをコピーする] ダイアログ ボックスで、共有に対応する [ユーザー名] と [パスワード] をコピーします。 [OK] をクリックします。
自分のストレージ アカウントに関連付けられている共有 (次の例の場合は、databoxe2etest) にホスト コンピューターからアクセスするために、コマンド ウィンドウを開きます。 コマンド プロンプトに、次のコマンドを入力します。
net use \\<IP address of the device>\<share name> /u:<user name for the share>
データ形式に応じて、共有パスは次のようになっています。
- Azure ブロック BLOB -
\\10.100.10.100\databoxe2etest_BlockBlob
- Azure ページ BLOB -
\\10.100.10.100\databoxe2etest_PageBlob
- Azure Files -
\\10.100.10.100\databoxe2etest_AzFile
- Azure ブロック BLOB -
メッセージに従って共有のパスワードを入力します。 次のサンプルを使用して、10.100.10.100 の IP アドレスを持つ Data Box の BlockBlob 共有に接続することができます。
net use \\10.100.10.100\databoxe2etest_BlockBlob /u:databoxe2etest Enter the password for 'databoxe2etest' to connect to '10.100.10.100': The command completed successfully.
Windows キーを押しながら R キーを押します。[ファイル名を指定して実行] ウィンドウで、「
\\<device IP address>
」と入力します。 [OK] をクリックして、エクスプローラーを開きます。共有がフォルダーとして表示されます。 この例では、BlockBlob 共有が使用中であることに注意してください。 そのため、使用可能な 4 つのアクセス層を表す 4 つのフォルダーが存在しています。 これらのフォルダーは、他の共有では使用できません。
常にコピーしようとするファイル用のフォルダーを共有下に作成してから、ファイルをそのフォルダーにコピーします。 ストレージ アカウント内の root フォルダーに直接ファイルをコピーすることはできません。 PageBlob 共有の下に作成されるフォルダーはすべて、BLOB としてアップロードされるデータのアップロード先のコンテナーを表しています。 同様に、BlockBlob 共有におけるアクセス層を表すフォルダー内に作成されたサブフォルダーも、BLOB ストレージ コンテナーを表しています。 AzFile 共有内に作成されたフォルダーは、ファイル共有を表しています。
BlockBlob 共有の "ルート" に作成されるフォルダーは、BLOB コンテナーとして作成されます。 これらのコンテナーのアクセス層は、ストレージ アカウントから継承されます。
Linux システムで接続する
Linux クライアントを使用している場合は、次のコマンドを使用して、SMB 共有をマウントします。
sudo mount -t nfs -o vers=2.1 10.126.76.172:/databoxe2etest_BlockBlob /home/databoxubuntuhost/databox
vers
パラメーターは、自分の Linux ホストがサポートしている SMB のバージョンです。 上記のコマンドで適切なバージョンを指定します。
Data Box Heavy でサポートされている SMB のバージョンについては、「Supported file systems for Linux clients (Linux クライアントでサポートされるファイル システム)」を参照してください。
データを Data Box Heavy にコピーする
Data Box Heavy 共有に接続したら、次の手順はデータのコピーです。
コピーに関する考慮事項
データのコピーを開始する前に、次の考慮事項を確認してください。
適切なデータ形式に対応する共有にデータをコピーする必要があります。 たとえば、ブロック BLOB データは、ブロック BLOB 用の共有にコピーしてください。 VHD をページ BLOB にコピーします。
データ形式が適切な共有の種類と一致しない場合は、後続の手順で、Azure へのデータのアップロードに失敗します。
データをコピーするときは、データのサイズが、Azure Storage と Data Box Heavy の制限に関する記事に記載されているサイズ制限に従っていることを確認してください。
Data Box Heavy によってアップロードされているデータが、Data Box Heavy の外部で別のアプリケーションによって同時にアップロードされた場合、アップロード ジョブ エラーやデータの破損が生じる可能性があります。
推奨事項は次のとおりです。
- SMB と NFS の両方を同時に使用しません。
- 同じデータを Azure 上の同じ宛先にコピーします。
このようにした場合は、最終的な結果が不確定になります。
必ず、コピーするファイル用のフォルダーを共有の下に作成してから、ファイルをそのフォルダーにコピーしてください。 ブロック BLOB およびページ BLOB の共有の下に作成したフォルダーは、データが BLOB としてアップロードされるコンテナーになります。 ストレージ アカウント内の root フォルダーに直接ファイルをコピーすることはできません。
SMB 共有に接続した後、データのコピーを開始します。
Robocopy などの SMB 互換ファイル コピー ツールを使用して、データをコピーできます。 Robocopy を使用して、複数のコピー ジョブを開始できます。 次のコマンドを使用します。
robocopy <Source> <Target> * /e /r:3 /w:60 /is /nfl /ndl /np /MT:32 or 64 /fft /Log+:<LogFile>
属性については次の表で説明します。
属性 説明 /e サブディレクトリをコピーします (空のディレクトリを含む)。 /r: 失敗したコピーの再試行回数を指定します。 /w: 再試行間の待ち時間 (秒) を指定します。 /is 同じファイルを含めます。 /nfl ファイル名をログに記録しないことを指定します。 /ndl ディレクトリ名をログに記録しないことを指定します。 /np コピー操作の進行状況 (それまでにコピーされたファイルまたはディレクトリの数) が表示されないように指定します。 進行状況を表示すると、パフォーマンスが大幅に低下します。 /MT マルチスレッドを使用します (推奨は 32 または 64 スレッド)。 このオプションは、暗号化されたファイルでは使用されません。 暗号化されたファイルと暗号化されていないファイルを分離することが必要な場合があります。 ただし、シングルスレッドのコピーでは、パフォーマンスが大幅に低下します。 /fft 任意のファイル システムのタイムスタンプの細分性を下げるために使用します。 /b バックアップ モードでファイルをコピーします。 /z 再起動モードでファイルをコピーします。環境が不安定な場合はこれを使用します。 このオプションでは、追加ログによりスループットが低下します。 /zb 再起動モードを使用します。 アクセスが拒否された場合、このオプションはバックアップ モードを使用します。 このオプションでは、チェックポイント処理のためにスループットが低下します。 /efsraw すべての暗号化されたファイルを EFS raw モードでコピーします。 暗号化されたファイルでのみ使用します。 log+:<LogFile> 既存のログ ファイルに出力を追加します。 次のサンプルは、Data Box Heavy にファイルをコピーする robocopy コマンドの出力を示しています。
C:\Users>Robocopy C:\Git\azure-docs-pr\contributor-guide \\10.100.10.100\devicemanagertest1_AzFile\templates /MT:24 ------------------------------------------------------------------------------- ROBOCOPY :: Robust File Copy for Windows ------------------------------------------------------------------------------- Started : Thursday, April 4, 2019 2:34:58 PM Source : C:\Git\azure-docs-pr\contributor-guide\ Dest : \\10.100.10.100\devicemanagertest1_AzFile\templates\ Files : *.* Options : *.* /DCOPY:DA /COPY:DAT /MT:24 /R:5 /W:60 ------------------------------------------------------------------------------ 100% New File 206 C:\Git\azure-docs-pr\contributor-guide\article-metadata.md 100% New File 209 C:\Git\azure-docs-pr\contributor-guide\content-channel-guidance.md 100% New File 732 C:\Git\azure-docs-pr\contributor-guide\contributor-guide-index.md 100% New File 199 C:\Git\azure-docs-pr\contributor-guide\contributor-guide-pr-criteria.md New File 178 C:\Git\azure-docs-pr\contributor-guide\contributor-guide-pull-request-co100% .md New File 250 C:\Git\azure-docs-pr\contributor-guide\contributor-guide-pull-request-et100% e.md 100% New File 174 C:\Git\azure-docs-pr\contributor-guide\create-images-markdown.md 100% New File 197 C:\Git\azure-docs-pr\contributor-guide\create-links-markdown.md 100% New File 184 C:\Git\azure-docs-pr\contributor-guide\create-tables-markdown.md 100% New File 208 C:\Git\azure-docs-pr\contributor-guide\custom-markdown-extensions.md 100% New File 210 C:\Git\azure-docs-pr\contributor-guide\file-names-and-locations.md 100% New File 234 C:\Git\azure-docs-pr\contributor-guide\git-commands-for-master.md 100% New File 186 C:\Git\azure-docs-pr\contributor-guide\release-branches.md 100% New File 240 C:\Git\azure-docs-pr\contributor-guide\retire-or-rename-an-article.md 100% New File 215 C:\Git\azure-docs-pr\contributor-guide\style-and-voice.md 100% New File 212 C:\Git\azure-docs-pr\contributor-guide\syntax-highlighting-markdown.md 100% New File 207 C:\Git\azure-docs-pr\contributor-guide\tools-and-setup.md ------------------------------------------------------------------------------ Total Copied Skipped Mismatch FAILED Extras Dirs : 1 1 1 0 0 0 Files : 17 17 0 0 0 0 Bytes : 3.9 k 3.9 k 0 0 0 0 C:\Users>
パフォーマンスを最適化するには、データをコピーするときに、次の robocopy パラメーターを使用します。 (以下の数字は最良のシナリオを表します。)
プラットフォーム ほとんどが小さいファイル (< 512 KB) ほとんどが中規模のファイル (512 KB から 1 MB) ほとんどが大きいファイル (> 1 MB) Data Box Heavy 6 Robocopy セッション
セッションあたり 24 スレッド6 Robocopy セッション
セッションあたり 16 スレッド6 Robocopy セッション
セッションあたり 16 スレッドRobocopy コマンドについて詳しくは、「Robocopy and a few examples」(Robocopy といくつかの例) をご覧ください。
コピー先フォルダーを開いて、コピー済みのファイルを表示し、確認します。
データのコピー時:
- Azure のオブジェクトおよびストレージの制限のほか、Azure のファイルおよびコンテナーの名前付け規則を満たすように、ファイル名、サイズ、形式が検証されます。
- データの整合性を確保するために、インラインでチェックサムも計算されます。
コピー処理中にエラーが発生した場合は、トラブルシューティングのためにエラー ファイルをダウンロードします。 エラー ファイルをダウンロードするには、矢印アイコンを選択します。
詳細については、データを Data Box Heavy にコピーしている間のエラー ログの表に関するページを参照してください。 データ コピー中のエラーの詳細な一覧については、Data Box Heavy の問題のトラブルシューティングに関するページを参照してください。
メモ帳でエラー ファイルを開きます。 次のエラー ファイルは、データが正しくアラインされていないことを示しています。
ページ BLOB の場合、データは 512 バイトでアラインされる必要があります。 このデータを削除すると、次のスクリーンショットに示すようにエラーが解決します。
コピーが完了した後、 [ダッシュボードの表示] ページに移動します。 自分のデバイス上の使用済み領域と空き領域を確認します。
上記の手順を繰り返して、デバイスの第 2 のノードにデータをコピーします。
次のステップ
このチュートリアルでは、Azure Data Box Heavy に関する次のようなトピックについて説明しました。
- Data Box Heavy に接続する
- データを Data Box Heavy にコピーする
次のチュートリアルに進み、ご自分の Data Box Heavy を Microsoft に返送する方法を学習してください。
SMB 経由でデータをコピーする
Windows ホストを使用している場合は、次のコマンドを使用して、SMB 共有に接続します。
\\<IP address of your device>\ShareName
共有アクセス資格情報を取得するには、Data Box のローカル Web UI にある [接続とコピー] ページに移動します。
Robocopy などの SMB 互換ファイル コピー ツールを使用して、データを共有にコピーします。
具体的な手順については、「チュートリアル: Azure Data Box に SMB 経由でデータをコピーする」を参照してください。
NFS 経由でデータをコピーする
NFS ホストを使用している場合は、次のコマンドを使用して NFS 共有をマウントします。
sudo mount <Data Box device IP>:/<NFS share on Data Box device> <Path to the folder on local Linux computer>
共有アクセス資格情報を取得するには、Data Box Heavy のローカル Web UI にある [接続とコピー] ページに移動します。
cp
またはrsync
コマンドを使用してデータをコピーします。これらの手順を繰り返して、Data Box Heavy の 2 番目のノードに接続し、データをコピーします。
具体的な手順については、「チュートリアル: Azure Data Box に NFS 経由でデータをコピーする」を参照してください。
REST 経由でデータをコピーする
- REST API シリーズ経由で Data Box BLOB ストレージを使用してデータをコピーするには、http または https 経由で接続できます。
- データを Data Box BLOB ストレージにコピーするには、AzCopy を使用できます。
- これらの手順を繰り返して、Data Box Heavy の 2 番目のノードに接続し、データをコピーします。
具体的な手順については、「チュートリアル: REST API 経由で Azure Data Box BLOB ストレージにデータをコピーする」を参照してください。
データ コピー サービス経由でデータをコピーする
- データ コピー サービスを使用してデータをコピーするには、ジョブを作成する必要があります。 お客様の Data Box Heavy のローカル Web UI で、[管理] > [データのコピー] > [作成] の順に移動します。
- パラメーターを入力し、ジョブを作成します。
- これらの手順を繰り返して、Data Box Heavy の 2 番目のノードに接続し、データをコピーします。
具体的な手順については、「チュートリアル: データ コピー サービスを使用してデータを Azure Data Box Heavy にコピーする」を参照してください。
マネージド ディスクにデータをコピーする
- Data Box Heavy デバイスを注文する場合、保存先としてマネージド ディスクを選択しておく必要があります。
- SMB または NFS 共有経由で Data Box Heavy に接続できます。
- その後、SMB または NFS ツール経由でデータをコピーできます。
- これらの手順を繰り返して、Data Box Heavy の 2 番目のノードに接続し、データをコピーします。
具体的な手順については、「チュートリアル: Data Box Heavy を使用して Azure のマネージド ディスクとしてデータをインポートする」を参照してください。