Day-2 16:05-17:15 - Center

Download Report

Transcript Day-2 16:05-17:15 - Center

マイクロソフト株式会社
プラットフォーム ストラテジスト
関田 文雄
Windows Azure とは
クラウド オペレーティング システム
ファースト ステップ
Azure サービス コンセプト
Windows Azure プログラミング
まとめ
クラウド コンピューティング
インターネットを利用した、新しいコンピュー
タの利用形態
クラウド オペレーティング システムとは?
クラウド上の OS
Windows がクラウドにあればいい?
拡張性
管理の自動化
可用性
コンピューティング
低い開発障壁
セキュリティ
ストレージ
オープン
プラットフォーム
既存資産活用
アプリケーション
コンピューティング
構成
ストレージ
ファブリック
…
自動管理
開発と
モデリング
展開と実行
開発者
自動
サービスの
管理
自動
ファブリック コントローラ
管理の自動化
サービス
定義
ファブリック
コントローラ
リソースの管理
可用性
ファブリック
LB
SW
Windows Azure 仮想化
Host OS
Drivers
VMBUS
Guest OS
Guest OS
VMBUS
VMBUS
Hypervisor
NIC
拡張性
Disk1
Disk2
Hardware
CPU
Windows Azure ストレージ
セキュリティ
ブロブ
テーブル
キュー
Windows Azure 開発
オンプレミスもクラウドも、今までと同じ開発ツー
ル、言語、フレームワーク
低い開発障壁
既存資産活用
オープン
プラットフォーム
Web 標準 / ツール サポート
Windows
Windows Azure
リソース追加
ハードウェア
コンフィギュレーション
展開
ファイル コピー
イメージ ベース
ストレージ
ファイル システム
SQL Server
ローカル ストレージ
Windows Azure ストレージ
SQL Services
アーキテクチャ
N層
ロール
相互接続
XML, Web サービスの構築
XML, Web サービスの構築
組み込みの REST / SOAP
サービス
.NET Services
SQL Services
Live Services
日時
ID
内容
Day1 14:40-15:50
T1-304
概要
Day2 13:15-14:25
T1-305
サービス バス
Day2 14:40-15:50
T1-307
アクセス コントロール
Day2 16:05-17:15
T1-306
ワークフロー
Day1 16:05-17:15
T1-308
概要
Day1 14:40-15:50
T1-201
概要
Day1 16:05-17:15
T1-310
Live Framework (Mesh)
Day2 14:40-15:50
T1-309
Live Framework
Windows Azure CTP
CTP 仕様
OS: 64 bit Windows Server 2008
CPU: 1.5-1.7 GHz x64 相当
メモリ: 1.7 GB
ネットワーク: 100 Mbps
ローカル ストレージ: 250 GB
Windows Azure ストレージ: 50 GB
ホスティング プロジェクト:1
ストレージ プロジェクト:2
マネージ コードのみ(.NET Framework 3.5 SP1)
単一のデータセンター
Azure.com
Windows Vista SP1 or Windows Server 2008
(IIS7.0 with ASP.NET and WCF HTTP Activation)
Visual Studio 2008 SP1
(SQL Express 2005)
Windows Azure SDK CTP
Windows Azure Tools for Microsoft
Visual Studio CTP
Azure.com への登録
(Connect: Azure Services Invitations)
 単純なシナリオは単純に―複雑なシナリオも可能に
 サービスはマイクロソフトのデータセンター内でホスト
 高い可用性と拡張性のための設計
 HTTP, REST, SOAP, AtomPub を含む複数プロトコルのサポート
 オープンかつコミュニティからのアクセスをサポート
 従来からのツール、言語、.NET のフレームワーク、Visual Studio
 オンプレミス or クラウド、又はハイブリッド ソリューションの選択肢を提供する
 AD や自社運用アプリケーションの既存資産を統合
よりシンプルなプログラミング
構築したアプリケーションは拡張性に優れる
慣れ親しんだ開発ツール、フレームワーク
新たなコンセプトを異なる抽象レベルで
インターネット
VMs
ロード
バランサー
n個
Web
Web
Web
Role
Role
ロール
VMs
m個
Web
Web
Worker
Role
Role
ロール
ストレージ サービス
インターネット
ロード
バランサー
Web
ロール
インターネット経由のリクエス
トを処理
IIS7 ホスト
ASP.NET / WCF ホスト
統合モード
XML ベースのコンフィギュレー
ション
SSL サポート
Windows Azure Trust Policy
Cloud Service プロジェクト
ストレージ サービス
バックグラウンド プロセス
Web ロールからは、キュー
でリクエストを読込む
入力接続なし
出力接続は可能
Windows Azure Trust Policy
Cloud Service プロジェクト
インターネット
Worker
ロール
ストレージ サービス
いつでもどこでも効率良くデータへアクセス可能
データ量/時間に関わらずデータをストア
堅牢性
Pay for what you use
堅牢性、拡張性、可用性
セキュリティ
パフォーマンス
3種類のストレージ
ブロブ: 単純な階層を持つファイル ストレージ
テーブル:リレーショナルのない構造化ストレージ
キュー:メッセージのための信頼性のあるストレージ
HTTP/HTTPS
ブロブ
テーブル
キュー
Windows
Windows Azure
Cloud Service プロジェクト
プロジェクト
ASP.NET Web アプリケー
ション
•インスタンス
•ローカル ストレージ
•エンドポイント
•ロール
•配置
Web/Worker ロール プロジェクト
デバッグ
ASP.NET 開発サーバー
Diagnostics
デベロップメント ファブリック
ストレージ ファブリック
RoleManager
セキュリティ
Windows / フォーム / そ
の他
ASP.NET Trust Level
フォーム / アクセス コントロール サー
ビス / その他
Windows Azure Trust Level
ストレージ
アクセス
System.IO
System.IO(ローカル ストレージ)
REST(Windows Azure ストレージ)
セッション
インプロセス
Windows サービス
SQL Server
Windows Azure ストレージ
(SDK サンプル)
メンバーシップ
SQL Server
Windows Azure ストレージ
(SDK サンプル)
各ロール開発用プロジェクト
配置とデバッグ
サービス定義 (csdef)
ロール(Web / Worker)
エンドポイント
プロトコル
ローカル ストレージ
再配置まで変更されない
サービス構成 (cscfg)
インスタンス数
構成設定
動的に変更が可能
デベロップメント ファブリック
Windows Azure ファブリックを
シュミレート
各インスタンスのコンソール表示
ログとアラート
CSPack, CSRun コマンド
デベロップメント ストレージ
Windows Azure ストレージを
シュミレート
単一の固定アカウント、キー
データ等に制限(ブロブは 2GB)
デベロップメント
ファブリック
ロール
ロール
デベロップメント
ストレージ サービス
デベロップメント
ファブリック
ロール
ロール
Windows Azure
ストレージ サービス
Windows Azure
ファブリック
ロール
ロール
Windows Azure
ストレージ サービス
ログ参照 / アラート出力先
CSRun コマンド
CSRun コマンド
ブロブ参照
ログと同じ
ログと同じ
Azure ポータル
ストレージ エンドポイント、ID
固定
ストレージ毎
ストレージ毎
サービス実行に必要な共通 API
クラス
RoleManager
RoleEntryPoint
主なメソッド
説明
WriteToLog
ログ、アラートの出力
GetLocalResource
ローカル ストレージ インター
フェースの取得
GetConfigurationSetting
コンフィギュレーション設定の
読み込み
Start
ロールの開始
Stop
ロールの終了
GetHealthStatus
ロールの状態を返す
public class WorkerRole : RoleEntryPoint
{
public override void Start()
{
while (true)
{
// メッセージ処理等(省略)
}
}
public override RoleStatus GetHealthStatus()
{
return RoleStatus.Healthy;
}
}
認証
Windows 認証は、アクセス コントロール
サービスで
Open ID, Live ID, …
コード アクセス セキュリティ
Medium 相当(一部異なる)
NG: アンマネージ コード呼び出し(medium)
NG:分離ストレージ アクセス
OK:外部 Web サイト接続
OK:外部 TCP 接続
アカウント
ユニークなストレージ アカウント名
例:”sekitastorage”,
http://sekitastorage.blob.core.windows.net
256 bit シークレット キー
セキュリティ
全てのリクエストに記述する署名で認証
CTP では、ブロブのみパブリック アクセスが可能
CTP では REST のインタフェースのみ提供
アカウント
ブロブ
テーブル
キュー
アカウント
コンテナ
Pictures
ブロブ
ブロック
IMG001.JP
G
IMG002.JP
G
Account
Block
AAAA
Movies
MOV1.AVI
Block
AAAB
Block
AAAC
インプロセス、SQL Server は使用不可
AspProviders(SDK サンプル)
セッション / メンバーシップ / ロール / プロ
ファイル の Windows Azure 用プロバイダー
Windows Azure ストレージを利用
プロバイダー設定例
<sessionState mode="Custom"
customProvider="TableStorageSessionStateProvider">
<providers>
<clear />
<add name="TableStorageSessionStateProvider” type=
"Microsoft.Samples.ServiceHosting.AspProviders.TableStorageSessionStateProvider“
applicationName="AspProvidersDemo“
/>
</providers>
</sessionState>
ネイティブ コードのサポート
高度なログ記録/トレース機能
動的なスケーリング
VM の規模を柔軟に変更可能
サードパーティのオープン スタンダード
(PHP、Ruby、Python、Eclipse など) の
サポート
Windows Server VM のサポート
クラウド オペレーティング システム
ユーティリティ コンピューティングを実現
そして、
サービスの自動管理
強力なホスティング環境
拡張性,可用性を持つクラウド ストレージ
オープンで使いやすい開発環境
まずは Azure.com へ
MSDN Developer Center
http://msdn.microsoft.com/en-us/azure
MSDN Forum
http://social.msdn.microsoft.com/Foru
ms/en-US/category/azure/
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market
conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.
MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.