Azure Files REST API

Azure Filesは、SMB や NFS などの業界標準のファイル システム プロトコルを使用してアクセス (マウント) できるホスト型クラウド ファイル共有を提供します。 SMB または NFS を使用してコンピューターにファイル共有をマウントすると、オペレーティング システムによってローカル ファイル システムの API 要求がリダイレクトされます。 リダイレクトには、.NET System.IO インターフェイスまたは Python のオープン、読み取り、または書き込みメソッドを使用して行うローカル API 要求が含まれます。 つまり、これらのアプリケーションのユーザーは特別な操作を行う必要がなく、データがローカル ストレージではなくリモート ファイル共有上にあることを知る必要もありません。

Azure Filesは、多くの場合、FileREST API と呼ばれる REST API も提供します。 これは、Azure ファイル共有に格納されているデータにアクセスする別の方法を提供します。 SMB と NFS を使用すると、ネイティブ ファイル システム API を介してリモート ファイル共有に透過的にアクセスできますが、FileREST プロトコルでは、ファイル共有データにアクセスするための別の方法が提供されます。

FileREST API を使用するには、FileREST HTTPS エンドポイントに対して HTTPS 要求を作成します。 HTTPS 要求を自分で作成するコードを記述することもできますが、FileREST API を使用する方法は Azure SDK を使用することです。 これらの SDK は、C#、Java、Python、JavaScript、Go などの一般的な言語用の慣用言語 API を提供します。

FileREST API はAzure Files専用に設計されているため、SMB または NFS 経由ではアクセスできないAzure Filesの機能にアクセスできます。 また、SMB や NFS を使用するよりも、コピーなどの特定の操作をより効率的に実行することもできます。

HTTPS のステートレスな性質により、FileREST API は、多くの Azure ファイル共有にアクセスする必要があるクラウド サービスまたはアプリケーションに役立ちます。 たとえば、付加価値サービスまたはアプリケーションを Azure ファイル共有にアタッチして、機能を追加できます。 これらのサービスまたはアプリケーションには、ウイルス対策、バックアップ、データ管理、またはレプリケーション製品が含まれる場合があります。 Azure File SyncとAzure Backupは、FileREST API を広範に使用して顧客所有の Azure ファイル共有に価値を付加する注目すべき Microsoft サービスです。

特に顧客にサービスを提供する場合は、付加価値のあるサービスまたはアプリケーションを構築する場合は、FileREST API の使用を検討してください。 基幹業務アプリケーション (特にユーザーがマウントされた Azure ファイル共有に対して使用するアプリケーション) を構築する場合は、SMB/NFS または FileREST を使用できます。 ただし、SMB または NFS を使用すると、これらのプロトコルを使用するとネイティブ ファイル システム API を使用できるため、パスが簡単になる場合があります。

ネイティブ ファイル システム API で記述された既存のアプリケーションがある場合は、Azure Filesを利用するために書き換える必要はありません。 Azure Filesの重要な価値提案は、SMB または NFS を使用してネイティブ ファイル システム API を公開することです。

デプロイ、ネットワーク、ID 構成など、Azure Filesの詳細については、次を参照してください。

コントロール プレーン

Azure では、コントロール プレーンは Azure Resource Manager 経由で提供されます。これにより、顧客が管理する Azure リソースを公開するための一般的な方法が提供されます。 最上位の管理単位はストレージ アカウントです。 ストレージ アカウントは、Azure Filesおよびその他のストレージ サービス (Azure Blob Storage など) で追跡されるリソースです。

ストレージ アカウントは、名前空間 Microsoft.Storageを持つストレージ リソース プロバイダーによって管理されます。 ストレージ リソース プロバイダーは、ストレージ アカウントにバンドルされているストレージ サービスの管理を可能にする子 リソース (プロキシ リソース) の管理も公開します。 Azure Filesには、次の 2 つの関連するプロキシ リソースがあります。

  • FileService リソース。 ストレージ アカウント内のすべてのファイル共有に適用されるAzure Filesに固有の設定を提供します。 リソースは FileService ストレージ アカウントの子です。 ストレージ アカウントには、常にリソースが 1 つだけ FileService です default

  • FileShare リソース。 ファイル共有またはファイル共有のスナップショットを表します。 リソースは FileShare リソースの FileService 子であり、無限の数のファイル共有を含めることができます。

    リソースには FileService 無限の数の FileShare リソースを含めることができますが、ストレージ アカウント内のすべてが I/O、帯域幅、およびその他の制限の定義済みのプールを共有するため、非常に多くのリソースを使用することはお勧めしません。 詳細については、「Azure Files のスケーラビリティおよびパフォーマンスのターゲット」を参照してください。

コントロール プレーン API を呼び出す方法については、次を参照してください。

オブジェクトにFileShare対するFileService操作は、データ プレーンを介して行うこともできます。 これは、Azure Resource Manager Azure Files前の成果物です。 これらの API は完全にサポートされていますが、次の理由から、ストレージ リソース プロバイダー API を使用してAzure Filesを管理することをお勧めします。

  • Azure Resource Manager経由で公開される操作では、認証と承認に Azure Active Directory (Azure AD) が使用されるため、ロールベースのアクセス制御 (RBAC) を使用してAzure Filesを管理できます。 Azure AD サービス プリンシパルを使用してこれらの API をプログラムで呼び出すアプリケーションまたはサービスを承認できます。

  • AZURE Resource Manager API は、REST API を介して直接呼び出すか、SDK を介して命令的に呼び出すことができます。 または、Azure テンプレートを使用してデプロイする必要があるリソースを宣言することで、宣言的に呼び出すことができます。 (サービス デプロイなど) 一緒に繰り返し作成する必要があるリソースの場合、テンプレートを使用すると、必要な作業が大幅に簡略化されます。

ストレージ リソース プロバイダーを使用してストレージ リソースを管理することをお勧めしますが、FileREST データ プレーン管理 API を使用すると、高スケールが必要な場合にパフォーマンスが向上します。 このような場合の例として、同じストレージ アカウント内に何千ものファイル共有を作成または変更するワークロードがあります。

データ プレーン

Azure Filesは、非構造化データの階層ファイル システムを提供します。 FileREST API は、ファイル システム空間の 2 つの重要なオブジェクト (ファイルとディレクトリ) をモデル化します。 FileREST API を呼び出す方法については、以下を参照してください。

関連項目