Azure

使ったことない人向けのAzure用語

どうも。
Azureがあまりにも意識の高い言葉を使うので、ぼくみたいな情弱でもわかるように翻訳してみました。
自分はAzure初心者なので、間違っている可能性大です。遠慮なく編集リクエストを送ってください。

サービスプリシンパル

アプリケーション登録したときにもらえます。
Ansibleや自作のツールから、Azureを操作(VMの作成とか)するときに必要です。

中身は3つの情報があります。
一つがアプリケーションID。
もう一つはアプリケーションシークレット。
最後がテナント。

テナント

テナントとは、Azure や Office 365 などの Microsoft クラウド サービスに組織がサインアップしたときに、その組織専用に与えられる Azure AD ディレクトリのインスタンスです。

よく意味がわかりませんが、つまりは組織を認識するIDらしいです。つまり、Azureを契約している会社や団体一つ一つにあるんですかね。

サブスクリプション

請求単位、らしいです。
大きな会社だと、複数のサブスクリプションがあり、課金が必要な操作(VM追加とか)をする場合にはどのサブスクリプションで実行するか選びます。

サブスクリプションごとに、引き落とされる口座や金額の確認、領収書、割引などをわけられます。

「極論で言えば、どいつの懐から引き落とすか」を選べます。

リソースグループ

VMとかネットワークなどをまとめる単位です。
プロジェクトごと、部門ごとなど、組織によって使い方はさまざまだと思います。
ただ、リソースグループをまたいでの通信・構成は一切できません。

ネットワークセキュリティグループ(NSG)

すごいファイアウォールです。
どのポート向けのパケットを通すか、どのアドレスだと弾くか、みたいなことを設定できます。
また、NSGは、「VMのNIC」、「仮想マシン自体」、「ネットワークのサブネット」の3つの好きなところに設置できます。
従来のiptablesやネットワークスイッチでやることを、全部ファイアウォールという概念で済ませるようにしたものですね。

ストレージアカウント(ストレージ)

Amazon S3みたいなやつです。BLOB的なオブジェクトストレージとして使ったり、nosqlやメッセージキューをぶち込む機能があります。

ストレージアカウント種類

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

  • Blobストレージアカウント: ブロックBlob専用のストレージアカウント
  • GPv1アカウント(汎用v1): Blob,File,Queue,Tableのすべてを使えるストレージアカウント
  • GPv2アカウント(汎用v2): GPv1に加え、クールストレージ、アーカイブストレージといった層の選択が使えるようになります。

現在のAzureでは、GPv2への移行が進められているようです。今BlobストレージアカウントやGPv1アカウントを使う意味はないそうです。価格もGPv2が安いとのこと。

扱えるデータの種類

さきほど紹介した、BlobやFileなどの用語の説明です。GPv2のストレージアカウントではこれらすべてを使用できます。

  • Blob Storage: Blobオブジェクトを保存する用。
  • File Storage: ファイル保存用。sambaでアクセスできる共有ディスク。NASみたいなもの)
  • Queue Storage: メッセージキュー。アプリケーション間通信に使用されるあれです)
  • Table Storage: NoSQLのような、キーバリュー型の保管ができる

また、Blob Storageにはさらに2つの種類があります。

  • ページBlob: データが超頻繁に読み書きされるものに向いているらしいです。後述するVMのディスクはこのページBlobに保管されるようです。
  • ブロックBlob: 1つのデータは細かく分割されて分散保管されるようです。画像とか静的ファイルみたいな、読み取られることが多いデータに向いているとのこと。
  • 追加Blob: だんだん増えていくデータが多いデータに向いているとのこと。

ストレージ層

ストレージアカウント全体や、個別のBlob Storageの中のBlobごとに、ストレージ層というものを選択できます。
層ごとに、アクセス速度や料金が違うようです。

  • ホットストレージ層: 頻繁にアクセスされるような普通のデータ向けです。
  • クールストレージ層: 30日以上更新されないデータ向けです。
  • アーカイブストレージ層: 180日以上更新されないデータ向けです。これはBlob単体にのみ適用でき、ストレージアカウント全体には適用できないとのこと。また読み出しには最大15時間ほどかかるらしいです(!)

GPv1は、ストレージ層を選択する機能がなく、すべてがホットストレージ層扱いになるようです。

データ冗長オプション

  • LRS(ローカル冗長ストレージ): 1つのデータセンターで冗長化される
  • ZRS(ゾーン冗長ストレージ): 複数のデータセンターで(ry
  • GRS(Geo冗長ストレージ):複数のリージョンで(ry
  • RA GRS(読み取りアクセスの Geo 冗長ストレージ): GRSで、複数のリージョンで同時にreadできるようにして速度あげるバージョン(raid 1的な)

さらに、速度が2つの種類があります。

  • Standard: HDD並のアクセス速度
  • Premium: SSD並のアクセス速度

現状、Premiumを使えるのはLRSだけのようです。

ディスク

VMに後から追加できるディスクです。HDDかSSDかを選ぶことができ、VMからは/dev/sdb、/dev/sdcのように認識されます。
ディスク自体は、vhdファイルになっており、ストレージアカウントのBLOB Storageにオブジェクトとして保管されています。
そのため、VMに追加ディスクを追加する場合には、追加ディスクをどのストレージアカウントにおいておくか選ぶ必要があります。

種類

  • 非管理対象ディスク: 従来のディスク。先程の説明のように、ストレージアカウントを指定してその中にvhdファイルができる。
  • 管理ディスク(Manage Disk): 最新のディスク。ストレージアカウントを作成・指定しなくていい。

ストレージアカウントの作成や理解は結構めんどくさいため、ディスクは全部管理ディスクにして問題ないです。
Azure側も徐々に非管理ディスクを管理ディスクにすることを推奨しているよう。