そんなわけでVM Roleを試してみました。
細かな手順とかはMSDNや蒼の王座さんのBlogを参照、ということで省きます。(手抜き
では実際にさわってみた感想をば。
まずHyper-V上でゲストOS作ります。
割り当てメモリ2048MB、HDDサイズ 30GBで。(Sインスタンスと同じ 修正。SインスタンスじゃなくてVM RoleのSインスタンスでの制限。メモリはAzureにUpしたら変動する(Sなら1.75GBかな))
作成後普通にWindows Server 2008 R2(x64)をインストールします。
今回は評価版(英語)を利用しました。
インストール後は一応手順にならって.NET 3.5.1、IISを入れてWindows Updateを停止(無効)、で C:\Program Files\Windows Azure SDK\v1.3\iso にあるISOをマウントしてVM Role用の統合ツールをインストールして再起動→Sysprepしてシャットダウンします。
さて次は作成したVHDをAzure上へcsuploadツールを使ってアップロードします。
※csuploadツールは管理者権限で実行します。
コマンド例
csupload.exe Add-VMImage -Connection "SubscriptionId=<SubscriptionID>;CertificateThumbprint=<拇印>; ServiceManagementEndpoint=https://management.core.windows.net/" -Description "Base image Windows Server 2008 R2" -LiteralPath "VMRole Image.vhd" -Name baseimage.vhd -Location "East Asia"
サブスクリプションID、Azureサービス管理用の証明書の拇印、作ったVHDへのパス、配置先のロケーションかアフィニティグループを指定します。
実行後、1時間ほど待てばAzure上へのアップロードが完了します。
だいたいスループットは8MBps出てました。
注意点はVHDの実データを取り出すようで(圧縮するようで?)、VHDがあるディレクトリに(今回は)4GBほどのテンポラリVHDができました。ので、実施時は空き容量に注意です。
で、この4GBほどのVHDをアップロードしてるわけですね。
アップロードが完了すると管理ポータルでこんな感じで見れます。
さて次はVisual Studio 2010を使ってVM Roleなパッケージを作ります。が作り方は割愛。
ささっと作ってデプロイしましょう。
デプロイが問題なく進行すればこんな感じで進みます。
見慣れないステータス。
で、15分ほど待てばReadyになりました。
リモートデスクトップもパッケージ作成時に有効にしておけば普通につながります。
面白いのはドライブ構成が違う事ですかね。VHDで作ったのでCドライブがシステム領域、Dに診断用のストア?があり、Cドライブ直下にシンボリックリンク(というんだろうか)がはられてます。
あとライセンス認証してないので警告出てますねw(評価版なのでやむなしか?Sysprepの動きがよく分かってない)
とまぁこんな感じでさくっと動きました。簡単すぎてうーん。
おまけ
なぜか最初のイメージ作るところのSysprepが起動しない現象が出ているようです。謎。
あとサービス設定ファイルでosFamilyありますが、新規作成すると1(1.x系列)になるのですがAzure側で無視してるようです。(Azure側でOS管理しないからそりゃそうかw)
で、その兼ね合いかOS設定が管理ポータルよりできません。そりゃそうだな。
なんとなくPaaSなWeb RoleとWorker Roleと、IaaSチック(というかIaaS?)なVM Roleの違いが判ればよいかなと思います。
あとはガリガリとカスタムのVHD作ってアップロードして運用すればOK。
でもWindows Update的なOSのメンテは必要だしアプリケーション再配置とか更新はイメージ再アップロードorリモートデスクトップで手動です。
何がしたいか、どうしたいかでちゃんと選びましょう。






ピンバック: Tweets that mention VM Role を試してみた « ブチザッキ -- Topsy.com
ピンバック: VM Role 用のゲスト OS の準備 « SE の雑記