Upload
shinichiro-isago
View
4.956
Download
1
Tags:
Embed Size (px)
DESCRIPTION
2010年6月25日開催のクラウド勉強会in北陸で プレゼンに使用したファイルです
Citation preview
June 2010 | Page 1
|
Microsoft Windows Azure 最新情報
マクロソフト株式会社 June 2010
クラウド勉強会 in 北陸 第1回
June 2010 | Page 2
スピーカー紹介
ブログでもAzureの話題を提供 http://blogs.itmedia.co.jp/isago/
Twitterフォローはお気軽に http://twitter.com/shin135/
砂金 信一郎 [email protected] アーキテクトエバンジェリスト マイクロソフト株式会社 デベロッパー&プラットフォーム統括本部 クラウドテクノロジー推進部 所属
い さ ご
マクロソフトでクラウドコンピューテゖングを中心とした啓蒙活動を行うエバンジェリスト。東京工業大学出身。日本オラクルで修行を積んだ後、戦略コンサルタントに転身していた時期もあったが、Windows Azureの世界観に魅せられてマクロソフトに参画。自社技術に閉じないスタルが信条。自他共に認めるガンダム好きで、特に戦略シミュレーションものにぐっときます。
June 2010 | Page 3
世界中にデータセンターを絶賛建設中
Quincy, WA Chicago, IL San Antonio, TX Dublin, Ireland Generation 4 DCs
June 2010 | Page 4
The Microsoft Cloud Data Center Infrastructure
June 2010 | Page 5
June 2010 | Page 6
June 2010 | Page 7
June 2010 | Page 8
June 2010 | Page 9
June 2010 | Page 10
June 2010 | Page 11
PDC09会場でのコンテナ実機展示
June 2010 | Page 12
Windows Azure を稼働させる モジュラー型データセンター
June 2010 | Page 13
Bing の Auto Pilot ゕーキテクチャ 世界中のデータセンターに分散された100,000 台規模のサーバー
Web & Structured Data Indices
June 2010 | Page 14
個人・ベンチャーの開発者など
大手SI’er所属の
SEさんなど
クラウドでひと儲けしたいマー
ケターなど
クラウドの業務適用を判断したい方など
ギーク スーツ
技術者
ビジネス
簡単なゕンケート
June 2010 | Page 15
本日ご用意してきた内容
Azure を好きになってさわってみたい!と感じてもらうことが本日のゴール
Azureの位置づけ
How to 開発・注意点
賢く使うコツ
Azureの仕組み
セキュリテゖ
運用監視
テスト・障害対応
性能保証
June 2010 | Page 16
世界中で進む Windows Azure 導入
June 2010 | Page 17
国内の Azure 採用決定企業様
June 2010 | Page 18
Azure の位置づけ: 柔軟性の高いクラウドプラットフォーム
IaaS/HaaS ハードウェゕを提供
(CPU貸し、デゖスク貸し)
PaaS 開発・実行環境となる
プラットフォームを提供
SaaS 完成品の
ソフトウェゕを提供
ハードウェゕ
OS
ミドルウェゕ
ゕプリケーション
ハードウェゕ
OS
ミドルウェゕ
ハードウェゕ
OS
ゕプリケーション
ミドルウェゕ
ゕプリケーション
June 2010 | Page 19
What’s VM Role ?
June 2010 | Page 20
今オフゖシャルになっていること
http://blogs.msdn.com/usisvde/archive/2010/03/29/vm-support-in-windows-azure.aspx
June 2010 | Page 21
詳細は World Partners Conference で
http://digitalwpc.com/
June 2010 | Page 22
Azure の systeminfo
June 2010 | Page 23
June 2010 | Page 24
June 2010 | Page 25
3スクリーン&クラウド戦略
PC 携帯電話 TV
クライアント
ツー
ルお
よび
クロ
ス
プラ
ット
フォ
ーム
サポ
ート
サーバー クラウド
June 2010 | Page 26
System Center Cloud
June 2010 | Page 27
•••
•••
••
•
自社運用 お客様による運用
ホスティッド パートナーによる運用
クラウド マクロソフト
による運用
Windows-based Hosting
Power of Choice 選択の自由
June 2010 | Page 28
http://code.msdn.microsoft.com/azurescale
Azure Auto Scale
June 2010 | Page 29
Project Sydney
IPv6/IPSec を利用し end-to-end で オンプレミスのサーバーと Windows Azure がセキュアに通信可能
2010年にベータ リリース予定
June 2010 | Page 30
Content Delivery Network 7月正式スタート!
June 2010 | Page 31
エンタープライズ用途に強いWindows Azure Platform
June 2010 | Page 32
サービスバス
sb://namespace.servicebus.windows.net/a/b/
TCP/SSL 828
TCP/SSL 808/828
③メッセージ ③メッセージ
NAT ファイアウォール Dynamic IP
①登録 ③ルーテゖング
NLB
クライアント サービス
バックエンドの ネーミング・ ルーテゖング フゔブリック
フロントエンド ノード
フゔゕウォールやNATを超えるクラウド上の サービス バスを介したメッセージルーテゖング
June 2010 | Page 33
クラウドを介したID フェデレーションを実現する クレームベース ゕクセス コントロールの処理手順
ゕクセス コントロール
サービス ネームスペース
Relying Parties (サービスバス、
アプリケーション等) リクエスタ (利用者)
②ルール決定
⑦チェック& ゕクセス&授与
Relying Party管理者
NameSpace Azureval
Issuer owner
AccountKey Abcdefg……………
InputCraim [email protected]
June 2010 | Page 34
オンプレミスとSync Framework で同期
SQL Server Sync
Provider
Sync Application
SQL Azure Sync
Provider
Sync Orchestrator
Sync Runtime
• 競合の種類
– 同時実行の競合
– 制約の競合
• 競合の解決
– 同期元 Win
– 最新更新 Win(時間比較)
– ユーザー判断 等々…
競合
June 2010 | Page 35
上場企業の企業情報開示支援サービス 宝印刷株式会社(株式会社日立システムゕンドサービス)
June 2010 | Page 36
フゔブリックコントローラーなど要となる技術は実績の多い Windows 由来
フゔブリック エージェント
フゔブリック:サーバーの集合 サーバーごとに複数の VM
Windows Server 2008 (改) Hyper-V
ゕプリに応じてサズを選択
フゔブリック コントローラー フゔブリック内のサーバーと通信
サービスの監視・管理を行う
ゕプリ・VMの展開
June 2010 | Page 37
管理の自動化はどこまで? ハードウェゕ リソースの変更
ファブリック
コントローラー
コンピューティング ストレージ
管理ポータル
windows.azure.com
構成定義 (XML)
マイクロソフト データセンター
June 2010 | Page 38
コンピューテゖング機能の耐障害性能対策
停止ドメイン ハードウェア構成上の単一障害点のあるエリアをドメインとして分割
VM 監視 各インスタンスには、ファブリック コントローラとのコミュニケーション用にエージェントが存在
IIS Web ロール Worker
ロール
エージェント エージェント
June 2010 | Page 39
フゔブリック コントローラの役割
1: ノード割り当て
停止ドメンで分散
更新ドメンで分散
2: OS とロールのメージを配置
3: 設定
4: ロールの開始
5: ロードバランサーの設定
6: 必要数のロールを維持
停止したロールは自動再起動
ノードが停止した場合は、
別のノードを自動割り当て
停止・更新ドメンにまたがりノードを割り当て
LB
June 2010 | Page 40
ストレージ管理の自動化
•Key Valueストゕ
•パーテゖション分割 TABLE
•大容量バナリ フゔル
•ブロック転送が可能 BLOB
•ロール間の一時受け渡し領域
•タスク失敗時の挙動に対応 Queue
•クラウド上のNTFSサービス
•ランダムゕクセス対応の BLOB Drive
• HTTP/HTTPS + REST
• 256bit シークレット キーを利用したHMAC-SHA256 署名での認証
• 3つ以上の複製
• 最大容量 100TB
June 2010 | Page 41
Table:Key Valueストア スケーラビリティを最優先した汎用ストレージ
Partition Key Document Name
Row Key Version
Property 3 Modification Time
….. .
Property N Description
福利厚生Doc V1.0 3/21/2007 ….. .
2007年度
福利厚生Doc V1.0.6 9/28/2007 2008年度用 山田作成中
勤怠Doc V1.0 3/28/2007 2007年度
勤怠Doc V1.0.1 7/6/2007 2008年度用 千田作成中
必須
255個までのプロパテゖを持つ
異なるプロパテゖ を持ってもよい
プロパテゖ <Name, TypedValue> ペゕが保存
スキーマを持たない
June 2010 | Page 42
Visual Studio 経験者であれば .NET開発者はそのままAzureへ
June 2010 | Page 43
クラウドで手間のかかるデバッグは、ローカルの開発フゔブリックで軽減
Azureの Hosted Service環境を開発クラゕント側に再現
ローカルでのビルド・実行時に自動的に起動
作業中はタスクトレに常駐
各ロールごとにログの確認ができる
June 2010 | Page 44
シンプルな疎結合 Web ゕーキテクチャ
June 2010 | Page 45
WorkerRoleの使いこなしがポント
LB
Storage
80 でHTTP/HTTPS?
管理をゕウトソースしたい?
任意のTCPポートで 通信可能
WorkerRole
WorkerRole
バックエンド 処理での 活用が基本形
June 2010 | Page 46
非.NET技術とのインターオペラビリティの高さも Windows Azure の特長の1つ
Web Role
Computation Worker Role
VIP
Load
Bala
ncer
memcached Worker Role
June 2010 | Page 47
PHP は IIS の FastCGI で対応。 VisualStudioにテンプレートまである
PHP対応
IISすなわちWebRoleで対応。 Fast CGIの枠組みそのままでPHPもOK
PHP用SDKを使えば拡張性の高い Azure Storage にゕクセスしやすくなる
SQL Server用PHPドラバでSQL Azure を使うこともできる
June 2010 | Page 48
ゕクセラレーター for Tomcat と Java SDK / EclipseツールでJava開発
http://code.msdn.microsoft.com/winazuretomcat
June 2010 | Page 49
ゕクセラレーター for X 非MS系ミドルの方が動かしやすい罠
June 2010 | Page 50
SQL Azure への移行における注意事項
• 日付時刻データの取り扱い – すべて UTC(協定世界時)
• サーバー上での SYSDATETIME(), GETDATE()
• UTC は日本より9時間遅れ
– DATEADD(hour, 9, SYSDATETIME()) で対応 – データを日本時間で保存するか UTC で保存するか?
• 既存データは日本時間で保存している場合が多い
• 日本語の取り扱い – 明示的に Japanease_CI_AS など日本語の
指定が必要 • ソートなどに影響
– SQL 文での日本語記述にも "N" プレフゖックスが必要 • INSERT INTO employees VALUES (1, N‘ゕジュール')
June 2010 | Page 51
June 2010 | Page 52
June 2010 | Page 53
便利ツール#1ストレージ管理
Harutama氏解説:http://d.hatena.ne.jp/haru-tama/20100115
RESTゕクセス
プログラムからはStorage Client 経由で
ツール経由でFTPやフゔルサーバーのように
June 2010 | Page 54
便利ツール#2SQL Azure Manager
http://hanssens.org/post/SQL-Azure-Manager.aspx
SQL Azureの利用
SSMSなどのSQL Server用ツールがあれば、接続文字列の変更でそのまま利用可能
↑がない場合、Click Onceで起動できる SQL Azure Manager が便利
SQL Azureはゕプリから普通のリレーショナルデータストゕとして利用することができる
June 2010 | Page 55
便利ツール#3 Computing
http://azureservicesmanager.codeplex.com/releases/view/35069
監視用ゕプリ
管理APIにUIをつけたものやコードから呼び出すものがある
いずれはSystemCenter
June 2010 | Page 56
Windows Azure の価格
11.76 円/時間 + 可変のンスタンスサズ
14.70 円/月 0.98 円/10K トランザクション
June 2010 | Page 57
Windows Azure のインスタンス サイズ
各インスタンスの定義
11.76 円 23.52 円 47.04 円 94.08 円
1 x 1.6Ghz
2 x 1.6Ghz
4 x 1.6Ghz
8 x 1.6Ghz
1.75 GB メモリー 3.5 GB メモリー 7.0 GB メモリー 14 GB メモリー
250 GB ストレージ (インスタンスのストレージ)
500 GB ストレージ (インスタンスのストレージ)
1000 GB ストレージ (インスタンスのストレージ)
2000 GB ストレージ (インスタンスのストレージ)
June 2010 | Page 58
日本円 USD
Windows Azure
コンピューティング時間 (hour)
S ¥11.76 $0.12
M ¥23.52 $0.24
L ¥47.04 $0.48
XL ¥94.08 $0.96
ストレージ (GB/month) ¥14.70 $0.15
ストレージ トランザクション (10,000回) \0.98 $0.01
CDN キャッシュ(GB/month)
\14.7 (北米、欧州) \19.6 (その他地域)
$0.15 (北米、欧州) $0.20 (その他地域)
トランザクション(10,000回) \0.98 $0.01
AppFabric (※2010 年 4 月まで
課金なし)
アクセスコントロール(100,000回) \195.02 $1.99
サービスバス
1 コネクション \391.02 $3.99
5 コネクションパック \975.10 $9.95
SQL Azure Web Edition (1GB) ¥979.02 $9.99
Business Edition (10GB) ¥9,799.02 $99.99
Data Transfers
北米およびヨーロッパ 受信 (GB) ¥9.80 $0.10
送信 (GB) ¥14.70 $0.15
アジア太平洋 受信 (GB) ¥29.40 $0.30
送信 (GB) ¥44.10 $0.45
日本円での課金体系 (抜粋)
※ 1 ドル 98.000 円 (四半期ごとに見直し)
June 2010 | Page 59
「コスト」は包括的に考える必要がある
ハードウェゕ
OS
ミドルウェゕ
ゕプリケーション
カスタマズ
ンテグレーション
サービス運用
ゕプリ改善・保守
ネットワーク
電気代・CO2排出
• Windows Azure の基本利用コストに内包
• CALなどの概念はなく、ユーザー数(ゕカウント数)やデバス数が増えても費用が大きくはねることはない
• 仮想マシンやストレージ容量、データ転送量についてのみ「使った分だけ」課金。すなわち、ゕクセス頻度が低ければコストは低く抑えられる
• 最新鋭の高効率データセンターでの運用により電力消費を大幅に抑制
• 独自に構築するかサードパーテゖーゕプリを調達
• エンタープラズ用途の場合、クラウドを利用しても要件の絞り込み如何では従来の構築要件と変わらない項目もある
• 条件次第でSI’er または ISV に移管可能
June 2010 | Page 60
TCO分析ツールの結果
Windows Azure Platform vs. On-Premises Solutions Windows Azure Platform vs. On-Premises
Comparing the total cost of ownership of the Windows Azure Platform to an on-premises solution over the next year
June 2010 | Page 61
クラウドの真価は(金さえ払えば) 無限のスケーラビリテゖ
使用量
コン
ピュ
ーテ
ィン
グ
時間
平均
稼働不要な
時期
時間
平均使用料 コン
ピュ
ーテ
ィン
グ
時間
平均使用量 コン
ピュ
ーテ
ィン
グ
平均使用量
時間
コン
ピュ
ーテ
ィン
グ
June 2010 | Page 62
Windows Azure Platform 購買モデル
•
•
•
•
June 2010 | Page 63
Development Accelerator オファー
6 か月間限りの、通常より 42% - 46% 引きのサブスクリプションオファーを提供 オファーは月次ベースの「ユニット」単位で提供 (複数のユニットを購入可能)
超過分は通常の従量課金レートを適用 2010 年 6 月 30 日まで
June 2010 | Page 64
初期特別提供 MSDN Premium Core Extended
Windows Azure
コンピューティング時間 (hour) 25 750 750 750
ストレージ (GB/month) 0.5 10 10 10
ストレージ トランザクション (times) 10,000 1,000,000 1,000,000 1,000,000
AppFabric トランザクション 100,000 1,000,000 1,000,000 1,000,000
SQL Azure データベース 1 (Web Edition) 3 (Web Edition) 0 1 (Business Edition)
Data Transfers
北米およびヨーロッパ
受信 (GB) 0.5 7.0 7.0 7.0
送信 (GB) 0.5 14.0 14.0 14.0
アジア太平洋
受信 (GB) 0.5 2.5 2.5 2.5
送信 (GB) 0.5 5.0 5.0 5.0
Price 通常価格 (月) \1,345 \12,717 \9,780 \19,759
日本円 (月)
2010 年 1 月からの期間限定特別オファー
June 2010 | Page 65
セコロジー#1 タダで使うためにすべきこと
June 2010 | Page 66
セコロジー#2 課金は1時間単位の盲点
Azure課金の細則
CPU使用率は関係なく占有したデプロ時間で課金 (GAEよりEC2に近い)
Runしてなくてもデプロすれば(削除しない限り)課金発生。 ステージングも同じレート
最小単位は1時間。各時の0分から59分のスロットで、1分でもデプロすれば1時間分
June 2010 | Page 67
セコロジー#3 面倒な管理はコマンドレットで自動化
http://code.msdn.microsoft.com/azurecmdlets
June 2010 | Page 68
$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 }
アップグレード スクリプトの例
June 2010 | Page 69
Windows Azure Platform データ転送
June 2010 | Page 70
データ転送料のチェックポント
June 2010 | Page 71
生産性の高い開発ツールと 開発コミュニティへの技術提供は Windows プラットフォームの 好循環を生み出す原動力
マクロソフトが開発者を重視するのは プラットフォームビジネスの原点回帰
June 2010 | Page 72
PCの情報漏洩対策サービスの Azure 対応 ワンビ株式会社
不可視化
遠隔消去
時限消去
消去
証明書
トラストデリート 管理サーバー
Windows Azure
消去命令
認証
Windows 7 bitLocker対応 Windows Desktop Search対応
盗難・紛失PC のデータを遠隔で消去
Linux → Windows Server で、グローバル+クラウド対応が可能に
June 2010 | Page 73
キヤノン様のクラウド対応複合機ビジョン サードパーティー製 クラウドサービス
データ
ジョブ
トークン
June 2010 | Page 74
Microsoft Pinpoint • 会社、ゕプリケーション、サービス等を扱うマーケットプレス
• サービス ゕプリケーション販売までサポート予定
June 2010 | Page 75
ISV企業がAzureを使う理由
June 2010 | Page 76
後半はAppendix ?
Azure を好きになってさわってみたい!と感じてもらうことが本日のゴール
Azureの位置づけ
How to 開発・注意点
賢く使うコツ
Azureの仕組み
セキュリテゖ
運用監視
テスト・障害対応
性能保証
June 2010 | Page 77
セキュリテゖホワトペーパー(日本語訳)
http://bit.ly/azurejp
June 2010 | Page 78
オンプレミスに残すもの 不安があればクラウドに持ち出すな!
• パブリッククラウドに持ち出せないもの
– 法律上の制限
– 秘匿性が高いデータ、個人情報データ、会計データ
– 監査を必要とするシステム
– トランザクションの整合性を厳密に保証するシステム
– パフォーマンス(リゕルタム処理)にシビゕなシステム
• オンプレミスとクラウドのハイブリッド
– シームレスに連携するシステムを構築
– データの結合や整合性はゕプリで考慮
PUBLIC CLOUD
June 2010 | Page 79
マクロソフトの “クラウド サービス” は セキュゕですか?
June 2010 | Page 80
カテゴリー 対策 内容
機密性
物理的対策
・ 24時間、365日の監視 ・ 監視カメラによる監視 ・ モーションセンサーの設置 ・ 生体認証による入退出管理 ・ データセンター内への車での乗り入れ禁止 ・ セキュリテゖ境界線突破時のゕラーム通報
ネットワーク対策 ・ CyberTrust によるセキュリテゖ認定(四半期ごとに実施) ・ 9階層にわたるセキュリテゖ対策
情報漏洩対策 ・ サポート/サービスチームは、Secure ID カードもしくは RSH Secure ID Token を利用した認証を行う ・ データは全て128ビットで暗号化 ・全通信は HTTPS
完全性 データ保存
・ Raid 5+1 によるデータ保存 ・ Disk to Disk to Disk (ミラーリングで最低4コピー保持)
データバックゕップ ・ 日時バックゕップの実施 ・ Disk to Disk to Disk バックゕップ
可用性 物理的対策
・ ジオ リダンダント構成 ・ 複数の発電機を装備 ・ 電源は複数の発電所から2系統 ・ 各ラックでの電源2重化 ・ 発電機用の燃料は、地震などで道路が寸断された場合には空輸 ・ バッテリーによるバックゕップ ・ コンピューター コントロールによる空調制御
ネットワーク対策 ・ フルフェルオーバー
運用およびセキュリテゖ管理への対策
June 2010 | Page 81
サービス 現在 将来(6ヵ月以内に対応)
Online Service Delivery Platform
· EU Safe Harbor Seal
· CyberTrustCertification
· ISO 27001
BPOS-S
· EU Safe Harbor Seal
· CyberTrust Certification
· ISO27001
· FERPA*/HIPAA*
· SAS70 Type II
· GxP Pharma (SharePoint)
· FISMA
BPOS-D
· EU Safe Harbor Seal
· CyberTrust Certification
· FERPA*
· HIPAA*
· FIPS 140-2
· TIC Compliance
· ISO 27001 · FISMA
BPOS-Federal (US Only)
· EU Safe Harbor Seal
· CyberTrust Certification
· FERPA*/ HIPAA*
· FIPS 140-2
· TIC Compliance
· ISO 27001 · FISMA · ITAR
コンプラゕンス管理のロードマップ
June 2010 | Page 82
リスク項目 Windows Azure BPOS
サービス提供者の特権ユーザのゕクセス
・特権ユーザーゕクセスはログに記録、承認された人のみゕクセス可能。 ・運用については ITIL/MOF、ISO17799ベース。
サービス提供者とのコンプラゕンスの調整
・SAS70 TypeⅡ、ISO27001、CyberTrust等の外部監査あり。 ・ただし、お客様独自の監査を受け入れることは不可。
データの保管場所 ・利用時にデータが保管される国を指定可能。
・契約時に初期データが保管されるデータセンター(地域)を指定可能。
データの分離方法 ・不正侵入に対するモニタリングや、第三者機関によるペネトレーションテスト等を定期的に実施。 ・BPOSは、Dedicate 型サービスも提供。
障害からの復旧手順 ・複数のサトにまたがって複製。
・複数のサトにまたがって複製。 • RPO 12h、RTO 24h。
調査への支援 ・セキュリテゖンシデント(不正ゕクセス等)時には、お客様のニーズに対してログを収集、分析することをポリシーとして定めている。
リスクへの対応(まとめ)
June 2010 | Page 83
Windows Azure MMC
June 2010 | Page 84
June 2010 | Page 85
クラウドの潜在的脅威
June 2010 | Page 86
脅威 対策 Cross site scripting 出力テキストをエンコード
CSRF ユーザーごとのトークンを隠れフィールドに埋め込む
One-Click Attack ユーザーごとに異なるリクエスト形式を採用
HTTP replay attack SSL Network Eavesdropping SSL or IPSEC Password brute Force ロックアウトポリシーの実装 Repudiation attack 効果的なロギングの実装 File Canonicalization ファイル名の長さと正規化表現による検証
Denial of Service リスエスと数、ファイルサイズの検証 適切な例外処理の実装 詳細なエラーメッセージを表示しない
Forceful Browsing 認証コントロール データの暗号化
Man in the middle attack SSL or IPSEC SQL injection LINQ の使用 Response splitting コンテキスト依存のエンコーディング
クラウドの潜在的脅威への対策
June 2010 | Page 87
ネットワークもベストエフォート
出典:Submarine Cable Map 2009
June 2010 | Page 88
http://highscalability.com/blog/2010/5/26/end-to-end-performance-study-of-cloud-services.html
June 2010 | Page 89
多くのノードに分散してデータを保持
可用性のために 複製を使う Primary から自動フェルオーバーで最も近い secondary へ
0 2128
1
53 905
6435
5000
5501
A, B C, D, K, L
C, D A, B, E,
F
E, F C, D,G,
H
G, H E, F, I,
J
I, J K, L,G,
H
K, L A, B, I,
J Service Request
f(G) = 4601
X
1
53 905
6435 5501
E, F, H C, D,G,
I, J
I, J, G K, L,E, F, H
K, L A, B,G,
I, J
Service Instance
Service Instance
Service Instance
Service Instance
Service Instance
Service Instance
C, D A, B E, F G H I, J K, L
G
G
Replica Size = 3
C, D A, B, E,F,H
C, D A,B, E, F,
E, F,
C, D, ,
I, J
I, J,
K, L, E, F,
K, L
A, B, ,
I, J
C, D A, B, E, F
E, F C, D, G, H
I, J K, L, G, H
K, L A, B, I, J
Logical Partitions
Service Instances
X
June 2010 | Page 90
数万台もサーバーがあれば確率論的にどれかが壊れて当然という前提。
データの読み出しはプラマリのみ
セカンダリノードに非同期で 書き込みを行う
プラマリ障害時に昇格する セカンダリは多数決で決定
P
S
S
S
S Write Write
Write Write
Ack Ack Ack Ack
Read Value Write
Ack
64
210
2
30 90
135
180
225
50 76
120
151
103
200
83
98
174 218
250
40 46
17
r-6
r-5
r-4
r6
r5
r4
r7
数万台のサーバーとなると、 それぞれのサーバーは全ノード の管理領域を把握しにくい
ノードの離脱、追加を行った際に、管理領域の変更の影響をおさえる仕組みが必要
データ冗長化のイメージ 構造化オーバーレイ
冗長故の可用性: 障害を前提としたフェイルオーバーの機構
June 2010 | Page 91
ゲートウェ マスターDB 課金・認証 フロント ノード群
数百台のサーバーでフゔブリックを構成
サーバーをまたがったレプリケーションDBを作成して同期
SQL Server ンスタンス
… クラウド データセンター内 フゔブリック
サーバー1 サーバー2 サーバー3
サーバーをまたがったレプリケーションDBを作成して同期
SQL Azure Database のアーキテクチャ
June 2010 | Page 92
運用監視方法の違い
June 2010 | Page 93
ダッシュボード経由の監視
http://www.microsoft.com/windowsazure/support/status/servicedashboard.aspx
June 2010 | Page 94
診断データの取得 • 診断データはンスタンスのローカル ストレージで保存
• 診断 API により、オンデマンドもしくは定周期に取得
• 取得されたデータは、Windows Azure ストレージへ
ロール
ロール ンスタンス
診断 モニター
設定
クオータ
ローカル ストレージ
データ収集 (トレース、ログ、
ダンプ)
Windows データ
IIS ログ & 失敗ゕクセス ログ パフォーマンス カウンター
ベント ログ
Windows Azure
ストレージ
June 2010 | Page 95
診断データ一覧
データソース 既定 設定方法 フォーマット
トレース ログ 有効、ローカル保存 診断 API、トレース リスナー テーブル
パフォーマンス カウンター
無効 診断 API テーブル
イベント ログ 無効 診断 API テーブル
インフラ ログ 有効、ローカル保存 診断 API テーブル
IIS ログ 有効、ローカル保存 診断 API、Web.config ブロブ
IIS 失敗ログ 無効 診断 API、Web.config ブロブ
クラッシュ ダンプ 無効 診断 API、クラッシュ API ブロブ
その他のログ・ ファイル
無効 診断 API ブロブ
June 2010 | Page 96
Windows Azure プラットフォームの SLA
Web を通して接続されているサービス
ンターネットに接続されているロールとの外部接続性
すべての起動中のロールは継続的にモニター
もしロールに不具合があれば Microsoft が検知し正常な状態に起動
ンターネットゲートウェに接続されるデータベース
すべてのデータベースは継続的にモニター
>99.95% >99.9% >99.9% >99.9% >99.9%
ストレージ サービスの利用可能 (接続可能) 性
ストレージ リクエストのプロセスが成功したかどうか
サービスバスとゕクセスポントのエンドポントは外部接続性を持つ
メッセージ操作リクエストが正常にプロセス完了したかどうか
ンスタンス監視
& 再起動
ストレージ
可用性 データベース
可用性
サービスバス &
ゕクセス コントロール
可用性
コンピューテゖング
コネクテゖビテゖ
June 2010 | Page 97
Azure対応における注意点のまとめ
1. セキュリテゖ
– 各種の法的規制や社内ポリシーとのすり合わせが必要
– 実務レベルでもセキュリテゖ設計の見直しが必要になるケースがある
2. 性能保証
– クラウドはスケーラビリテゖに富むが、原理的に応答性能が保証しにくい
– ネットワーク帯域も問題になりやすい
3. 運用監視
– 現状では、クラウドはオンプレミスとは分けた運用監視が必要
– Azure の 99.9% 可用性で不十分な場合は、ハブリッド化などが必要
4. テストと障害対応
– ラブデバッグ不可、バージョン固定不可、サポートは英語
June 2010 | Page 98
June 2010 | Page 99
June 2010 | Page 100
© 2010 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.