マスター タイトルの書式設定

Windows Azure の今
ここまでできるを知る!
D3-301
日本マイクロソフト株式会社
デベロッパー & プラットフォーム統括本部
関田 文雄
Agenda
はじめに
Windows Azure で何ができる?: 開発編
Windows Azure で何ができる?: 運用管理編
Windows Azure で何ができる?: シナリオ編
まとめ
Windows Azure の産声
2008 年 10 月 Azure Services Platform 発表!
Windows Azure の産声
Windows Azure SDK CTP ~ 1.0
SQL Azure 発表
2008 年 10 月
2009 年 11 月
2009 年 3 月
•Windows Azure Platform 発表
•最初の CTP リリース
•Full Trust, PHP, Java,
CDN CTP 等の対応
•価格と SLA の発表
•Project "Dallas" CTP
Windows Azure リリース
2010 年 2 月 Windows Azure Platform リリース!
開発環境
•.NET による高い開発生産性
既存資産、ナレッジの活用
•高い相互運用環境
SDK, プラグインの提供
リリース以降のアップデート
Windows Azure SDK 1.1 ~ 1.3
Windows Azure Platform リリース
2010 年 6 月
2010 年 2 月
•Windows Azure 2010
•.NET Framework 4
•OS Versioning
•CDN
•SQL Azure
•50GB データベース
•空間データ サポート
•DAC サポート
• Silverlight ポータル
• スタートアップ タスク
• Full IIS
• Windows Server 2008 R2
• リモート デスクトップ/co-admin
• Windows Azure Connect (CTP)
• VM ロール (beta)
• Extra Small Instances (beta)
年 11 月
リリース以降のアップデート
Windows Azure SDK 1.4 ~ 1.4 Refresh (4 月)
•Windows Azure Traffic Manager CTP
•Web Deploy
•SQL Azure Import/Export
2011 年 2 月
2011 年 3 月
•SQL Azure Reporting CTP
Windows Azure の今
2011 年 9 月時点の Windows Azure 機能一覧
Windows Azure で何ができる?
【開発編】
Windows Azure アプリケーションの開発
環境構築 Web PI による環境構築
テスト
プロファイリング
プログラミング
MVC3 Web ロール
デバッグ 複数のサービス構成
プログラミング
配置
SSMS と同様の操作
Web Deploy で素早い配置
配置
配置時の validation
Windows Azure アプリケーションの開発
Web Deploy
とにかく素早く配置してテストが可能
パッケージ作成を省略
リモート デスクトップと共通の認証
ただし、テストのみ
永続化はされていません
ポートは 8172
永続化を必要とする場合は、
CodePlex を参照
http://waawebroles.codeplex.com/
Windows Azure アプリケーションの開発
プロファイリング
トラブル シューティング
Emulation 環境でのデバッグ
診断データの取得
イベント ログ、パフォーマンス カウンター、…
IntelliTrace
※ Visual Studio 2010 ULTIMATE のみ
パフォーマンスの問題特定は、Visual
Studio プロファイラーで
※ Visual Studio 2010 PREMIUM から
Windows Azure アプリケーションの開発
プロファイリング
Windows Azure アプリケーションの開発
プロファイリング
CPU のサンプリング (デフォルト)
CPU 使用率の統計情報
アプリケーションへの影響は小さい
インストルメンテーション
関数の呼び出し履歴まで記録
32 bit OS では無効
.NET のメモリ割り当て
.NET Framework メモリ割り当てデータ
同時実行制御
マルチ スレッド/プロセスの実行データ
リソースのロック等を行う場合に
Windows Azure アプリケーションの開発
直近のアップデート
Windows Azure Tools for Visual Studio
2010 1.4 (8 月)
プロファイラー
ASP.NET MVC3 Web ロール
複数サービス構成
パッケージ validation の改良
SDK 1.5 (9 月)
Emulator パフォーマンスの改善
csupload.exe: 証明書アップロードのサポート
csencrypt.exe: リモート デスクトップ パスワードの
暗号化
Windows Azure で何ができる?
【運用管理編】
Windows Azure の運用管理
ポータル
日本語対応
Windows
Management API 追加
Azure
SQL
Azure
co-admin
SQL
Azure
Import/Export
Windows
Azure Storage Analytics
Azure
SQL
Azure
Management API 対応
Windows Azure の運用管理
Windows Azure Service Management API
Create Hosted Service
Create Storage Account
インスタンスの詳細ステータス (15 種類)
RoleStateUnknown, CreatingVM ,
StartingVM, CreatingRole, StartingRole,
ReadyRole, BusyRole, StoppingRole,
StoppingVM
ロールバック
サービス構成の更新あるいは in-place アップグ
レード中に操作をキャンセルし以前の状態に戻す
サブスクリプション、クォータ情報
Windows Azure の運用管理
SQL Azure ポータル/Service Management API
SQL Azure Import/Export
スキーマとデータを BLOB へ Import/Export
完全なバックアップ用途には COPY を併用
SQL Server から SQL Azure への移行 (CodePlex)
http://sqldacexamples.codeplex.com
Service Management API
サーバーの作成/削除/列挙/パスワード管理
ファイアウォールの作成/削除/列挙
Windows Azure の運用管理
Windows Azure Storage-Analytics
お客様の多くの質問…
ストレージのパフォーマンスが悪そう
リクエストが届いているか?
時間毎のリクエスト数は?
ストレージ利用内容の分析とデバッグが可能に
Logs
Blob, Table, Queue に対して実行された全てのリクエストの
トレースを提供
Metrics
Blob, Table, Queue に対して実行されたリクエストの統計情報
の 1 時間毎のサマリーを提供
Windows Azure の運用管理
Windows Azure Storage-Analytics: Logs
ログの対象
read (GET) , write (PUT/POST/MERGE) ,
delete (DELETE) を各々指定
ログの保存
$logs コンテナーにログを格納
リクエスト後、15 分後までにログに格納される
1 つのログはセミコロンで区切られた 1 行
ログの内容
クライアント (IP アドレス, アカウント, …)
パケット サイズ (Request/Response, Header)
パフォーマンス (E2E/Server Latency)
…
Windows Azure の運用管理
Windows Azure Storage-Analytics: Metrics
Transaction metrics
ログの対象
Blob, Table, Queue のサービス/API レベルでのサマリ
ログの保存
$MetricsTransactionsBlob, $MetricsTransactionsTable,
$MetricsTransactionsQueue テーブルに 1 時間毎に格納
ログの内容
リクエスト数, E2E/Server レイテンシー, 成功率, etc
Capacity metrics
ログの対象
ユーザーと Analytics データの Blob
ログの保存
$MetricsCapacityBlob に 1 日毎に保存
ログの内容
Blob の容量, コンテナ, Blob の数
Windows Azure の運用管理
Windows Azure Storage-Analytics: PowerShell
ログの on/off
Set-StorageServicePropertiesForAnalytics
Logs, Metrics の双方を設定
Retention Policy: ログの保存期間
ログの取得
Get-StorageAnalyticsLogs
指定ストレージのログをファイルに保存
Get-StorageAnalyticsMetrics
指定ストレージの Metrics or Capacity ログを csv ファイル
に保存
Windows Azure の運用管理
直近のアップデート
Windows Azure (8 月)
Storage Analytics
Windows Azure (9 月)
Management API の拡張
SQL Azure May 2011 サービス リリース (5 月)
Management API
複数サーバー サポート
SQL Azure July 2011 サービス リリース (7 月)
Co-admin
管理ポータルの日本語対応
SQL Azure Q2 2011 サービス リリース (9 月)
Import/Export CTP
Windows Azure で何ができる?
【シナリオ編】
オンプレミスからの移行
Disaster Recovery
オンプレミスからの移行
マイクロソフト アプリケーション プラットフォーム
PC, Phone, ブラ
ウザ
オンプレミス
クラウド
オンプレミスからの移行
プラットフォームの相違
パブリック
クラウド
オンプレミス
アプリケーション
静的
アプリケーション
ミドルウェア
ミドルウェア
OS
OS
仮想マシン
ネットワーク
動的
- IP アドレス
- インスタンス増減
- ストレージ
管理ツール
開発環境
仮想マシン
ネットワーク
オンプレミスからの移行
移行時の課題
インスタンス増減
セッション
AppFabric Caching, Table, SQL Azure を利用
リソース
インスタンス間で共有可能のように変更
アプリケーション セットアップ
特権の昇格 (スタートアップ タスク, OnStart)
VM ロール (ベータ)
ストレージの対応
永続化が必要なデータ
Azure ストレージ, SQL Azure の利用
オンプレミスからの移行
特権の昇格/VM ロール
まずはスタートアップ タスク、OnStart の利用を検討
自動化されたバージョンアップ
VHD の管理が不要
インストール作業が必要な (5 分以上、手動等) アプリケーションの
セットアップは、VM ロール
項目
Web/Worker
ロール
+ 特権の昇格
VM ロール
ハードウェア構成
○
○
○
ソフトウェア構成
○
○
○
ソフトウェア配置
○
○
仮想イメージ
ファイル
コピー
5 分以内の
インストール
○
ネットワーク機能
○
○
○
OS/アプリ
バージョンアップ
○
○
利用者が実施
ソフトウェア
インストール
オンプレミスからの移行
スタートアップ タスク
start/w pkgmgr/iu: IIS-ASP
Webpicmdline/Products: PHP53,
SQLDriverPHP53IIS, PHPManager/AcceptEula>>
startup-tasks-log.txt 2>> startup-tasks-errorlog.txt
powershell.exe . \install-php.ps1
%windir%\system32\inetsrv\appcmd set config
-section: applicationPools
-applicationPoolDefaults.processModel.idleTimeout:
0.00:30:00
Disaster Recovery
災害への対応
オンプレミス + クラウド
SQL Azure Data Sync によるデータ同期
バッチでのデータ バックアップ
クラウドの中での DR
データの同期
よりダウンタイムを減らすには
Disaster Recovery
データの同期: Azure ストレージ–Geo アプリケーション
Blob , Table が対象
リバージョン内でデータを非同期に複製
例: シンガポール→香港
費用はそのまま !!
デフォルトはオン (オフにするにはサポートへ連絡)
オフからオンにする場合、最初の複製で転送費用が必要
http://account.blob.core.windows.net/
シンガポール
DC
香港 DC
プライマリがダウンした際、DNS の IP アドレスを変更
Disaster Recovery
Global Traffic Manager
シカゴ DC
fumiosazure.ctp.trafficmgr.com
http://www.fumios.com
Azure
DNS
DNS
Policy
ポリシー 1: Failover
プライマリがダウンした際にセカンダリ, …, へ
ポリシー 2: Performance
クライアントに近い DC へ
ポリシー 3: Round Robin
順番にオンライン サービスへ
Web サイト
香港 DC
設定時間
で死活監視
Web サイト
ダブリン DC
Web サイト
まとめ
Azure は開発環境、運用環境を含め、様々なシナリオに
対応可能なクラウド プラットフォームです
Azure Free Pass (30 日間無料)
導入特別プラン (3 か月間無料分有り)
MSDN サブスクリプション向け (長期間無料分有り)
他にも注目機能が、続々リリース
System Center Codename "Concero"
TFS on Windows Azure
Dryad on Windows Azure
SQL Azure Reporting
SQL Azure Federations
Appendix
関連セッション
T2-206: 実践クラウドのオススメ~今日からはじめる Windows
Azure Platform
T2-207: Windows Azure の利用シナリオと活用事例
T2-208: Windows Azure を利用した IT 継続計画ソリューションの
ご紹介
D3-302: Windows Azure の真骨頂: AppFabric を極める!
D3-303: Windows Phone/iOS/Android から Windows Azure を
利用する
リファレンス
クラウドならマイクロソフト
http://www.microsoft.com/japan/business/cloud/default.mspx
Windows Azure の製品情報
http://www.microsoft.com/japan/windowsazure
MSDN クラウド開発情報
http://msdn.microsoft.com/ja-jp/default.aspx
. NET 開発コード サンプル集 Code Recipe
http://msdn.microsoft.com/ja-jp/samplecode.recipe.aspx
Microsoft Web Platform
http://www.microsoft.com/web
Windows Azure Storage
Analytics Logs 例 (抜粋)
Analytics Logs 例 (抜粋)
Log Version: 1.0
Start Time: 2011-09-24T09:19:13.7072836Z
Operation Type: GetBlob
Status: Success
HTTP Status Code: 200
Application E2E Latency (milliseconds): 18
Storage Server Latency (milliseconds): 17
Accessing Account: fumiosstorage1
Service Type: blob
Request URL: PUT
https://fumiosstorage1.blob.core.windows.net/event/slide1.pptx
Client IP: 124.214.153.76
Windows Azure Storage
Analytics Metrics Transactions/Capacity 例 (抜粋)
Transactions 例 (抜粋)
Request Type: GetBlob
Total Requests: 120
Total Billable Requests: 120
Availability: 100
Avg E2E Latency: 204.55
Avg Server Latency: 13.03
% Success: 50
Metics 例 (抜粋)
Category: data
Capacity (bytes): 196183999
Container: 10
Object Count: 57
Windows Azure Storage
Analytics PowerShell–ログの設定
Logs: Blob の delete/write/read のログを 3 日間保持
Metrics: API を含んだ統計情報を 3 日間保持
Set-StorageServicePropertiesForAnalytics
-StorageAccountName fumiosstorage1
-StorageAccountKey aZ9gyg …
-ServiceName blob
-LoggingDelete-LoggingWrite-LoggingRead
-LoggingRetentionPolicyEnabled
-LoggingRetentionPolicyDays 3
-MetricsEnabled
-MetricsIncludeAPIs
-MetricsRetentionPolicyEnabled
-MetricsRetentionPolicyDays 3
Windows Azure Storage
Analytics PowerShell–ログの取得
Logs: fumiosstorage1 の blob のログをファイルに取得
Get-StorageAnalyticsLogs
-ServiceName blob
-LocalPath C: \Users\test.txt
-StorageAccountName fumiosstorage1
-StorageAccountKey aZ9gyg …
Metrics: fumiosstorage1 の blob の統計データをファイルに取得
Get-StorageAnalyticsMetrics
-ServiceName blob
-LocalPath C: \Users\metics1.csv
-From "09/24/2011 0:00:00"
-DataType capacity
-StorageAccountName fumiosstorage1
-StorageAccountKey aZ9gyg …
ご清聴ありがとうございました
D3-301
アンケート
にご協力
ください