マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

  • 必要なストレージの種類 (SSD or HDD) とディスクのサイズを指定できる。

unManage Disk (非管理ディスク)

Blobファイル

GPv1・GPv2

  • GPv1
    ストレージ層を選択する機能がなく、すべてがホット・ストレージ層扱いになる。
  • GPv2
    GPv1のBlobにホット/クール/アーカイブのアクセス層とストレージ・イベントなどを追加
  • 差異
    • パフォーマンス:差異なし。
    • 耐障害性:差異なし。
    • 課金体系:差異あり。
      Standardディスクを使用する場合は費用の差異がある。

Standard HDD/Premium SSD

  • Standard HDD:コスト最小化
  • Premium SSD:高パフォーマンスなSSDベースのストレージ

Managed Disk (管理用ディスク)

Blobファイルが適切に隠蔽・自動管理される。
(ストレージ・アカウントをAzureが管理し、ユーザが意識する事が無い)

  • ストレージアカウントのIOPS上限などを意識する必要はなくなる。
  • バックアップやスナップショット、イメージなど様々な機能があり、UIからの操作性に優れる。
  • LRSではなく、可用性セットを組み合わせて使用することで、
    可用性セットの VM のディスクが、単一障害点にならないように相互に十分に分離される。

Standard HDD

  • バックアップなど、費用対効果に優れたHDDベース
  • シングルVMだと、95%のSLA
  • 例外的に、地理冗長(GRS/RA-GRS)を使用可能。

Standard SSD

  • Webサーバ、開発など、費用対効果に優れたSSDベース
  • シングルVMでも、99.5%のSLA

Premium SSD

  • スループットを高める、運用環境向けのSSDベース
  • シングルVMでも、99.99%のSLA
  • 仮想マシンのシステム・ドライブはコチラを既定で考える。
    • 特に500IOPSよりも高いIOPSが必要なシステム
    • 64GB以下のサイズだとStandard HDDよりもパフォーマンスが悪くなる場合がある。
    • 可用性セットを組まなくてもSLAの対象となる。

Ultra ディスク

I/O 集約型ワークロード向けのSSDベース

課金

  • 管理ディスクの方が、高額になりがち。
  • 中途半端なサイズで作成しても課金は同じ

unManage Disk (非管理ディスク)

  • Azure Storage上のディスク形式
  • 課金
  • Standardディスクを使用する場合は、
    GPv1・GPv2で、費用の差異がある。
    • GPv1は、容量確保型、確保容量で課金される。
    • GPv2は、
      ・使った(書き込んで専有した)容量だけ課金される。
      ・その代わりに、トランザクション(I/O)の課金がある。
      ・また、GRS/RA-GRSのみデータ転送に対する課金がある。
  • Premiumディスクは、容量確保型、確保容量で課金される。
  • VM作成時に、管理ディスクを使用 [いいえ] を選択する。
  • IDは、URLで、「https://・・・.windows.net/・・・」などとなる。

Managed Disk (管理用ディスク)

  • Azure Storage上でAzure Disk Storage
  • 容量確保型、確保容量で課金される。
  • VM作成時に、管理ディスクを使用 [はい] を選択する。
  • IDは、リソースIDで、「/subscriptions/・・・」となる。

VMの管理用ディスクを切り替える。

VMで使用している管理用ディスク非管理ディスクに切り替える。

概要

VMからデタッチした管理用ディスク(インストール・ディスク)をVHD化、
VHD非管理ディスク(Azureのディスク ストレージ)に保存して、VMへアタッチ。

  1. 管理ディスクからVHDを取り出す
    1. 下を参考に管理用ディスクをエクスポート。
    2. URLが表示されるので、仮想マシンと同じリソース・グループに、
      新規にストレージ・アカウント & コンテナを作成して、VHDをコピー。
      # azcopy とか 
      # Start-AzureStorageBlobCopy とか 
      # az storage blob copy とか
  2. VMを削除して、VHDから作成
  3. 作成したVMに問題なかったら、もとの管理用ディスクを削除

スクリプト

概要

  • 以下のように実行する。

管理ディスクの実容量を確認する

BLOB の SASトークン URL
を使用して管理ディスクの実容量を確認する。

ps1ファイル

使用方法

  • Azureポータルで、管理ディスクをエクスポートして BLOB Urlを得る。

    Azureポータル >>「ディスク」>>「ディスク名」>> [エクスポート] >> [URLの生成]

  • 生成されたURLを指定して、実行すると、
    .\Get-BlobBytes.ps1 -url 'https://mdxxxxxxx.blob.core.windows.net/・・・'
  • 下の様な表示を確認できる。
    BlobName    : xxxxxxxxxxx
    BlobLength  : nnnnnnnnnnn   <= 割り当てられたサイズ (GiB)
    BlobGB      : nn.nn
    ActualBytes : nnnnnnnnnn    <= 実容量のサイズ
    ActualGB    : nn.nn            (GB表記)

補足説明

  • Page BLOBのUrl
  • 管理ディスクからエクスポートされたUrlは、変換されたPage BLOBのUrlになる。
  • 最後に、Azureポータルの [x エクスポートのキャンセル] を
    クリックして、SASトークン URLを取り消す(無駄な共有はしない)。
  • 従って、非管理ディスクに変換した場合の見積もりは以下で行う。
    • Page BLOBをActualGBの容量使用する見積もりを行う。
    • トランザクション課金の見積もりを行う(¥0.04032 / 10,000 トランザクション(2018/02/08))。

VHDに変換する

  • 既存のVHDファイルを使ったVM作成は、Azureポータルではできないので、スクリプトが必要。
  • スクリプトでは、管理ディスクのUrlを使用して、Azure Storageに VHDファイルとしてコピーする。

ps1ファイル

使用方法

以下のように実行する。

  • Azureポータルから、
    • VM名
    • リソース・グループ名

を確認する。

  • サブスクリプション
    • 名前を確認、
      Get-AzureRmSubscription
  • 選択し、
    Select-AzureRmSubscription -SubscriptionName サブスクリプション名
  • リソース・グループ名、VM名を指定して実行。
    .\rm-convert-vm-manageddisk-to-vhd.ps1 -ResourceGroupName リソース・グループ名 -vmName VM名

補足説明

  • 上記を実行後に表示される管理ディスクを削除する。
  • 非同期操作はポータル表示との整合性が取れず、
    「VM → 管理ディスクの関連付け」が削除されていないように見えることがある。
  • この場合、管理ディスクの「所有者 VM」欄を確認し
    「管理ディスク → VMの関連付け」を確認すると良い。
  • このように、IaaCは、
    ポータルでサポートされてない操作を実装するケースが多そうだが、
    そもそもサポートされない操作には非同期である操作が多く、
    実装上の問題( ≒ ポータル表示との整合性の問題)があるもよう。

参考

microsoft.com

Microsoft Azure

Microsoft Docs


Tags: :インフラストラクチャ, :クラウド, :Azure


添付ファイル: filerm-convert-vm-manageddisk-to-vhd.ps1 237件 [詳細] fileGet-BlobBytes.ps1 246件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2021-05-13 (木) 18:21:58 (205d)