どうも、フリーランスエンジニアのMakotoです。
今回は、Azure Storageのデータを移動するためのオプションについて解説します。
Azureポータルからもファイルやフォルダをアップロード/ダウンロードしたり削除することもできますが、提供されているツールやサービスを活用することでそれらの操作を効率化できます。ぜひ、最後までお読みください。
それではいってみましょう!
Azure Storage Explorer
Azure Storage Explorerは、Windows、macOS、Linuxにインストールして利用できるAzure Storageを操作するためのGUIツールです。
Windowsのエクスプローラー、macOSのFinderのAzure Storage版だと考えれば良いでしょう。
GUIのツールなのでツールバーなどから直感的に操作できますし、複数のファイルやフォルダをドラッグしてまとめてアップロードすることもできます。
以下の画面の例では、左側ツリー表示のエリアから「image」というコンテナーを選択してBlobの一覧を表示させています。
Azure Storage Explorerは、Azure Storageを操作するためのGUIツールで、Windows、macOS、Linuxで利用することができます。
なお、Azureポータルの「ストレージブラウザー」のメニューからも同じような見た目のツールを利用することができます。
AzCopy
AzCopyは、コマンドラインでAzure Storageを操作するためのCUIツールです。「エーズィーコピー」または、「エーゼットコピー」と読みます。
Azure Storage Explorerと同じくWindows、macOS、Linuxで利用できます。インストール不要で、実行ファイルをパスの通った場所に配置するだけで使うことができます。
Azure CLIでもデータのアップロード/ダウンロードなどはできますが、AzCopyはAzure StorageのBlob、Fileのデータコピーに特化しており、最適なパフォーマンスを実現するために設計されています。
コマンドの実行例を以下に示しますが、azcopy 操作 引数 の形式が基本的な形です。recursive(再帰的)などのフラグを指定することもでき、この場合はサブフォルダも含めてコピーや削除が実行されます。
# サインイン(https://microsoft.com/deviceloginにアクセスして表示されている認証コードを入力)
azcopy login
To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code SG7AC**** to authenticate.
INFO: Logging in under the "Common" tenant. This will log the account in under its home tenant.
INFO: If you plan to use AzCopy with a B2B account (where the account's home tenant is separate from the tenant of the target storage account), please sign in under the target tenant with --tenant-id
INFO: Login succeeded.
# imageコンテナーのBlob一覧を取得(Azure Virtual Machine.pngの1ファイルのみ)
azcopy list "https://azstartstorage.blob.core.windows.net/image"
INFO: Authenticating to source using Azure AD
INFO: Azure Virtual Machine.png; Content Length: 5.22 KiB
# Dir1のフォルダをアップロード
azcopy copy Dir1 "https://azstartstorage.blob.core.windows.net/image" --recursive
# Dir1のフォルダを削除
azcopy rm "https://azstartstorage.blob.core.windows.net/image/Dir1" --recursive
他にも、syncで同期したり、benchでベンチマークテストを実行したり、AWSなど他社のクラウドストレージからコピーすることもできます。
AZ-900試験ではコマンドの構文までは問われないと思いますが、詳細を知りたい方はリファレンスを参照してください。
AzCopyは、ローカル、ストレージアカウント間、他社クラウドストレージとでデータをコピーするためのCUIツールで、Windows、macOS、Linuxで利用することができます。
Azure Storage Explorerでアップロードなどの操作を行った時にも内部的にはAzCopyが使われています。
Azure File Sync
Azure File Syncは、ファイル共有(Azure StorageのFile)に保存しているデータをオンプレミスなどのWindows Serverにキャッシュして利用できるサービスです。
OneDriveやGoogleDrive、Dropboxなどの一般的なクラウドストレージサービスと仕組みは似ています。
Windows ServerにAzure File Syncエージェントをインストールして構成することで、例えばオンプレミスのサーバAで変更したファイルはクラウド側のファイル共有に反映され、最終的にサーバBにも同期されます。
Azure File Syncは、Windows Serverでのみサポートされています(新しいバージョンは今後も追加される予定)
- Windows Server 2022
- Windows Server 2019
- Windows Server 2016
- Windows Server 2012 R2
クラウドの階層化という機能を有効にすることで、アクセス頻度の高いファイルのみをローカルに保持することもできます。
Azure File Syncには次のような用途・メリットがあります。
- オンプレミスのファイルサーバをクラウドに拡張できる
- クラウドで一元管理して複数拠点で共有できる
- バックアップや災害対策
実際の構成手順は、以下のハンズオン記事を参考にしてください。
注意点として、クラウド側のファイル共有に対して直接変更を加えた場合、Windows Serverには即座に反映されず、24時間ごとに実行される変更検出ジョブを待つ必要があります。
Q.SMB またはポータルを使用して Azure ファイル共有上でファイルを直接作成しました。このファイルを同期グループのサーバーで同期するには、どのくらいの時間がかかりますか?
A.Azure Portal または SMB を使用して Azure ファイル共有に加えられた変更は、サーバー エンドポイントに対する変更とは異なり、検出とレプリケーションが即座に行われることはありません。(中略)
変更検出ジョブによってファイルが変更されていると判断された場合に、Azure File Sync は同期セッションを開始します。 変更検出ジョブは 24 時間ごとに実行されます。
Windows Serverでの変更は即座に反映されますが、クラウド側で変更した場合には約24時間かかるということですので、実際に利用する場合には注意しましょう。
ただし、手動で変更検出ジョブを動かすこともできます。詳細はこちらの記事をご覧ください。
Azure File Syncを使うと、オンプレミスのファイルサーバをクラウドに拡張することができる
まとめ
Azure Storageのデータを移動するためのオプションについて解説しました。それぞれのオプションを簡単にまとめると次の表のような形になります。
ツール・サービス名 | 説明 | サポートOS |
---|---|---|
Azure Storage Explorer | Azure Storageを操作するGUIツール | クロスプラットフォーム |
AzCopy | Azure Storageを操作するCUIツール | クロスプラットフォーム |
Azure File Sync | ファイル共有のデータをキャッシュ | Windows Serverのみ |
これらのツールやサービスを利用することで用途に合わせてデータをコピーしたり同期できる点をおさえておきましょう。
それでは、また。