VSUG DAY 2010 Summer
 Windows Azure
    でやってみよう

VSUG .NET Framework Forum Leader
                      こだか かおる
自己紹介

•   まずは簡単に自己紹介
•   VSUG .NET Framework フォーラムリーダー
•   MVP for Visual Basic
•   Windows 系の開発全般やってます
•   面倒なので、C でサンプル書くこと多し
•   どちらかというとクライアント側ばっかりです
•                     代表取締役




              VSUG DAY 2010.05.09   2
アジェンダ

•   アンケート
•   “クラウド” って何?
•   “Windows Azure” って何?
•   Hello, Windows Azure!
•   Web ロールプログラミング
•   Worker ロールプログラミング
•   SQL Azure を使ってみる
•   それから…

              VSUG DAY 2010.05.09   3
アンケート

• Azure 使ってますか?
 – クラウドも Azure もバッチリ!
 – だいたい理解してます
 – なにそれ、おいしいの?
• 開発環境は何を使ってますか?
 – Visual Studio 2008 を使ってます
 – Visual Studio 2010 を使ってます
• デベロッパーですか?
 – もちろん開発やってます
 – え。その他の仕事です…

              VSUG DAY 2010.05.09   4
“クラウド“ って何?

• SaaS(ソフトウェア), PaaS(プラットフォ
  ーム), IaaS(インフラ) とかあります
• Windows Azure は PaaS です
• とっても個人的な意見です
• クラウド = ホスティング
• スケールしやすいのが利点




          VSUG DAY 2010.05.09   5
“Windows Azure” って何?

• マイクロソフトが提供する、クラウド用
  のプラットフォーム
• “あじゅーる” って読むそうです
• Windows Azure の構成要素
  – Windows Azure
  – SQL Azure
  – AppFabric
  – PinPoint
• Java, PHP, Ruby とかでも使えます

               VSUG DAY 2010.05.09   6
Azure はどんなプラットフォーム?

• 仮想 OS らしいです
• 現在、1.0, 1.1, 1.2 の 3 バージョンがあ
  ります
• どのバージョンを使うのかは、サービス
  コンフィグで指定します
• 適用済みの修正プログラムやサポートす
  る .NET Framework バージョンなどの違
  いがあります
• 詳細は最初のデモで

           VSUG DAY 2010.05.09   7
準備

• Windows Azure の申し込み
 – MSDN 会員なら MSDN サイトから
 – その他の人は、Online Service カスタマーポータルから
 – いずれにせよ、Live ID は必要です

• Windows Azure Tools のインストール
 – VS2008 SP1 が必要
 – VS2010 でもインストールが必要です
 – IDE から有効化できます
 – SQL Server Express と IIS が必要
• プロジェクトの作成(Web)
              VSUG DAY 2010.05.09      8
Hello, Windows Azure!

•   Azure プロジェクト
•   デモ
•   開発の流れ
•   プロジェクトの発行
    – サービスの作成
    – デプロイと実行
• 発行から利用できるようになるまで、約
  20分くらいの時間がかかります
    – 待っててもしょうがないので、準備しておいたやつを


                VSUG DAY 2010.05.09   9
デモ1のまとめ

• Web アプリケーションみたいにプロジェ
  クトを作ります
• アプリができたら発行します
• Hosted Service を作ります
• URL とリージョンを決めます
• デプロイします
 – Production と Staging があります
 – .cspkg, .cscfg をアップロード
• サービスを Run します
             VSUG DAY 2010.05.09   10
Azure のロール

•   Web ロール
•   WCF サービスロール
•   CGI Web ロール
•   MVC2 ロール(2010 のみ)
•   Worker ロール




             VSUG DAY 2010.05.09   11
Azure のストレージ

• ブロブ
  – バイナリファイル
• キュー
  – メッセージキューのようなもの
  – 他ロールとの通信とかに使います
• テーブル
  – Key-Value なデータベース
• Azure Drive (1.1 から)
  – NTFS でアクセスできるストレージ

              VSUG DAY 2010.05.09   12
ローカル開発

• 管理者権限で VS を実行します
• Development Fabric で Azure 環境をロ
  ーカル実行します
• Azure は 64 ビット環境なので、32 ビッ
  ト環境で実行すると警告が出ます
• Space.Block でローカルのブロブとか確
  認できます
 – http://spaceblock.codeplex.com/



                 VSUG DAY 2010.05.09   13
Web ロール

• Web アプリケーションです
• あまり目立ちませんが、Web.config もあ
  ります
• ブロブストレージ
 – ブロブにアップロード
 – メタデータも設定できます
• 認証は、フォーム認証、メンバーシップ
  プロバイダ認証(通常の ASP.NET のもの
  をテーブルストレージを使うように変更
  した版)などが使えます
          VSUG DAY 2010.05.09   14
Web ロールデモ

• アップローダーのデモ
• 設定ファイルを書き換えて、Azure のス
  トレージを使うようにします




            VSUG DAY 2010.05.09   15
Web ロールデモまとめ

• とくに難しいことないです
• これまで、ASP.NET で Web アプリケー
  ションを開発・運用した経験があれば、
  そのままさくっと使えます
 – ストレージ設定とかではまらなければ…




          VSUG DAY 2010.05.09   16
Worker ロール

• バッチ処理
• Web ロールとはキューなどのストレージ
  を経由してやり取り
• テーブルとキューストレージ
• 起動トリガは?
 – 常に実行
 – エンドポイントを定義して実行
 – タスクのような時間指定は、今のところ NG


             VSUG DAY 2010.05.09   17
Worker ロールデモ

• ゲストブックのデモ
• 設定ファイルの書き換えが必要なのは、
  ブロブストレージと一緒
• NG ワードを書き込むと、Worker ロール
  に削除されます
• 複数のロールが動きます
 – ロールごとに更新デプロイできます




           VSUG DAY 2010.05.09   18
Worker ロールデモまとめ

• バックグラウンドで行う処理を Worker
  ロールで実装します
 – やろうと思えば、サービス(WCF とか HTTP
   とか)の実装もできます
• タスクスケジューラーのようには使えな
  いので、バッチ処理の代替、と考えると
  まずいかもしれません




          VSUG DAY 2010.05.09   19
SQL Azure

• テーブルストレージでは不十分な複雑な
  データを扱いたいとき
• 注意! 別サービス扱いなので、別に課金
  されます
• ほぼフル機能ですが、いくつか対応して
  いない部分もあります
  – バックアップ・リストアとか
  – 分散トランザクションとか
  – CLR とか

            VSUG DAY 2010.05.09   20
SQL Azure デモ

• SQL Server Management Studio を使っ
  て、SQL Azure に接続してみます
• SQL Server 2008 R2 Management
  Studio Express CTP 版を利用
• SQL Server 2008 Management Studio
  Express ではエラーが出てつながりませ
  んでした
• Firewall の設定が必要です
• 日本語は文字化けします… 大丈夫でした

               VSUG DAY 2010.05.09    21
SQL Azure プログラミング

• 接続文字列がちょっと変わります
• ODBC も使えるので、他の開発言語から
  利用することも可能です




           VSUG DAY 2010.05.09   22
SQL Azure プログラミングデモ

• デモ
• ゲストブック SQL Azure 版




           VSUG DAY 2010.05.09   23
SQL Azure プログラミングまとめ

• 基本的に、今までの SQL Server を利用
  したプログラムと一緒です…
• ということで、まとめるほどのことはあ
  りません
• 既存のアプリを移行するのなら、コッチ
  のほうが楽です
• SQL Azure Migration Wizard
 – http://sqlazuremw.codeplex.com/



                VSUG DAY 2010.05.09   24
AppFabric と PinPoint

• AppFabric
  – “オンプレミス“ との連携
  – サービスバス
  – アクセスコントロール
• PinPoint
  – サービスのマーケット
  – 無料のサービスもあります
  – これって、どっかで見たような気が…



                VSUG DAY 2010.05.09   25
それから…

•   CDN(コンテンツデリバリネットワーク)
•   VM ロール
•   Dallas (データの提供)
•   IT 業界がクラウドに注力しているので、
    どんどん進化していきそうです




           VSUG DAY 2010.05.09   26
課金について

• いくつかの料金プランがあります
 – 特別導入プラン (お試し用)
 – 標準プラン (月額 5,000円ちょっと)
 – 拡張プラン (月額 10,000円ちょっと)
 – 従量課金プラン (1時間 約11円~)
 – MSDN 会員向け (お試し用)
• 単位はコンピューティングインスタンス
 – つまり起動しっぱなしだと、24×30=720時
   間分を消費します…

          VSUG DAY 2010.05.09   27
まとめ

• そろそろいい感じです
• ベータと微妙に違うところがあるので、
  サンプルなどでは注意が必要
• 実際に試して評価してみてください




       VSUG DAY 2010.05.09   28
参考情報

• Windows Azure Platform
  – http://msdn.microsoft.com/en-us/library/dd163896.aspx

• デベロッパー センター
  – http://msdn.microsoft.com/ja-jp/azure/cc994380.aspx

• Windows Azure Tools for Microsoft
  Visual Studio 1.1 (February 2010)
  – http://www.microsoft.com/downloads/details.aspx?FamilyID=5664019e
    -6860-4c33-9843-4eb40b297ab6&displaylang=en

• Manage Project
  – https://windows.azure.com/Cloud/Provisioning/Default.aspx




                          VSUG DAY 2010.05.09                           29
おしまい




  ご清聴、ありがとうございました!




       VSUG DAY 2010.05.09   30

Vsug day 2010 summer windows azure でやってみよう

  • 1.
    VSUG DAY 2010Summer Windows Azure でやってみよう VSUG .NET Framework Forum Leader こだか かおる
  • 2.
    自己紹介 • まずは簡単に自己紹介 • VSUG .NET Framework フォーラムリーダー • MVP for Visual Basic • Windows 系の開発全般やってます • 面倒なので、C でサンプル書くこと多し • どちらかというとクライアント側ばっかりです • 代表取締役 VSUG DAY 2010.05.09 2
  • 3.
    アジェンダ • アンケート • “クラウド” って何? • “Windows Azure” って何? • Hello, Windows Azure! • Web ロールプログラミング • Worker ロールプログラミング • SQL Azure を使ってみる • それから… VSUG DAY 2010.05.09 3
  • 4.
    アンケート • Azure 使ってますか? – クラウドも Azure もバッチリ! – だいたい理解してます – なにそれ、おいしいの? • 開発環境は何を使ってますか? – Visual Studio 2008 を使ってます – Visual Studio 2010 を使ってます • デベロッパーですか? – もちろん開発やってます – え。その他の仕事です… VSUG DAY 2010.05.09 4
  • 5.
    “クラウド“ って何? • SaaS(ソフトウェア),PaaS(プラットフォ ーム), IaaS(インフラ) とかあります • Windows Azure は PaaS です • とっても個人的な意見です • クラウド = ホスティング • スケールしやすいのが利点 VSUG DAY 2010.05.09 5
  • 6.
    “Windows Azure” って何? •マイクロソフトが提供する、クラウド用 のプラットフォーム • “あじゅーる” って読むそうです • Windows Azure の構成要素 – Windows Azure – SQL Azure – AppFabric – PinPoint • Java, PHP, Ruby とかでも使えます VSUG DAY 2010.05.09 6
  • 7.
    Azure はどんなプラットフォーム? • 仮想OS らしいです • 現在、1.0, 1.1, 1.2 の 3 バージョンがあ ります • どのバージョンを使うのかは、サービス コンフィグで指定します • 適用済みの修正プログラムやサポートす る .NET Framework バージョンなどの違 いがあります • 詳細は最初のデモで VSUG DAY 2010.05.09 7
  • 8.
    準備 • Windows Azureの申し込み – MSDN 会員なら MSDN サイトから – その他の人は、Online Service カスタマーポータルから – いずれにせよ、Live ID は必要です • Windows Azure Tools のインストール – VS2008 SP1 が必要 – VS2010 でもインストールが必要です – IDE から有効化できます – SQL Server Express と IIS が必要 • プロジェクトの作成(Web) VSUG DAY 2010.05.09 8
  • 9.
    Hello, Windows Azure! • Azure プロジェクト • デモ • 開発の流れ • プロジェクトの発行 – サービスの作成 – デプロイと実行 • 発行から利用できるようになるまで、約 20分くらいの時間がかかります – 待っててもしょうがないので、準備しておいたやつを VSUG DAY 2010.05.09 9
  • 10.
    デモ1のまとめ • Web アプリケーションみたいにプロジェ クトを作ります • アプリができたら発行します • Hosted Service を作ります • URL とリージョンを決めます • デプロイします – Production と Staging があります – .cspkg, .cscfg をアップロード • サービスを Run します VSUG DAY 2010.05.09 10
  • 11.
    Azure のロール • Web ロール • WCF サービスロール • CGI Web ロール • MVC2 ロール(2010 のみ) • Worker ロール VSUG DAY 2010.05.09 11
  • 12.
    Azure のストレージ • ブロブ – バイナリファイル • キュー – メッセージキューのようなもの – 他ロールとの通信とかに使います • テーブル – Key-Value なデータベース • Azure Drive (1.1 から) – NTFS でアクセスできるストレージ VSUG DAY 2010.05.09 12
  • 13.
    ローカル開発 • 管理者権限で VSを実行します • Development Fabric で Azure 環境をロ ーカル実行します • Azure は 64 ビット環境なので、32 ビッ ト環境で実行すると警告が出ます • Space.Block でローカルのブロブとか確 認できます – http://spaceblock.codeplex.com/ VSUG DAY 2010.05.09 13
  • 14.
    Web ロール • Webアプリケーションです • あまり目立ちませんが、Web.config もあ ります • ブロブストレージ – ブロブにアップロード – メタデータも設定できます • 認証は、フォーム認証、メンバーシップ プロバイダ認証(通常の ASP.NET のもの をテーブルストレージを使うように変更 した版)などが使えます VSUG DAY 2010.05.09 14
  • 15.
    Web ロールデモ • アップローダーのデモ •設定ファイルを書き換えて、Azure のス トレージを使うようにします VSUG DAY 2010.05.09 15
  • 16.
    Web ロールデモまとめ • とくに難しいことないです •これまで、ASP.NET で Web アプリケー ションを開発・運用した経験があれば、 そのままさくっと使えます – ストレージ設定とかではまらなければ… VSUG DAY 2010.05.09 16
  • 17.
    Worker ロール • バッチ処理 •Web ロールとはキューなどのストレージ を経由してやり取り • テーブルとキューストレージ • 起動トリガは? – 常に実行 – エンドポイントを定義して実行 – タスクのような時間指定は、今のところ NG VSUG DAY 2010.05.09 17
  • 18.
    Worker ロールデモ • ゲストブックのデモ •設定ファイルの書き換えが必要なのは、 ブロブストレージと一緒 • NG ワードを書き込むと、Worker ロール に削除されます • 複数のロールが動きます – ロールごとに更新デプロイできます VSUG DAY 2010.05.09 18
  • 19.
    Worker ロールデモまとめ • バックグラウンドで行う処理をWorker ロールで実装します – やろうと思えば、サービス(WCF とか HTTP とか)の実装もできます • タスクスケジューラーのようには使えな いので、バッチ処理の代替、と考えると まずいかもしれません VSUG DAY 2010.05.09 19
  • 20.
    SQL Azure • テーブルストレージでは不十分な複雑な データを扱いたいとき • 注意! 別サービス扱いなので、別に課金 されます • ほぼフル機能ですが、いくつか対応して いない部分もあります – バックアップ・リストアとか – 分散トランザクションとか – CLR とか VSUG DAY 2010.05.09 20
  • 21.
    SQL Azure デモ •SQL Server Management Studio を使っ て、SQL Azure に接続してみます • SQL Server 2008 R2 Management Studio Express CTP 版を利用 • SQL Server 2008 Management Studio Express ではエラーが出てつながりませ んでした • Firewall の設定が必要です • 日本語は文字化けします… 大丈夫でした VSUG DAY 2010.05.09 21
  • 22.
    SQL Azure プログラミング •接続文字列がちょっと変わります • ODBC も使えるので、他の開発言語から 利用することも可能です VSUG DAY 2010.05.09 22
  • 23.
    SQL Azure プログラミングデモ •デモ • ゲストブック SQL Azure 版 VSUG DAY 2010.05.09 23
  • 24.
    SQL Azure プログラミングまとめ •基本的に、今までの SQL Server を利用 したプログラムと一緒です… • ということで、まとめるほどのことはあ りません • 既存のアプリを移行するのなら、コッチ のほうが楽です • SQL Azure Migration Wizard – http://sqlazuremw.codeplex.com/ VSUG DAY 2010.05.09 24
  • 25.
    AppFabric と PinPoint •AppFabric – “オンプレミス“ との連携 – サービスバス – アクセスコントロール • PinPoint – サービスのマーケット – 無料のサービスもあります – これって、どっかで見たような気が… VSUG DAY 2010.05.09 25
  • 26.
    それから… • CDN(コンテンツデリバリネットワーク) • VM ロール • Dallas (データの提供) • IT 業界がクラウドに注力しているので、 どんどん進化していきそうです VSUG DAY 2010.05.09 26
  • 27.
    課金について • いくつかの料金プランがあります –特別導入プラン (お試し用) – 標準プラン (月額 5,000円ちょっと) – 拡張プラン (月額 10,000円ちょっと) – 従量課金プラン (1時間 約11円~) – MSDN 会員向け (お試し用) • 単位はコンピューティングインスタンス – つまり起動しっぱなしだと、24×30=720時 間分を消費します… VSUG DAY 2010.05.09 27
  • 28.
    まとめ • そろそろいい感じです • ベータと微妙に違うところがあるので、 サンプルなどでは注意が必要 • 実際に試して評価してみてください VSUG DAY 2010.05.09 28
  • 29.
    参考情報 • Windows AzurePlatform – http://msdn.microsoft.com/en-us/library/dd163896.aspx • デベロッパー センター – http://msdn.microsoft.com/ja-jp/azure/cc994380.aspx • Windows Azure Tools for Microsoft Visual Studio 1.1 (February 2010) – http://www.microsoft.com/downloads/details.aspx?FamilyID=5664019e -6860-4c33-9843-4eb40b297ab6&displaylang=en • Manage Project – https://windows.azure.com/Cloud/Provisioning/Default.aspx VSUG DAY 2010.05.09 29
  • 30.