[Azure] Windows Azure Accelerator for Web Roles を試す
個人的にWindows Azureの使いにくい点として、デプロイに時間がかかるということがある。
Azure環境で動作確認をして、バグがあったら修正して再デプロイ・・・。
1回のデプロイに15分〜20分を要するので、単純なバグを見つけた場合でも、再試験までに30分以上かかる。
しかし
[url=http://waawebroles.codeplex.com/]Windows Azure Accelerator for Web Roles[/url]
というのがあります。
codeplexからダウンロードできます。(上記リンクをクリック)
これを使うとアプリケーションのデプロイが30秒に!!!
しかも、ログもWeb上で確認できるようになります。
さらに、同じWebRoleに複数サイトを乗せることができる!!!(すげーっ、やりたかったなぁ、ちょっと前に)
インストールから設定まで、こちらのサイトの手順でいけます。
[url=http://d.hatena.ne.jp/StateMachine/20110717/1310914938]Windows Azure Accelerator for Web Roles その1[/url]
[url=http://d.hatena.ne.jp/StateMachine/20110718]Windows Azure Accelerator for Web Roles その2[/url]
と思ったら、やはりハマるもんですね。なんでだろ(;・∀・)
■ RDP(リモートデスクトップ)の設定が必須
今までAzureのRDPを設定をしたことがなかったので、そこの設定でハマりました。
で、参考にしたのが、こちらのサイトです。
[url=http://blogs.technet.com/b/junichia/archive/2010/12/01/3372243.aspx]Widnows Azure にリモートデスクトップで入り込むための手順 (4) 最終回[/url]
証明書を作成して、Azure環境にアップしてからデプロイすれば良いみたい。
SSL証明書と一緒のようです。
■ デプロイ時に『警告』が多数発生
プロジェクトを作っただけでは、こんな警告メッセージがいっぱい・・・。
[quote]The project ‘***.Web’ is dependent on the following assembly: ***.dll. This assembly is not in the package. To make sure that the role starts, add this assembly as a reference to the project and set the Copy Local property to true. ***.Web 1 1 ***.Cloud[/quote]
意味は、ライブラリアセンブリ(dll)が無いから、追加してね。
そして、『参照設定』に追加されたアセンブリのプロパティでローカルコピーを”true”(デフォルトはfalse)にしてね。
と書いてあるみたい。
なので、手動で参照の追加しました。
あとは
[quote]This assembly is not compatible with the 64-bit processor architecture used by IIS on Windows Azure. To make sure that the role starts, you must replace this assembly with one that is compatible with this architecture. ***.Web 1 1 ***.Cloud[/quote]
Microsoft.SqlServer.BatchParser.dllというやつだけど、assembly\GAC_32のを参照していたのが原因でした。
assembly\GAC_64のを参照するようにすればOKになりました。
これで、なんとかデプロイできました:-D
[img]http://xp.miyacomp.net/uploads/img17742fef66ec52c6c7e67.jpg[/img]
最初から、このツールを知っていれば、デプロイの時間に苦労しなかったのに・・・。
しかも、複数サイトが乗せれるなんて、超便利っす。
もう少し、早く知るべきでした(TдT)
