Azure VMの全体像と仕組みを理解しよう
Windows Azure Virtual Machineは、VHD(Virtual Hard Disk/仮想ハードディスク)をWindows Azure StorageのBlobにアップロードし、BlobにあるVHDを使用して仮想マシンを稼働させます。
Windows Azure Virtual Machineで、仮想マシンを作成する方法には次の3通り考えられます。
- マイクロソフトとマイクロソフトのパートナーがあらかじめ用意しているイメージをギャラリーから選択して仮想マシンを作成する方法
- オンプレミスもしくは、サードパーティのベンダーが提供するクラウドからVHDをアップロードする方法
- カスタマイズした仮想マシンをキャプチャして作成したオリジナルのイメージから仮想マシンを作成する方法、
VMロールでは、オンプレミス環境でVHDを必ず用意する必要がありました。Windows Azure Virtual Machineでは、AWSのEC2サービスと同じようにあらかじめいくつかのイメージが提供されています。一方で、オンプレミスのHyper-Vで使用しているVHD(仮想マシン)をWindows Azure Virtual Machine上で使用することもできます。
すぐに仮想マシンを利用できるギャラリーの仮想イメージ
ギャラリーで提供されるイメージには、マイクロソフトが提供するWindows Serverのイメージと、マイクロソフトのパートナー(注6)が提供するLinuxのイメージの2種類あります。
2012年9月段階でギャラリーで提供されているイメージは次のとおりです。
- Microsoft BizTalk Server 2010 R2 CTP
- Microsoft SQL Server 2012 Evaluation Edition
- Windows Server 2008 R2 SP1, July 2012
- Windows Server 2008 R2 SP1, June 2012
- Windows Server 2012, August 2012
- OpenLogic CentOS 6.2(OpenLogic提供)
- SUSE Linux Enterprise Server(SUSE提供)
- Ubuntu Server 12.04 LTS(Canonical提供)
- openSUSE 12.1(SUSE提供)
Windows Serverに記載されている「July 2012」は、Windows Updateの適用時期を示しています。「July 2012」と記載されている場合は、2012年7月のWindows Updateまで適用されたイメージであることを示しています。
Windows Azure上でLinux仮想マシンをサポートするマイクロソフトのパートナーについては、Linux virtual machinesを参照してください。
OS DiskとData DiskとBlobと非永続化領域
仮想マシンのデータ領域には2種類のデータ領域が用意されていて、ギャラリーから仮想マシンを作成すると2種類の領域がアタッチされます。
Windowsイメージの場合はCドライブとDドライブ、Linuxイメージの場合は、/dev/sdb1マウントされています。Cドライブは、Blobに保存されているVHDです。Dドライブは、仮想マシンが起動しているラックサーバー上の物理ストレージです(図2)。
Windows Azure Virtual Machineの仮想マシンのディスクは、Windows Azure StorageのページBlobに格納されます。Windows Azure Virtual Machineのギャラリーから仮想マシンを作成すると、仮想マシン作成時に指定するストレージアカウントに書き込み可能なOS用のイメージ(VHD)コピーが作成されます。仮想マシンのVHDは、同じデータセンター内で複製され3重化されます。さらにオプションで、同じリージョン内の別のデータセンター内にジオ・レプリケーションして3重化複製でき、6重化することもできます。Windows Azure Storageに格納しているので、既存のAPIを使用している既存のアプリケーションで簡単にアクセスすることができます。
Dドライブは、Windows Azure Storageには書き出されないので、一時領域として考えるべきもので、非永続化領域となっています。推奨される使用方法の一つは、永続化する必要のないデータを含んだOSページングファイルです。 Windows Azureではデフォルトで設定さています。
オペレーティングシステムのディスクは、最大で127GBです。それぞれの仮想マシンにはデータディスクを追加でアタッチでき、データディスクごとに最大1TB使用できます。追加できるデータディスクの個数は仮想マシンのサイズに依存します。例えば、Extra Largeサイズの仮想マシンの場合、データディスクを最大16個アタッチできます(表1)。1つのデータディスクの最大容量は1TBなので、16個アタッチすると最大16TBまで仮想マシンにアタッチできます。
仮想マシンサイズ | CPUコア数 | メモリ | 帯域 | データディスク数 |
Extra Small | 768MB | 5Mbps | 1 | |
Small | 1 | 1.75GB | 100Mbps | 2 |
Medium | 2 | 3.5GB | 200Mbps | 4 |
Large | 4 | 7GB | 400Mbps | 8 |
Extra Large | 8 | 14GB | 800Mbps | 16 |
データディスクは、仮想マシンの起動中に動的に追加・削除できます。仮想マシンへのストレージの追加は、ポータル上で数クリックするか、短いPowerShellコマンドで実行できます。リスト1は、PowerShellで既存の仮想マシンにデータディスクをアタッチする際に使用するスクリプトです。アタッチする仮想マシンを選択し、その仮想マシンに新しいデータディスクを作成しアタッチをしています。
Get-AzureVM -Name $vmname -ServiceName $cloudSvcName | Add-AzureDataDisk -CreateNew -DiskSizeInGB 50 -DiskLabel 'datadisk1' -LUN 0 Update-AzureVM