Azure 第15回『やってみようシリーズ:Azure Files/Azure File Syncを使ってみよう!』

Azure Files を活用する

Microsoft Azure のIaaS(Infrastructure as a Service)では、仮想ネットワークとストレージを仮想マシンに接続し仮想サーバー環境を構築することが多いでしょう。この場合ストレージのサービスとして利用するのはAzure ディスクです。
Azure のストレージはディスクの他にもAzure Blob、Azure テーブル、Azure キュー、Azure Files などのサービスが提供されており(*)、単独でもさまざまなデータの保存場所として活用できます。例えばBlob やテーブル、キューはWeb Apps などのPaaS サービス上で動作するアプリケーションから直接読み書きできるデータの保存場所として利用できます。

*:この他にAzure Elastic SAN(プレビュー)、Azure NetApp Files が提供されています

Azure Filesとは

Azure Files は「ファイル共有」のためのストレージを提供するサービスです。Windows、Linux、macOS を実行しているクラウドまたはオンプレミスのコンピューターから、ファイルサーバー上の共有フォルダーのようにマウントしてアクセスできます。

Azure Files の概要

Azure Files を利用するとファイルサーバーの役割を持つコンピューターなしにSMB およびNFS プロトコルでファイルにアクセスでき、オンプレミスからでもクラウドからでも同じデータにアクセスできるので、構成の簡素化やコストの削減に役立ちます。また個人用のOneDrive を利用すると個人用フォルダーをクラウド上のOneDrive と同期できるように、Azure Files の拡張機能であるAzure File Sync を利用するとオンプレミスのファイルサーバーとクラウド上のAzure Files を同期させて、階層化ストレージを構成することもできます。

Azure Files はファイルシステムを提供するサービスであるため、ローカルのディスクやサーバー上の共有フォルダーのようにフォルダー(ディレクトリ)を自由に作成・構成して、任意の種類のファイルを保存し読み書きすることができます。また業界標準のサーバーメッセージブロック(SMB)プロトコル、ネットワークファイルシステム(NFS)プロトコルを通じてアクセスできるため、オペレーティングシステムの標準機能でマウントし、オペレーティングシステムの標準機能でアクセスすることが可能です。

Azure Files の利用目的

Azure Files の利用目的としては、以下のようなシナリオが想定されます。

  • オンプレミスのファイルサーバーの置換または補完

    オンプレミスのファイルサーバーやNASの置き換えや補完をします。クラウド上にファイルがあるので、地理的に離れた場所からでも容易に同じデータにアクセスできます。Azure File Sync の利用もこのシナリオです。

  • アプリケーションの"リフトアンドシフト"

    オンプレミスで稼働しているアプリケーションをクラウド化する際の、アプリケーション自体やデータの保存場所として利用できます。データだけAzure に移行して、アプリケーションはオンプレミスで稼働させるハイブリッド構成も可能です。

  • クラウド開発の簡略化

    共有アプリケーションを構成したり、診断ログ・デバッグログを一元的に集約したり、開発やデバッグの共有ツールなどを保存したりするのに役立ちます。

  • コンテナー化

    アプリケーションをコンテナー化した場合の永続的なデータストレージとして利用できます。

Azure Files のメリット

Azure のストレージに保存されるファイルのデータは最低でも三重化(3つのディスクに同時書き込み)され、さらに遠隔地との自動複製を含む多様な冗長化・多重化が可能なので、万一の災害や事故にも強い、堅牢なデータ保管が行えます。
Azure Files は従量課金*1(保存したデータの容量と読み書きのアクセスに対する課金)なので、オンプレミスのファイルサーバーのように容量不足になることなく、必要なデータを低コスト*2で長期間保存することも可能です。

*1:Premium 共有(SSDのストレージ)についてはプロビジョニング容量(ストレージとして確保した容量)に対する課金となります
*2:最も安価な場合で、1ギガバイト1か月あたりの保存料金は約3円強です

Azure Files の利用は、Azure サブスクリプションがあればすぐに開始できます。Azure サブスクリプションをお持ちでない場合は、当社担当営業までご相談ください。

Azure Files の作成

Azure Files は他のストレージと同様、ストレージアカウントを作成し(または既存のストレージアカウントを利用し)、その配下にAzure Files のリソースを作成します。
作成の手順は以下のとおりです。

  1. ストレージアカウントを作成します。
    Azure ポータルで「ストレージアカウント」を検索し、[サービス] の分類で見つかる [ストレージアカウント] をクリックします。
  2. ストレージアカウントの画面が開きますので、[作成] をクリックします。
  3. [ストレージアカウントを作成する] 画面が表示されます。
    サブスクリプション、リソースグループを選択し、ストレージアカウント名を入力して地域(リージョン)を選択します。
    • パフォーマンスで [Premium] を選択すると、SSDを利用した低遅延・高スループットのストレージが利用可能になります。
    • [冗長性] では以下のような冗長構成を選択できます。
  4. [次へ] で画面を進めます。
    [詳細設定] タブでBlobストレージの既定をホット層にするかクール層にするかを指定できます。
    ※ホット層は保存料金がやや高めで読み書き料金が低めの、よくアクセスするデータに適した層、クール層は保存料金が安く読み書き料金が高めの、アクセスが少ない長期保存データに適したそうです。
    [ネットワーク] タブで、ストレージにアクセスできる仮想ネットワークを制限できます。
  5. [確認および作成] まで進んだら、[作成] をクリックします。
  6. デプロイが完了するのを待ちます。
  7. デプロイが完了したらリソースに移動します。
  8. 左側のメニューから [ファイル共有] を選択します。
  9. [ファイル共有] 画面が開いたら、上にある [ファイル共有] をクリックします。
  10. [新しいファイル共有] が開きます。
    ファイル共有の名前を入力して [作成] をクリックします。
    • [レベル] では以下の4つが選択できます。通常は [トランザクションが最適化されました] または [ホット] を用途に応じて選択します。
      ※Premiumはストレージアカウントの種類がPremiumである場合のみ選択できます。
  11. 以下のようなAzure Files のファイル共有が作成できました。

Azure Files のマウント

作成したAzure Files ファイル共有をWindowsコンピューターにマウントしてアクセスできるようにします。

  1. まず、マウントしてファイル共有が正しく機能するか確認できるよう、ファイル共有にAzureポータルからいくつかファイルをアップロードしておきます。
    作成したファイル共有の画面で、左のメニューから [Browse] を選択します。
  2. 上部の [アップロード] をクリックすると [ファイルのアップロード] 画面が開きますので、適当なファイルをアアプロードします。
  3. アップロードしたファイルは [Browse] の画面に一覧表示されます。
  4. アップロードができたら、[接続] をクリックします。
  5. [接続] 画面が開きます。
    [Windows] のタブ内にある [Show Script] をクリックして接続スクリプトを表示させて、コピーします。
  6. Azure Files ファイル共有をマウントしたいWindowsインストールでPowerShell(管理者PowerShellではなくサインインしているユーザー権限のPowerShell)を開き、コピーしたスクリプトを貼り付けて実行します。
    ※今回はAzure上の仮想マシンにマウントしています。
  7. 実行後、エクスプローラーを開いてファイル共有がマウントされていることを確認してください。
  8. ファイル共有(Zドライブ)を開くと、先ほどアップロードしたファイルが表示されています。
    これでAzure Files のファイル共有に正しくアクセスできていることが確認できました。
  9. さらにWindows側でファイル共有に新しいファイルを追加してみます。
  10. Azureポータルの [Browse] 画面に、Windowsで追加したファイルが表示されます。

このようにAzure Files はAzure仮想マシンから簡単に利用できるファイル共有として構成できます。オンプレミスではファイルサーバーを構築する代わりにNASを利用する場合が多いですが、Azure IaaS の場合も仮想ファイルサーバーではなくAzure Files でファイル共有を利用することができます。

  • ここではAzure上の仮想マシンにファイル共有をマウントしましたが、オンプレミスのコンピューターでもネットワークの疎通(SMB プロトコル - TCP ポート 445番)が行えれば、同様の手順でクラウド上のファイル共有をマウントして利用できます。
    ただし実運用環境でオンプレミスからの安全な接続を行う場合は、仮想ネットワークとプライベートエンドポイントを利用してVPNや Express Route などの閉域網接続を構成することをお勧めします。

Azure File Sync の構成

作成したファイル共有を利用して、Windows Server のローカルフォルダーとの同期を構成していきます。
※ここではWindows Server 2022 を利用していますが、Windows Server 2012 R2/2016/2019 でも同様の手順です。

  1. まずWindows Server で同期対象となるフォルダーを作成します(既存のフォルダーを利用しても問題ありません)。
    ここでは F:ドライブにFileToSync フォルダーを作成し、確認用にファイルを1つ作成しています。
  2. 同期するWindows Server で管理者PowerShell を起動して、以下のコマンドを実行してAzure PowerShell モジュールをインストールします。
    ※途中でNuGet プロバイダーのインストールと、リポジトリの信頼について確認される場合があります。いずれも“Y”で応答してください。
  3. Azure ポータルで [リソースの作成] を選択し、"Azure File Sync" を検索し、検索結果で見つかる [Azure File Sync] の [作成] をクリックし、[Azure File Sync] をクリックします。
  4. [Azure File Sync のデプロイ] が表示されます。
    サブスクリプションとリソースグループ、リージョンを選択し、ストレージ同期サービス名を入力します。
  5. [次へ] で進めて、 [確認と作成] で [作成] をクリックします。
  6. デプロイが完了すると、同期サービスのリソースが作成されます。
  7. 同期するサーバーで、Internet Explorer セキュリティ強化の構成をオフにします。
    サーバーマネージャーで [ローカルサーバー] を選択し、[IEセキュリティ効果の構成] の表示が [オン] になっていたら、[オン] の部分をクリックして以下のように無効にします。
    ※表示が [オフ] に変わることを確認してください。
    • セキュリティ強化の構成の無効化はサーバー登録の際にのみ必要です。作業が終わったら元の設定に戻してください。
  8. Azure File Sync エージェントをインストールします。
    下記ページにアクセスし、[Download] をクリックします。
    • Windows Server 2012 R2 の場合は別途Windows Management Framework 5.1 が必要です。

    下記ページからダウンロード/インストールしてください。

  9. インストールするサーバーのバージョンに合致するファイルにチェックを入れて [Next] をクリックします。
  10. ダウンロードしたファイルを実行すると、エージェントのインストールが開始されます。
    既定の設定のまま進めてください。
  11. インストールが完了すると、サーバー登録の画面が表示されます。
    [Azure Environment] 欄が [AzureCloud] になっていることを確認の上で [Sign in] をクリックします。
  12. アカウントへのサインインの画面が表示されますので、同期サービスを構成したのと同じAzure アカウントでサインインします。
    ※サインインを何度か求められる場合がありますが、すべて同じアカウントでサインインしてください。
  13. サインインが完了すると、サーバー登録画面が表示されます。
    サブスクリプション、リソースグループ、同期サービスをドロップダウンから選択してください。
  14. [Register] をクリックすると登録が行われ、成功すると以下の画面になります。
    これでサーバー側の準備は終わりです。
  15. 同期グループを作成します。一つの同期サービスに複数の同期グループを作成して、異なる環境の同期を行うことも可能です。
    同期サービスの [概要] 画面で [同期グループ] をクリックします。
  16. 同期グループ名を入力し、サブスクリプションを選択します。
    [ストレージアカウントの選択] をクリックして表示される一覧から利用するストレージアカウントを選択し、同期対象のファイル共有を選択します。
  17. [作成] をクリックすると、以下のように同期グループが作成されます。
  18. 同期グループに同期対象となるサーバーを追加します。
    作成した同期グループをクリックし、[サーバーエンドポイントの追加] をクリックします。
  19. [サーバーエンドポイントの追加] 画面が表示されます。
    登録済みサーバーを選択し、[パス] 欄にサーバー上の同期対象のフォルダーのパスを絶対パスで入力します。
    • ここで [クラウドの階層化] を有効にすると、階層化ストレージを構成できます。
      階層化ストレージについて詳しくは「クラウドの階層化の概要」

    下記ページを参照してください。

  20. [作成] をクリックするとサーバーエンドポイントが追加され、同期が開始されます。
  21. サーバーで同期対象のフォルダーを開くと、Azure Files 共有フォルダーに保存されていたファイルが同期されています。
  22. またAzureポータルでファイル共有を確認すると、サーバーの同期対象フォルダーに有ったファイルがアップロードされています。

このように、Azure File Sync は比較的簡単な手順でサーバーのフォルダーとクラウド上のAzure Files ファイル共有を同期できます。
この機能を使うと、複数の拠点にあるサーバーの共有フォルダーをAzure Files と同期させ、常にどの拠点からも同じ最新のファイルが利用できるようにすることが可能です。
またAzure Files は強力で堅牢なAzure Backup とも連携できますので、オンプレミスのデータをクラウド化し、さらにクラウドバックアップを行うことも容易です。

NASのバックアップ

Azure File Sync エージェントは通常のWindows Server だけでなく、Windows Storage Server 2012/2016 やWindows Server IoT 2019/2022 for Storage でも利用可能です。
法人向けのNASにはWindows Storage Server やWindows Server IoT for Storage が搭載されているものが多いので、これらのNASを利用されている場合もAzure Files ファイル共有との同期によるクラウドバックアップや階層化ストレージの構成が可能です。
大がかりなバックアップ システムを導入することなくクラウドでの安全で堅牢なバックアップを実現できるので、中小規模の企業で専用ファイルサーバーではなくNASを利用される場合にも、Azure Files との連携を構成することがお勧めです。
Azure File Sync が利用可能なNASの導入につきましては、当社担当営業までご相談ください。

まとめ

Azure Files を利用すると、Azureクラウド上に共有フォルダーを作成して、Windows、Linux、macOS を実行しているクラウドまたはオンプレミスのコンピューターからアクセスできます。
Azure Files ではファイルサーバーの役割を持つコンピューターが不要なので、構成の簡素化や運用コストの削減に役立ちます。Azure Files の拡張機能であるAzure File Sync を利用するとオンプレミスのファイルサーバーとクラウド上のAzure Files を同期させて、階層化ストレージを構成することもできます。
オンプレミスのファイルサーバーやNASの場合、容量が不足した場合の拡張に大きなコストと手間を要する場合がありますが、Azure Files では容量の拡張も容易です。
デジタルトランスフォーメーション、業務のデジタル化、電帳法対応などでどんどん増え続ける企業のデータを安全かつ安価に保存でき、保存したデータの活用もしやすいAzure Files をぜひ試してみてください。
Azure Files を含むMicrosoft Azure の導入、Microsoft Azure でのシステム構築につきましては、ぜひ当社担当営業までご相談ください。

マルチクラウドの記事