azure開発の極意
DESCRIPTION
デブサミ2010講演資料です。デブサミということで、Azureを.NETはもちろんPHPやJava、Rubyなみなさまにも身近に楽しく感じてもらえればという思いでお話ししました。Azure開発のHow To的な内容は含まれておりません。TRANSCRIPT
Developers Summit 2010
砂金信一郎マイクロソフト株式会社エバンジェリスト
18-D-7
Azure 開発の極意
Developers Summit 2010
はじめに:本資料につきまして• 当セッションにご参加いただき、ありがとうございます。本資料は
「デブサミ 2010 18-D-7 “Azure 開発の極意”」の手元参照用資料です
• 諸事情により、セッションで表示する資料とは内容が異なる場合がございます
• 本資料の記載事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことはできません。以下の事項は、マテリアルやコード、機能を提供することを確約するものではなく、製品に関して記載されている機能の開発、リリースおよび次期については、弊社の裁量により決定されます
Developers Summit 2010
スピーカープロフィール:ご質問などございましたらお気軽にお声掛けください
マイクロソフトでクラウドコンピューティングを中心とした啓蒙活動を行うエバンジェリスト。東京工業大学出身。日本オラクルで修行を積んだ後、戦略コンサルタントに転身していた時期もあったが、 Windows Azure の世界観に魅せられてマイクロソフトに参画。自社技術に閉じないスタイルが信条。自他共に認めるガンダム好きで、特に戦略シミュレーションものにぐっときます。
ブログでも Azure の話題を提供http://blogs.itmedia.co.jp/isago/
Twitter フォローはお気軽にhttp://twitter.com/shin135/
砂金 信一郎 [email protected]アーキテクトエバンジェリスト マイクロソフト株式会社
い さ ご
Developers Summit 2010
本日 50 分でみなさまとシェアしたい内容
Azure な Windows 。当たり前の悟り極意 1
極意 2
極意 3
極意 4
こんな時代だからこそ、無駄なく賢く使うセコロジー
クセのあるストレージもこれで楽勝。お助けツール使いこなし術
PHP, Java, Ruby なら迷わずWorkerRole
極意 5 クラウドはやっぱり疎結合
Developers Summit 2010
Windows だから….NET 開発者はそのまま Azure へ
Developers Summit 2010
Windows だから…暗黙的な対応アプリは多い(はず)
クラウドで動く 制約の厳しい Windows Server 64bit 版
Developers Summit 2010
Windows だから…サポートも SLA も購買手続きも安心
日本語ポータルから購入→即利用技術サポート対応可( Premier )99.95% の SLA (細則あり)請求書払いにも対応( 24,250円 /月↑)
http://mocp.microsoftonline.com/
Developers Summit 2010
Azure な Windows 。当たり前の悟り
極意 2
極意 1
極意 3
極意 4
こんな時代だからこそ、無駄なく賢く使うセコロジー
クセのあるストレージもこれで楽勝。お助けツール使いこなし術
PHP, Java, Ruby なら迷わずWorkerRole
極意 5 クラウドはやっぱり疎結合
Developers Summit 2010
セコロジー #1タダで使うためにすべきこと
誰でも使えるお試しプラン
クレジットカードの登録は必要
やろうと思えばLive ID をたくさん用意して…
MSDN 購読特典でAzure が実質 1 インスタンス使い放題( 8ヶ月間)
会社で MSDN 購読していて誰もAzure 使っていなければ手を回してゲット25 時間 /月ま
で0 円
MSDN がついてくる
750 時間 /月まで
0 円
スタートアップ企業なら、マイクロソフトの支援プログラムに加入できる
加入するともれなく MSDN がついてくる。すなわちAzure 利用権付き
MSDN
サブスクリプション
BizSparkへの加入
初期特別プラン
Developers Summit 2010
セコロジー #2課金は 1 時間単位の盲点
Azure課金の細則CPU 使用率は関係なく占有したデプロイ時間で課金( GAE より EC2 に近い)Run してなくてもデプロイすれば(削除しない限り)課金発生。ステージングも同じレート最小単位は 1 時間。各時の 0分から 59 分のスロットで、 1分でもデプロイすれば 1 時間分
Developers Summit 2010
セコロジー #3面倒な管理はコマンドレットで自動化
http://code.msdn.microsoft.com/azurecmdlets
Developers Summit 2010
$cert = Get-Item cert:\CurrentUser\My\D6BE55AC439FEA8CBEBAFF432BDC0780F1BD00CF $sub = "CCCEA07B-1E9A-5133-8476-3818E2165063" $servicename = 'myservice' $package = "http://myaccount.blob.core.windows.net/publish/MyPackage.cspkg"
$label = 'nolabel' $role = ''
if ($args.Length -eq 2) { $role = $args[0] $label = $args[1] }
if ($args.Length -eq 1) { $label = $args[0] }
if ($role -ne '') { Get-HostedService $servicename -Certificate $cert -SubscriptionId $sub | Get-Deployment -Slot Production | Set-Deployment -mode Auto -roleName $role -package $package -label $label | Get-OperationStatus -WaitToComplete } else { Get-HostedService $servicename -Certificate $cert -SubscriptionId $sub | Get-Deployment -Slot Production | Set-Deployment -mode Auto -package $package -label $label | Get-OperationStatus -WaitToComplete }
アップグレード スクリプトの例
夜間にアプリのモジュールを自動アップグレードする際には便利(データ転送料がかからない)夜間だけデプロイして処理が終わったら削除するような運用も可能ではある
Developers Summit 2010
Azure な Windows 。当たり前の悟り
極意 3
極意 1
極意 2
極意 4
こんな時代だからこそ、無駄なく賢く使うセコロジー
クセのあるストレージもこれで楽勝。お助けツール使いこなし術
PHP, Java, Ruby なら迷わずWorkerRole
極意 5 クラウドはやっぱり疎結合
Developers Summit 2010
便利ツール #1 ストレージ管理
Harutama氏解説: http://d.hatena.ne.jp/haru-tama/20100115
REST アクセスプログラムからはStorage Client 経由でツール経由で FTP やファイルサーバーのように
Developers Summit 2010
便利ツール #2SQL Azure Manager
http://hanssens.org/post/SQL-Azure-Manager.aspx
SQL Azure の利用SSMS などの SQL Server用ツールがあれば、接続文字列の変更でそのまま利用可能↑がない場合、 Click Onceで起動できる SQL Azure Manager が便利SQL Azure はアプリから普通のリレーショナルデータストアとして利用することができる
Developers Summit 2010
便利ツール #3 Computing
http://azureservicesmanager.codeplex.com/releases/view/35069
監視用アプリ管理 API に UI をつけたものやコードから呼び出すものがあるいずれは SystemCenter
Developers Summit 2010
Azure な Windows 。当たり前の悟り
極意 4
極意 1
極意 2
極意 3
こんな時代だからこそ、無駄なく賢く使うセコロジー
クセのあるストレージもこれで楽勝。お助けツール使いこなし術
PHP, Java, Ruby なら迷わずWorkerRole
極意 5 クラウドはやっぱり疎結合
Developers Summit 2010
WebRole は IIS 。WorkerRole はそれ以外全部
Web RoleWeb RoleIIS
Web RoleWeb RoleSearch
Web RoleWeb Role
SMTP Server
LB
Storage
Port 80
Port 25
80 で HTTP/HTTPS?管理をアウトソースしたい?
任意の TCP ポートで通信可能
WebRole
WorkerRole
WorkerRole
バックエンド処理での活用が基本形
Developers Summit 2010
PHP は IIS の FastCGI で対応。VisualStudio にテンプレートまである
PHP 対応IIS すなわちWebRole で対応。Fast CGI の枠組みそのままで PHP も OK
PHP 用 SDK を使えば拡張性の高い Azure Storage にアクセスしやすくなるSQL Server 用 PHP ドライバで SQL Azure を使うこともできる
Developers Summit 2010
アクセラレーター for Tomcat とJava SDK / Eclipse ツールでJava 開発
http://code.msdn.microsoft.com/winazuretomcat
Developers Summit 2010
アクセラレーター for X非MS系ミドルの方が動かしやすい罠
アドミン権限が不要レジストリに依存しないコマンドで起動できる
Developers Summit 2010
Ruby on Rails にも対応
http://code.msdn.microsoft.com/railsonazure
Developers Summit 2010
Azure な Windows 。当たり前の悟り
極意 5
極意 1
極意 2
極意 3
こんな時代だからこそ、無駄なく賢く使うセコロジー
クセのあるストレージもこれで楽勝。お助けツール使いこなし術
PHP, Java, Ruby なら迷わずWorkerRole極意 4
クラウドはやっぱり疎結合
Developers Summit 2010
クラウドの真価は(金さえ払えば)無限のスケーラビリティ
使用量コン
ピュ
ーテ
ィン
グ
時間
平均
稼働不要な
時期
“On と Off “
時間
“ 予測不能な使用増“
平均使用料
コン
ピュ
ーテ
ィン
グ
時間
平均使用量
“ 周期的な使用増“
コン
ピュ
ーテ
ィン
グ
平均使用量
時間
“ 急速な成長“
コン
ピュ
ーテ
ィン
グ
Developers Summit 2010
Worker Role を散らせばMap Reduce 的な実装もできなくない
Web RoleClient
Data
Worker
Worker
Worker
Data
Data
Data
Client Application Job/Task SchedulerRemote Service
Queue
Req
Table
Developers Summit 2010
素数を MapReduce 的に求めてみた
Developers Summit 2010
極意 5
Azure な Windows 。当たり前の悟り極意 1
極意 2
極意 3
こんな時代だからこそ、無駄なく賢く使うセコロジー
クセのあるストレージもこれで楽勝。お助けツール使いこなし術
PHP, Java, Ruby なら迷わずWorkerRole極意 4
クラウドはやっぱり疎結合
本日のまとめ
Developers Summit 2010
アンケートにご協力ください
Developers Summit 2010
続きは TechDays 2010 で!LET’S DREAM AND THEN LET’S BUILD
ご清聴ありがとうございました