ふりかえり windows azure
DESCRIPTION
2014/3/7 JAZUG(Japan WindowsAzure User Group)札幌 第1回JAZUG 札幌スタート!&Azure 日本Geoオープンマジデシタ記念勉強 Open Compute Project から物理サーバーの構成、SOSP paper からサービスのアーキテクチャを読み。Windows Azureとは何なのかをもう一度振り返ってみましょう。TRANSCRIPT
kyrt @takekazuomi 1
ふりかえり Windows AzureJapan Geo も開設した、 Windows Azure
今が“ふりかえり”のいい時期です。今一度、最初の疑問にもどって、 Windows Azure を捉え直してみましょう2014/2/26 kyrt @takekazuomi 3
結局のところ、レンサバと何処が違うの?
Key Word は、巨大データセンター、自動運用• 100 万台を超えるサーバを持って
いる(バルマー、 WPC 2013 )• http://
www.publickey1.jp/blog/13/ms100googleamazon.html
• 数十万台のサーバを備える最新データセンター、管理はわずか数十人• http://
www.publickey1.jp/blog/09/post_52.html2014/2/26 kyrt @takekazuomi 4
シカゴにある Microsoft のデータセンター内部 提供: Microsoft
サーバー数は
kyrt @takekazuomi 5
Google > Microsoft > Amazon
バルマー談 WPC 2013
「そして Yahoo や Facebook 、そのほかどの企業も、 10 万ユニットかそれ以下の規模である」
サーバーってどんなの?
• 先日、 MS がサーバー設計を Open Compute Project にコントリビュート• http://
www.opencompute.org/wiki/Motherboard/SpecsAndDesigns#Specs_and_Designs
• Rack(3 or 4c), Chassis(12U, 24sb), Server blades(1U,)• server blades (compute or storage)• 最大 96 server / rack• 10 E5-2400 each compute blade
• ChassisManager• サーバー診断、電力供給、ファンコントロール等 H/W
管理用の Code をコントリビュート• https://github.com/MSOpenTech/ChassisManager/
kyrt @takekazuomi 6
Microsoft’s Cloud Server Hardware from Data Center Knowledge
The Fabric Controller (FC) – 自動運用
• cloud operating system の “ kernel”• datacenter hardware の管理• Windows Azure service の管理
• 4 つの主な役割• Datacenter リソースの確保• Datacenter リソースの
調達• Service lifecycle の管理• Service health の管理
• FC は、 Infrastructure を code で制御ために仕組み• Infrastructures as Code !
Server
Kernel
Process
Datacenter
Fabric Controller
Service
Windows Kernel
Server
WordSQL
Server
Fabric Controller
Datacenter
ExchangeOnline
SQL Azure
Windows Azure Internals AZR302 - Mark Russinovich
省力化の例
• ハードウェアの故障• 修理、交換せずに別のものを使う• 故障数がスレッショルドを超えたら
対応
• 同一構成のハードウェアに揃える• 代わりに使える物理サーバーが増え
る• A1, A2, A3, A4 は同じ物理サー
バー、 A5,A6,A7 (多分同じ)、 A8,A9(??)
kyrt @takekazuomi 8
Windows Azure クラウドサービスに InfiniBand 採用の A8、A9 インスタンスを追加
Infrastructure を Codeで・・・・Infrastructure が Code で制御できるようになると、世界が変わります
kyrt @takekazuomi 9
?2014/2/26 kyrt @takekazuomi 10
世界規模のクラウド基盤サーバー / ネットワーク / データセンター
北米 4 カ所、ヨーロッパ 2 カ所、アジア 2 カ所、日本 2 カ所 豪州 2 カ所 + CDN 24 カ所
高度な自動化
統合リソース管理
柔軟性
従量課金
ネットワーク
仮想ネットワーク
トラフィックマネージャー
コンピューティング
仮想マシン
クラウドサービス
Webサイト
モバイルサービス
開発言語
キャッシュ メディア CDN データ分析HPC 統合ID サービスバス
アプリケーションバックアップ
データ管理
SQLデータベース ビックデータ テーブル BLOB
Windows Azure Storage例として Storage を深堀りして見よう!
2014/2/26 kyrt @takekazuomi 12
Windows Azure Storage は基盤
• Azure の随所で使われている、 Cloud 永続化レイヤー• Blob, Table, Queue がある。 3 つは共通の仕組上に構築• Azure 内でも諸々の用途に利用
2014/2/12 kyrt @takekazuomi
Azure Storage Clusters
Table Blob Queue
OS/Data Disk
Media Services
CloudDriveDiagnostics CDN
13
Design Goals
• 強い一貫性の元での高い可用性の実現 (Highly Available with Strong Consistency)• 障害や分断に直面してもデータアクセスを提供
• 永続性( Durability )• データの複数の複製の保持、( regions 間)
• スケーラビリティ( Scalability )• zettabytes へのスケール• 世界中からアクセスできる global namespace の提供• peak traffic 時の、 automatically scale out と load balance
• 追加情報、 SOSP paper に詳細情報がでています :• “Windows Azure Storage: A Highly Available Cloud Storage Service with
Strong Consistency”, ACM Symposium on Operating System Principals (SOSP), Oct. 2011
2014/2/12 kyrt @takekazuomi 14
Windows Azure Storage のアーキテクチャーコンポーネ
ント
s
front end
partition layer
stream layer
storage stamp
VIP
s
front end
partition layer
stream layer
storage stamp
VIPDNS
ロケーションサービス
アカウント管理
DNS参照
blob, table, queue へのアクセス
stamp 間リプリケーション
2014/2/12 kyrt @takekazuomi
stamp 内リプリケーション stamp 内リプリケーション
15
3つのレイヤ - Architecture Layers inside Stamps
• front end• リクエストの partition server へ転送• server と、 partition の割り振りを管理する partition map を保持
• partition layer• 高レベルのデータ構造( blob, table, queue) を実装• オブジェクトに対するトランザクションの順序付、一貫性の確保を実装• オブジェクトデータのキャッシュ
• stream layer• データをディスクに永続化。 stream と呼ばれるファイルを使い。保存方法と
リプリケーションを実装する。 stream は、 extent の ordered list で writeは、 append only
• このレイヤは、 Blob, Table などの構造やセマンティックに依存しない
2014/2/12 kyrt @takekazuomi 16
データセンター内の配置
• Spine( スピーナ ) は、上位のネットワーク。 Gen2 ( Quantum10 )のネットワークでは、Spine を経由してメッシュ状に接続されている• TOR ( Top-Of-Rack) ス
イッチ• FC ( Fabric
Controller )
kyrt @takekazuomi 17
TOR
FC1
… …
TOR
FC2
… …
TOR
FC3
… …FC3
TOR
FC4
… …
TOR
FC5
… …
Spine
Nodes
Rack
Windows Azure Internals/Mark Russinovichhttp://channel9.msdn.com/Events/TechEd/NorthAmerica/2012/AZR302
CAP 定理との関係
• stream layer では、シンプルな追加のみのデータ モデルにより、ネットワーク分割などの障害の発生時に高可用性が維持される• partition layer は、一貫性を保証する• 可用性担保する( Stream )レイヤーと整合性を担保するレイヤー
( Partition Layer )で役務を分割した• これによって、 CAP定理の下記の 3 つの条件を同時に満足している
• 一貫性 (Consistency) :全てのノードにおいて同時に同じデータが見える• 可用性 (Availability) :ノード障害により生存ノードの機能性は損なわれない• 分断耐性 (Partition-tolerance) :システムは任意の通信障害などによるメッ
セージ損失に対し、継続して動作を行う“Windows Azure Storage: A Highly Available Cloud Storage Service with Strong Consistency”, ACM Symposium on Operating System Principals (SOSP), Oct. 2011
2014/2/26 kyrt @takekazuomi 18
最後に
• 高密度サーバー、大規模データセンター、 Infrastructure as Code は、新しい世界( Cloud )への入り口• Windows Azure とは、高度に自動化された大規模データセンターに様々
なサービスを載せたクラウドサービス群の名称• Azure Storage では、 DC の障害モデルとアプリケーションアーキテクチャの融合で分散システムにおける一貫性と可用性の問題に対して新たなアプローチを示した• 従来のレンサバでは出来なかったことが可能になった
Azure 面白いkyrt @takekazuomi 19
Appendix
2014/2/26 kyrt @takekazuomi 20
リファレンス
Azure Storage の CAP定理の話は下記のドキュメントを見てください• 23rd ACM Symposium on Operating Systems Principles (SOSP)
"Windows Azure Storage: A Highly Available Cloud Storage Service with Strong Consistency“翻訳もあります• Windows Azure ストレージ : 高可用性と強い一貫を両立する クラ
ウド ストレージ サービス• http://msdn.microsoft.com/ja-jp/windowsazure/dd439432#leaning
•全ての情報は 2014/3/07 時点のものです。2014/2/12 kyrt @takekazuomi 21