Learn Windows Azure 2つ目のセッションは Technical Fellow Dave Campbell による Cloud Data & Storage です。
Cloud
Learn Windows Azure – Getting Started with Windows Azure
日本時間で12月14日 2:00 スタートのオンラインイベント、「Learn Windows Azure」が開催されました。
会場はMSキャンパス内のブリーフィングセンター?まさにLearnな感じでゆるーい感じで進行しました。
Windows Azure Training Kit – December Update
Windows Azure Training Kit が更新されています。
更新内容を抜粋すると以下の通り
- [New Presentations] 33 updated/new PowerPoint presentations
- [New Hands-On lab] Running a parametric sweep application with the Windows Azure HPC Scheduler
- [New Hands-On lab] Running SOA Services with the Windows Azure HPC Scheduler
- [New Hands-On lab] Running MPI Applications with the Windows Azure HPC Scheduler
- [New Demo] Node.js On Windows Azure
- [New Demo] Image Rendering Parametric Sweep Application with the Windows Azure HPC Scheduler
- [New Demo] BLAST Parametric Sweep Application with the Windows Azure HPC Scheduler
- [Renamed Lab] Connecting Applications through Windows Azure Service Bus (formerly Introduction to Service Bus Part 1)
- [Renamed Lab] Windows Azure Service Bus Advanced Configurations (formerly Introduction to Service Bus Part 2)
HPC絡みやNode.js等もあり盛りだくさんですね。
Windows Azure Active Directory ?
SQL Azure 管理ポータル更新 & 150GB化 & 新機能追加!
Windows Azure に関する開発
Windows Azure が大規模更新!
というわけで年末の爆弾、Windows Azureが大規模に更新されました。
これまでのSDKの更新などはすべてこの為の布石にすぎなかったのだよ!!
さて、泣いててもしょうがないので少し見てみましょうか。
Windows Azure SDK おさらい
Windows Azure SDK 1.6 でだいぶ名称かわったりしました。わかりにくいですよね?もう少しだけ補足しとこうかなと思います。(以前の投稿の補足ですね)
1. Windows Azure Libraries for .NET 1.6
※Web PIからでもいいのですがダウンロードセンターにも個別で公開されています。
以前の投稿でWindows Azure AppFabric SDKがWindows Azure Libraries for .NET 1.6になった的な話でしたが本当でしょうか。見てみましょう。
実際に単体でインストールすると、以下のファイル群しかインストールされません。
ServiceBusとCacheのみですね。それ以外は無いみたいです。ということで少し内容は変わってますがWindows Azure AppFabric SDKはWindows Azure Libraries for .NET 1.6 になったというのがわかります。
※それ以外が含まれてないという意味で
じゃ次。
2. Windows Azure SDK for .NET
Windows Azure SDK for .NET という名前になったこのSDKは何が含まれてるんでしょう?ちょっとWeb PIの依存関係でも見てましょう。
なんだかいろいろありますねー。このうちWindows Azure EmulatorとWindows Azure Authoring Toolsはなんだか怪しいですね(?)
ではWindows Azure Emulatorから見てみましょう。こいつは文字通りエミュレータのようですね。
インストールが終わるとエミュレータのみインストールされます。
もちろん起動もしますよ!
でも本当はSQL Server 2008 Expressが必要だったり、もう少し依存関係は複雑なはずです。(ちょっと使ったイメージが綺麗じゃなかったですね…)
でもまぁエミュレータに必要なものだけがインストールされるようです。
さてもう一方のWindows Azure Authoring Toolsですが、こちらは以前のSDKのイメージに近いですね。
以前のSDKからEmulatorを抜いたものがWindows Azure Authoring Toolsだと思うといいかも。
で、最後はVisual Studio用のWindows Azure Tools for Visual Studioですね。
これらをまとめてWindows Azure SDK for .NET といってるようです。
実際にはURL Rewrite 2.0とか関連する(依存する)コンポーネントがあるわけですけどザックリとどんなものかはわかるかなと思います。
※ダウンロードセンターにも動作要件が書いてるのでそちらも参照
ま、普通にインストールポイントからインストールしようとすると全部まとめてインストールできますし、あまりこの辺気にしないんですけど。
こまけぇことはキニスンナ!
Windows Azure によるアプリケーション開発基礎 (更新)
先日の「Windows Azure によるアプリケーション開発基礎」ですが、もろもろ加筆修正されているようですので是非元リンクから最新版をゲットしなおしてくださいー
前のエントリでちくちく指摘してたところも直ってました!
In-place UpdateがUpdateされました
唐突なアナウンスですがWindows AzureのIn-place Update機能が更新されたようです。まぁWindows Azure側の話なので、こちらで何か修正等があるわけではありませんし、既に展開されてるのでみんな恩恵にあずかれます。
元ネタ:Announcing Improved In-place Updates 、 Overview of Updating a Windows Azure Service
変更内容ですが、簡単にいうと以下のケースにおいて今までIn-place Updateが出来なかったのですが、それができるようになりました
( ゚Д゚ノノ"☆パチパチパチパチ
- 仮想マシンのサイズ変更(スケールアップ/スケールダウン) ※たとえばSサイズからLサイズ、SサイズからXSとか
- ローカルストレージの増加
- デプロイされてるロールの追加・削除
- エンドポイントの数や種類の変更
今まで再デプロイとかVIPスワップで対応しないと行けなかったのがIn-place Updateでもいけるのは嬉しいですね!
※ちなみにIn-place UpgradeなのかIn-place Updateなのかははっきりしてほしいですがw(管理ポータルとか見る限りUpgradeだとは思いますけど元ネタのBlogに合わせてます。どっちでもいいんじゃないですかね)
変更できる項目が元ネタのところにまとまってるのでそのまま持ってこようと思います。
| 変更内容 | In-place Update | VIP Swap | 再デプロイ |
| Guest OSのバージョン | OK | OK | OK |
| .NET Trustレベル | OK | OK | OK |
| 仮想マシンのサイズ | OK 注意:仮想マシンのサイズを変更するとローカルデータが破棄されます。 Management APIを使用してこの変更を行う場合は強制フラグが必要です メモ:Azure SDK 1.5以上が必要 |
OK | OK |
| ローカルストレージの設定 | OK(ただし増加のみ) メモ:Azure SDK 1.5以上が必要 |
OK | OK |
| ロールの追加または削除 | OK | OK | OK |
| 特定ロールのインスタンス数 | OK | OK | OK |
| サービスエンドポイントの数や種類の変更 | OK メモ:Azure SDK 1.5以上が必要 エンドポイントが更新されるので、一時的に可用性が損なわれる(接続できなくなる瞬間がある) |
NG | OK |
| ConfigurationSettingsの名前と値 | OK | OK | OK |
| ConfigurationSettingsの値 | OK | OK | OK |
| 証明書の追加 | OK | OK | OK |
| 既存の証明書の変更 | OK | OK | OK |
| 新しいコードのデプロイ | OK | OK | OK |
再デプロイは基本的にまっさらな状態でデプロイになるので、まぁこの辺の制約はないわけで。
VIP SwapもIPアドレス付け替えと考えると、サービスエンドポイントが変わらなければOK(つまりそこだけNG)なので納得ですね。
In-place Updateで仮想マシン(インスタンス)のサイズやロール数を変更する場合は、アップグレードダイアログの「VMサイズまたはロール数の更新を許可する」にチェックを付けましょう。付けずに更新しようとするとエラーになります。(Management APIでやる場合も同様に強制フラグをOnにして実行しましょう)
さて他にも幾つか追加された機能がありまして。
In-place Updateをキャンセル/ロールバックなど細かくコントロールすることができます。
アップグレードモードが自動の場合はこれらはよしなにしてくれますが、マニュアルモードの場合、管理ポータルやManagement APIを使って細かく制御できます。
このへん詳しく載っていますので参照ください↓
まとめ
ということで、アップグレード手法をまとめるとこんな感じですかね(コピペですけど)
| 更新方法 | 説明 | メリット | デメリット |
| In-place | 新しいパッケージを今稼働してるインスタンスやサービス上に適用する方法 | 1つのデプロイで済む 各ロールで2インスタンス以上あれば可用性を維持したまま更新できる |
更新してる間、更新対象のロールはダウンするのでサービス提供能力が落ちます。 全インスタンスが更新されるまでの間、新旧2つのバージョンのサービスコードが稼働するので動作に差がでてしまいます |
| VIP Swap | 新しいパッケージを別の領域(ステージング)に展開し、IPアドレスを付け替える方法(サービスをスワップする) | サービスダウンタイムや提供機能のロスが無い | 少なくとも2つデプロイ(プロビジョニングとステージング)が実行されてる必要がある(スワップするのに必要) |
| 再デプロイ | 稼働してるサービスを削除して新しいパッケージをデプロイする方法 | 1つのデプロイで済む | サービス削除するので、提供していたサービスはダウンする。デプロイが変わるとIPアドレスも変わるので、DNSの伝達に時間がかかるケースもある |













