Windows Azure Platform PowerShell Cmdlets 2.0 の紹介 ~ クラウドカバー Episode 60

 

今回のクラウドカバーは Azure PowerShell コマンドレット 2.0 の紹介です。

ゲストは、CodePlex における Azure PoweShell コマンドレット プロジェクトのコーディネーターの一人である Michael Washam

 

 

それではいつものように、ニュースから。

 

Now Available: Windows Azure Platform Training Kit – September 2011 Update and New Training Kit Web Installer Preview

最初のニュースは、Windows Azure の基本機能の解説、およびサンプルコード満載な HOL(Hands On Lab) コンテンツが詰まった Trainning Kit のアップデートについて。

 

主なポイントとしては、先日リリースされた最新の SDK 1.5 にむけてのコンテンツ更新となりますが、それに加え、Windows Azure AppFabric Service Bus の新機能である Queue および Topic に関する HOL の追加、ならびに Windows Azure DataMarket の HOL シナリオの更新などが挙げられます。

Training Kit については、後程 Tip of the week でも取り上げます。

 

NuGet Push to Windows Azure

Windows Azure へのアプリケーションの展開手段の一つとして、NuGet(発音は「にゅげっと」みたいな感じ) を使う方法の紹介です。

アプリケーションの展開方法としてはこれまでに、WebDeploy や Blob を使った同期などの方法も紹介していますが、この方法では NuGet package を使ってアプリケーションの更新を行います。

Steve が SmarxRole の中で、リポジトリとして Git を利用しながら、各種 OSS 系のソフトウェアのインストールを行っているのと少し似ています。

 

Extension Methods for the August 2011 Windows Azure Storage Features

Steve の Blog から、Windows Azure Storage において追加された機能をより簡単に使用していただくための Extension Method の紹介です。GitHub もしくは NuGet からダウンロードいただくことで、Steve 謹製の Extention Method を使用できるようになります。

Steve 曰く、正式にライブラリに含まれるようになるまでのつなぎ、とのことですが Azure Storage を使い倒すためにも、ぜひご活用ください。

 

Some Updates to Waz-Cmd, a Ruby Command-Line Tool for Windows Azure

引き続き Steve の Blog から。

複数の言語と複数のOSを使うのが好き!、という Steve が作成した Ruby で書かれた Windows Azure 用の管理コマンドツール Waz-Cmd がアップデートされました。

Windows 環境であれば Azure PowerShell コマンドレット 2.0 を使用いただくのが機能的にもいいよね、ということですが、それ以外の環境、たとえば Ubuntu から Windows Azure をコマンドで管理したい、といった際には Waz-Cmd をご使用ください。

 

Windows Azure SDK 1.5 Known Issue: Compute Emulator Listen Port Unavailable

Windows Azure SDK 1.5 の Compute Emulator で、Port のコンフリクトが起こることに関する Known Issue(既知の問題) のお知らせです。

具体的には Compute Emulator ではポート 12000、12001、12002、808、16001 および 15100 を使用しますので、それらのポートを使用するサービス(たとえば、VMWare Workstation Server はポート 12001 を使用します)は Compute Emulator 使用時には止めてください。

 

Windows Azure SDK 1.5 Known Issue: Compute Emulator Fails to Start

引き続き Windows Azure SDK 1.5 の Known Issue。

こちらの問題は、ユーザー名に空白が含まれる場合、Compute Emulator の立ち上げに失敗してしまう、というもの。

・・・・・・・・・・・・・・・・・・・・・・・・Computer Emulator Shutdown

回避策としては、_CSRUN_STATE_DIRECTORY の値を、空白を含まないパスに書き換えてください(ユーザーを作り変える必要はありません スマイル)。

 

 

では、いよいよ今回の本題。Widows Azure の管理をよりシンプルにしてくれる Azure 用の PowerShell コマンドレット 2.0 のお話。

ゲストスピーカーの Michael のブログ記事「Announcing the Release of the Windows Azure Platform PowerShell Cmdlets 2.0」も参考にしてください。

 

2.0 の特長として、まず最初に挙げているのがバージョン 1.0 では別々にリリースされていた ACS のコマンドレットが統合された点。

また、たくさんの機能強化も行われており具体的には、Michael の Blog において、一覧で紹介されています。

 

ということで、さくっとした紹介として、アプリケーションの展開(deploy) を行ってみます。

PowerShell コマンドレットを使用することで、たとえばトレーニングキットのようなコンテンツを利用する際、あるいはイベントの HOL 等において多くのマシンセットアップを行う必要がある際等に、環境構築を自動化できたりします。開発チームにおいても、全員の環境を統一したり、決まりきったタスクを自動化するのに利用できそうです。

 

さて、先ほど実行したコマンドですが、展開状況がカラフルな(緑と黄色の)文字情報で表示され、Azure への展開が行われている様子がわかります。ステージングに展開し、その後 VIP Swap で本番環境に展開、といったことも自動化し、行うことが可能になります。

image

 

 

引き続きサンプルとして、今度は SQL Azure に対するコマンドレットの紹介です。

PowerShell を使って、SQL Azure におけるデータベースの情報を取得することが可能です。また取得結果に対してパイプライン処理として、データベースのパスワードを一括で変更したり、あるいは Firewall ルールを追加する、といったことも可能です。

 

image

複数の取得結果に対して、パイプを使って foreach で順次パスワードを変更していくデモ

 

 

Diagnostic (診断)情報を取得する際に PowerShell って便利だよね、という Wade の言葉に反応して、Michael が実行したのは Diagnostic の設定状況を表示するコマンドレット。Role インスタンスごと(青色の強調表示)に、設定状況(緑色の強調表示)が表示されます。

image

 

そして次は Daiagnostic の情報を基に CPU 使用率を表示するデモ。

image

 

このコマンドを利用して、定期的に CPU の使用状況を記録したり、他のコマンドレットと組み合わせることで、自動的に Azure のインスタンスを増減したり、サイズを変更する、といったことも実現できそうです。

 

さて、最後に 2.0 のリリースのポイントとして Wade が挙げているのが ACS コマンドレットとの統合。

image

 

認証機能を提供する ACS は Windows Azure においても重要な基盤の一つですが、様々な Windows Azure のツールキット、たとえば、Windows Phone 用の Toolkit や Windows Deeveloper Preview 用の Toolkit 等、複数の環境において、統一的に ACS の設定を行う際にこの ACS コマンドレットを利用いただけます。

 

そして、コマンドレットの次の機能強化の目玉となりそうなのが、SQL Azure の Import とExport。

今後も、Windows Azure Platform PowerShell Cmdlet プロジェクトにご注目ください。

(CodePlex でアカウント登録を行えば、プロジェクトの Follow といったこともできますので、まだアカウント登録されていない方はこの機会にぜひ)

 

最後はおなじみ、Tip of the Week!

image

 

今回の話題は Windows Azure の Traninig Kit のインストール エクスペリエンスの改善について。

現在提供している Training Kit はトータルのサイズが 300MB 近くあり、コンテンツとしても30 程度の HOL が含まれていたり、巨大なものになってきています。

 

このインストールをより簡単に行えるようにするのが、Training Kit の Web Installer です。ダウンロードページにある「WAPTK - Web Installer (Preview).exe」をダウンロード&実行いただくと、以下のようなダイアログが立ち上がります。

image

 

このダイアログでは、デフォルトですべてのコンテンツが含まれていますが、DEMOS、LABS、PRESENTATIONS のカテゴリなどを利用し、利用したいコンテンツだけを個別に選択することでダウンロード量を少なくすることが可能です。

 

また、ダウンロードの際に依存関係を確認して、足りないものに関してはインストールポイントを教えてくれる機能もあります。

image

 

さて、じつはこのツールですが、まだ開発中で今回のリリースはプレビューとしてのリリースとなります。今後、このツールの機能強化を進め、アップデートされたコンテンツの通知を行う、といったこともできるようにするとか。

もしご使用になれられて、こうして欲しい、といった要望ありましたらぜひフィードバックください。

また、Web Instoller の詳しい説明は既出の「Now Available: Windows Azure Platform Training Kit – September 2011 Update and New Training Kit Web Installer Preview」を参照ください。

 

最後に、本日のゲスト Michael ですが、BUILD で行った講演がストリーミング公開されています。「BUILD Talk: Monitoring and Troubleshooting in Windows Azure」、こちらも是非チェックください。

 

以上、クラウドカバー Episode 60、Windows Azure Platform PowerShell Cmdle 2.0 の紹介でした。

 

それでは!