自由気ままに書いちゃおう

好きなことをつらつらと・・・

【Azure】ストレージアカウントとディスクについて

今回はストレージアカウント、ディスクについてです。

■ちょっと寄り道

Azureポータルから「ストレージ」で検索すると以下の画面が表示されます。

f:id:guri2o1667:20210316161702p:plain


Azureポータルから「ディスク」で検索すると以下の画面が表示されます。

f:id:guri2o1667:20210316161800p:plain


ディスクで検索するとストレージアカウントが出てくるので、
何かしらの関係性があることは推測できます。

では次から本題です。まずはディスクからです。

■ディスク

ディスクと言った場合、多くは仮想マシンのディスクのことを指します。

仮想マシンのディスクはVHDというファイル形式を用いています。
VHDについては下記参照。

Windows VHD の Azure へのアップロードの準備 - Azure Virtual Machines | Microsoft Docs


OSがインストールされているディスク(OSディスクと呼ぶことが多い。Cドライブ)や、
OSデータ以外のデータが入っているディスク(データディスクと呼ぶことが多い。Cドライブ以外)で利用されているディスクのことです。

仮想マシンのディスクはSAN形式で接続しているため、
ネットワークを通してディスクへアクセスすることになります。

■ストレージアカウント

ストレージアカウントは、ディスクの保存先です。
(多少の語弊がありますが、ひとまずこの認識で大丈夫です。)


そのため、仮想マシンがディスクにアクセスするときには
ストレージアカウントを通してディスクにアクセスすることになります。
⇒ このことを、「ストレージアカウントが、ディスクの名前空間を提供している」といいます。


ここまでの説明で、ディスクとストレージアカウントの関係性については大丈夫だと思います。
※ストレージアカウントはディスクを保存する箱って感じです。

続いてストレージアカウントの種類についてです。

■ストレージアカウントの種類について

ストレージアカウントには種類があります。
① 汎用V1 ※基本的には使わず、V2を使う。
② 汎用V2 ※ほとんどの場合で適切
③ BLOG  ※今はこちらもほとんど使わず、代わりにV2を使う

Azureポータルからストレージアカウントを作成すると以下から選択することになります。

f:id:guri2o1667:20210316164026p:plain

詳細は下記。
※今時点では「ストレージアカウントの種類」列以外は気にしなくても大丈夫です。

ストレージ アカウントの概要 - Azure Storage | Microsoft Docs

f:id:guri2o1667:20210316164229p:plain


さて、ストレージアカウントの種類が複数あるため、
どれか一つを選択してストレージアカウントを作成することになります。
多くの場合は「汎用V2」で問題ありません。

そのため、ストレージアカウントの種類については特に悩むことは無く、
よく使うV2のみ覚えておけば良いかと。

■ストレージアカウントがサポートしているストレージサービスについて

このあたりからややっこしくなってきます。
前述の通り、汎用V2を選択した場合、サポートされているストレージサービスが決まっています。
ストレージサービスも複数あるため混乱しがちです。
※わかりにくい。。。

以降は汎用V2 に特化した記載です。

ストレージ アカウントの概要 - Azure Storage | Microsoft Docs
汎用V2 を選択した場合に利用できる(サポートされている)サービス
以下の通りです。
① BLOB (Azure BLOB)
② ファイル(Azure File。ファイル共有用。ファイルサーバ。)
③ キュー(Azure Queue)
④ テーブル(Azure Table)
⑤ ディスク(Azure Disk)
⑥ DataLakeGen2 ※一旦、ここでは割愛します

サービスってことを忘れがちなので覚えておきましょう。

■① BLOB(Azure BLOB)

BLOBの中でも更に3つに分かれています。。。
①-1 ブロックBLOB(テキストファイルとバイナリデータを格納。)
①-2 追加BLOB(ログ保管用)
①-3 ページBLOB(Azure仮想マシン用のディスクで利用。④と同じ)

各々の詳細は下記を参照ください。

ブロック blob、追加 blob、およびページ blob について - Azure Storage | Microsoft Docs


BLOBにはアクセス層と呼ばれるアクセスレベルがあります。
(S3のストレージクラスと同じ概念です)

ストレージ アカウントの概要 - Azure Storage | Microsoft Docs

■② ファイル(Azure File。ファイル共有用。ファイルサーバ。)

SMBプロトコルを介してアクセスすることができます。
つまりファイルサーバ(NAS)と似たようなことができます。
利用ケースは以下の通りです。

Azure Files の概要 | Microsoft Docs

■③ キュー(Azure Queue)

キューの格納サービスです。AWSのSQSに相当します。

Azure Queue Storage の概要 - Azure Storage | Microsoft Docs

■④ テーブル(Azure Table)

NoSQLデータ(キーバリュー形式)を利用したデータ格納サービスです。
※最近はAzureTableではなくAzureCosmosDBを使うようになっているので下火になってます。
仮想マシンの診断ログはAzure Tableを使っています。
Table Storage の概要 - Azure のオブジェクト ストレージ | Microsoft Docs

■⑤ ディスク(Azure Disk)

恐らくこれが混乱を招く原因です。
ページBLOB(①-3)のことです。。。
ディスクにも種類(管理ディスク、非管理ディスク)がありますが、ここでは割愛します。

■ストレージアカウントの冗長性について

ストレージアカウントを作成時、下記のようにデータのレプリケーション形式を選択します。

f:id:guri2o1667:20210316174022p:plain


詳細は下記を参照ください。

データの冗長性 - Azure Storage | Microsoft Docs


以上です。