Azure ストレージ アカウントについて

ヒント

この記事の内容は、従来の Basic 版の Azure Table Storage を対象としています。 ただし、現在、Azure Table Storage の Premium 版がパブリック プレビュー中です。スループットが最適化されたテーブル、グローバル配布、自動のセカンダリ インデックスが提供されています。 詳細を確認し、新しい Premium 版を使ってみるには、Azure Cosmos DB の Table API に関する記事を参照してください。

概要

Azure ストレージ アカウントは、Azure Storage データ オブジェクトの格納およびアクセスのための一意の名前空間を提供します。 ストレージ アカウント内のすべてのオブジェクトは、グループとしてまとめて課金されます。 既定では、アカウントのデータはアカウント所有者だけが使用できます。

ストレージ アカウントには、次の 2 種類があります。

汎用ストレージ アカウント

汎用ストレージ アカウントを使用すると、1 つのアカウントにあるテーブル、キュー、ファイル、BLOB、Azure 仮想マシン ディスクなどの Azure Storage サービスにアクセスできます。 この種類のストレージ アカウントには、次の 2 つのパフォーマンス レベルがあります。

BLOB ストレージ アカウント

BLOB ストレージ アカウントとは、Azure Storage に BLOB (オブジェクト) として非構造化データを格納するための特殊なストレージ アカウントです。 BLOB ストレージ アカウントは、既存の汎用ストレージ アカウントと同様で、現在使用されているすべての優れた耐久性、可用性、スケーラビリティ、およびパフォーマンス機能を共有します。たとえば、ブロック BLOB と追加 BLOB の 100% の API 整合性などです。 ブロックまたは追加 Blob Storage のみを必要とするアプリケーションでは、BLOB ストレージ アカウントを使用することをお勧めします。

メモ

BLOB ストレージ アカウントは、ブロック BLOB と追加 BLOB のみをサポートします。ページ BLOB はサポートしません。

BLOB ストレージ アカウントでは、アクセス レベル属性を公開します。この属性は、アカウントの作成時に指定し、必要に応じて後で変更できます。 アクセス層には次の 2 つの種類があり、データ アクセス パターンに応じて指定することができます。

  • ホット アクセス レベル。ストレージ アカウント内のオブジェクトへのアクセス頻度が高いことを示します。 より低いアクセス コストで、データを格納することができます。
  • クール アクセス レベル。ストレージ アカウント内のオブジェクトへのアクセス頻度が低いことを示します。 より低いデータ ストレージ コストで、データを格納することができます。

データの使用パターンが変化した場合は、いつでもこれらのアクセス層を切り替えることができます。 アクセス層を変更すると、追加料金が発生することがあります。 詳細については、 BLOB ストレージ アカウントの価格と課金 に関するセクションを参照してください。

BLOB ストレージ アカウントの詳細については、「 Azure Blob Storage: クール層とホット層」を参照してください。

ストレージ アカウントを作成するには、事前に Azure サブスクリプション (多様な Azure サービスにアクセスするためのプラン) が必要です。 Azure を初めて使うときは、 無料アカウントで試用することができます。 サブスクリプション プランの購入時には、さまざまな 購入オプションから選択できます。 MSDN サブスクライバーには、毎月、Azure Storage を含む Azure サービスに使用できる無料使用分のクレジットが与えられます。 ボリューム価格については、「 Azure Storage 料金 」を参照してください。

ストレージ アカウントの作成方法の詳細については、「 ストレージ アカウントの作成 」を参照してください。 1 つのサブスクリプションに対し、最大 100 の一意の名前を持つストレージ アカウントを作成できます。 ストレージ アカウントの制限の詳細については、「 Azure Storage のスケーラビリティおよびパフォーマンスのターゲット 」を参照してください。

ストレージ アカウントの課金

Azure Storage は、ストレージ アカウントに基づいた使用量によって課金されます。 ストレージのコストが基づいている要素は、リージョン/場所、アカウントの種類、ストレージ容量、レプリケーション スキーム、ストレージ トランザクション、および送信データ転送です。

  • リージョンとは、自分のアカウントがベースとしている地理的領域を指します。
  • アカウントの種類は、汎用的なストレージ アカウントと BLOB ストレージ アカウントのどちらを使用しているかを表します。 BLOB ストレージ アカウントでは、アクセス層もアカウントの課金モデルを決める要素です。
  • ストレージ容量とは、データの保存に使用するためにストレージ アカウントに割り当てられた容量を指します。
  • レプリケーションによって、1 回に保持するデータのコピー数や、データの場所が決定されます。
  • トランザクションには、Azure Storage に対するすべての読み取り操作と書き込み操作が含まれます。
  • 送信データ転送とは、Azure リージョンから転送されたデータを意味します。 他のリージョンで動作しているアプリケーションがストレージ アカウント内のデータにアクセスした場合は、送信データ転送として課金されます (Azure サービスでは、同じデータ センター内のデータとサービスをグループ化して、送信データ転送処理とそれに伴う料金を削減または不要にする手順が用意されています)。

アカウントの種類、ストレージ容量、レプリケーション、およびトランザクションに基づく詳細な料金情報については、「 Azure Storage 料金 」ページを参照してください。 送信データ転送の価格の詳細については、「 データ転送の価格の詳細 」を参照してください。 コストの見積には、 計算ツール をご利用ください。

メモ

Azure の仮想マシンを作成する場合、デプロイ場所にまだストレージ アカウントがない状況では、その場所に自動的にストレージ アカウントが作成されます。 このため、使用する仮想マシンのディスク用にストレージ アカウントを作成する場合、必ずしも以下の手順に従う必要はありません。 ストレージ アカウント名は仮想マシン名を基にして付けられます。 詳細については、 Azure Virtual Machines のドキュメント を参照してください。

ストレージ アカウント エンドポイント

Azure Storage に格納するすべてのオブジェクトには一意の URL アドレスが設定されています。 ストレージ アカウント名は、そのアドレスのサブドメインになります。 サブドメインとドメイン名の組み合わせは、各サービスに固有であり、ストレージ アカウントの エンドポイント になります。

たとえば、ストレージ アカウントの名前が mystorageaccount の場合、ストレージ アカウントの既定のエンドポイントは次のようになります。

  • Blob service: http://mystorageaccount.blob.core.windows.net
  • Table service: http://mystorageaccount.table.core.windows.net
  • Queue サービス: http://mystorageaccount.queue.core.windows.net
  • File サービス: http://mystorageaccount.file.core.windows.net
メモ

BLOB ストレージ アカウントは、BLOB サービス エンドポイントのみを公開します。

ストレージ アカウント内のオブジェクトにアクセスするための URL は、ストレージ アカウント内のオブジェクトの場所をエンドポイントに追加して作成します。 たとえば、BLOB アドレスは、http://mystorageaccount.blob.core.windows.net/mycontainer/myblob のような形式になります。

また、カスタム ドメイン名もストレージ アカウントを使用するように構成することができます。 従来のストレージ アカウントの詳細については、「 Blob Storage エンドポイントのカスタム ドメイン名の構成 」を参照してください。 Resource Manager ストレージ アカウントの場合、この機能は Azure ポータル でサポートされていませんが、PowerShell で構成することができます。 詳細については、「 Set-AzureRmStorageAccount 」を参照してください。

ストレージ アカウントの作成

  1. Azure ポータルにサインインします。
  2. ハブ メニューで、[新規] -> [ストレージ] -> [ストレージ アカウント] の順にクリックします。
  3. ストレージ アカウントの名前を入力します。 Azure Storage 内のオブジェクトを指すためにストレージ アカウント名がどのように使用されるかについては、「 ストレージ アカウント エンドポイント 」を参照してください。

    メモ

    ストレージ アカウント名の長さは 3 ~ 24 文字で、数字と小文字のみを使用できます。

    ストレージ アカウント名は Azure 内で一意である必要があります。 選択したストレージ アカウント名が既に使用されているかどうかが、Azure ポータルによって示されます。

  4. 使うデプロイメント モデル ([Resource Manager] または [クラシック]) を指定します。 [リソース マネージャー] が、推奨されるデプロイ モデルです。 詳細については、「 リソース マネージャー デプロイと従来のデプロイを理解する」を参照してください。

    メモ

    BLOB ストレージ アカウントを作成するには、Resource Manager デプロイ モデルを使用する必要があります。

  5. ストレージ アカウントの種類として、[汎用] または [BLOB ストレージ] を選択します。 [汎用] です。

    [汎用] を選択した場合は、パフォーマンス レベルとして [Standard] または [Premium] を指定します。 既定値は [Standard]です。 Standard Storage アカウントと Premium Storage アカウントの詳細については、「Microsoft Azure Storage の概要」と「Premium Storage: Azure 仮想マシン ワークロード向けの高パフォーマンス ストレージ」を参照してください。

    [BLOB ストレージ] を選択した場合は、アクセス層として [ホット] または [クール] を指定します。 既定値は [ホット]です。 詳細については、「 Azure Blob Storage: クール層とホット層 」を参照してください。

  6. ストレージ アカウントのレプリケーション オプション ([LRS][GRS][RA-GRS]、または [ZRS]) を選択します。 既定値は [RA-GRS]です。 Azure Storage のレプリケーション オプションの詳細については、 Azure Storage のレプリケーションに関するページをご覧ください。
  7. 新しいストレージ アカウントを作成するサブスクリプションを選択します。
  8. 新しいリソース グループを指定するか、既定のリソース グループを選択します。 リソース グループの詳細については、「Azure Resource Manager の概要」をご覧ください。
  9. ストレージ アカウントの地理的な場所を選択します。 どのリージョンでどのサービスを使用できるかについては、「 Azure のリージョン 」を参照してください。
  10. [作成] をクリックしてストレージ アカウントを作成します。

ストレージ アカウントの管理

アカウント構成の変更

ストレージ アカウントの作成後、アカウントで使用するレプリケーション オプションの変更や、BLOB ストレージ アカウントのアクセス層の変更など、そのアカウント構成を変更できます。 Azure Portal でお使いのストレージ アカウントに移動し、[すべての設定][構成] の順にクリックすると、アカウント構成を表示したり変更したりできます。

メモ

ストレージ アカウントの作成時に選択したパフォーマンス レベルによっては、一部のレプリケーション オプションが使用できない場合があります。

レプリケーション オプションを変更すると価格が変更されます。 詳細については、「 Azure Storage 料金 」を参照してください。

BLOB ストレージ アカウントでは、アクセス層を変更すると、料金の変更の他に、変更に対する課金が発生することがあります。 詳細については、 BLOB ストレージ アカウントの価格と課金 に関するセクションを参照してください。

ストレージ アクセス キーの管理

ストレージ アカウントを作成するときに、Azure によって 2 つの 512 ビット ストレージ アクセス キーが生成されます。これらは、ストレージ アカウントにアクセスするときに認証の目的で使用されます。 Azure によって 2 つのストレージ アクセス キーが提供される結果、ストレージ サービスやサービスへのアクセスを中断することなく、これらのキーを再生成できます。

メモ

ストレージ アクセス キーは、他の人と共有しないことをお勧めします。 アクセス キーを入力しないでストレージ リソースにアクセスする場合は、 Shared Access Signatureが利用できます。 Shared Access Signature を使用すると、指定した期間、指定した権限で、アカウント内のリソースにアクセスできるようになります。 詳細については、「 Using Shared Access Signatures (SAS) (Shared Access Signature (SAS) の使用) 」を参照してください。

ストレージ アクセス キーの表示とコピー

Azure Portal で、お使いのストレージ アカウントに移動し、[すべての設定][アクセス キー] の順にクリックすると、アカウントのアクセス キーを表示、コピー、再生成できます。 また、 [アクセス キー] ブレードには、コピーしてアプリケーションで使用できるプライマリ キーとセカンダリ キーを使用してあらかじめ構成された接続文字列も含まれています。

ストレージ アクセス キーの再生成

ストレージ接続のセキュリティを維持するために、ストレージ アカウントのアクセス キーを定期的に変更することをお勧めします。 アクセス キーは 2 つ割り当てられるため、一方のアクセス キーでストレージ アカウントに接続したまま、もう一方のアクセス キーを再生成できます。

警告

アクセス キーを再生成すると、そのストレージ アカウントに依存する Azure のサービスと独自のアプリケーションに影響する場合があります。 アクセス キーを使用してストレージ アカウントにアクセスするすべてのクライアントを更新し、新しいキーが使用されるようにする必要があります。

メディア サービス - ストレージ アカウントに依存するメディア サービスがある場合は、アクセス キーを再生成した後で、そのキーをメディア サービスと再同期する必要があります。

アプリケーション - ストレージ アカウントを使用する Web アプリケーションまたはクラウド サービスがある場合は、キーを切り替えない限り、キーを再生成すると接続が失われます。

ストレージ エクスプローラー - いずれかの ストレージ エクスプローラー アプリケーションを使用している場合は、通常、それらのアプリケーションで使用されるストレージ キーを更新する必要があります。

次に、ストレージ アクセス キーの交換プロセスを示します。

  1. ストレージ アカウントのセカンダリ アクセス キーを参照するようにアプリケーション コードの接続文字列を更新します。
  2. ストレージ アカウントのプライマリ アクセス キーを再生成します。 [アクセス キー] ブレードで、[Key1 の再生成] をクリックし、確認画面で [はい] をクリックして新しいキーを生成します。
  3. 新しいプライマリ アクセス キーを参照するようにアプリケーション コードの接続文字列を更新します。
  4. 同様に、セカンダリ アクセス キーを再生成します。

ストレージ アカウントの削除

使わなくなったストレージ アカウントを削除するには、 Azure ポータルでストレージ アカウントに移動し、 [削除]をクリックします。 ストレージ アカウントを削除すると、アカウント内のすべてのデータを含む、アカウント全体が削除されます。

警告

削除したストレージ アカウントを復元することも、削除前にアカウントに含まれていたコンテンツを取得することもできません。 アカウントを削除する前に、保存する必要のあるデータを必ずバックアップしてください。 これはアカウントのどのリソースにも当てはまります。BLOB、テーブル、キュー、またはファイルを削除すると、完全に削除されます。

Azure 仮想マシンに関連付けられているストレージ アカウントを削除するには、最初にすべての仮想マシン ディスクが削除されていることを確認する必要があります。 最初に仮想マシン ディスクを削除しないと、ストレージ アカウントを削除しようとしたときに、次のようなエラー メッセージが表示されます。

Failed to delete storage account <vm-storage-account-name>. Unable to delete storage account <vm-storage-account-name>: 'Storage account <vm-storage-account-name> has some active image(s) and/or disk(s). Ensure these image(s) and/or disk(s) are removed before deleting this storage account.'.

ストレージ アカウントでクラシック デプロイメント モデルが使用されている場合は、 Azure ポータルで以下の手順を実行して、仮想マシン ディスクを削除することができます。

  1. クラシック Azure ポータルに移動します。
  2. [Virtual Machines] タブに移動します。
  3. [ディスク] タブをクリックします。
  4. データ ディスクを選択し、[ディスクの削除] をクリックします。
  5. ディスク イメージを削除するには、[イメージ] タブに移動し、アカウントに保存されているイメージを削除します。

詳細については、 Azure Virtual Machines のドキュメントを参照してください。

次のステップ