Comments
Description
Transcript
広域分散IaaSクラウドの設計と構築 ~ WIDE Cloud
広域分散 IaaS クラウドの 設計と構築 〜 WIDE Cloud 〜 関谷 勇司 ADVNET 2012 2012/10/12 WIDE Cloud 〜 大学間広域 IaaS クラウド 〜 NAIST JAIST Inter-University Cloud Sharing the resources on each private cloud Univ. of Tokyo Tokyo DC WIDE Cloud Osaka DC Keio Univ. (SFC) NIPH a SFO DC 2012/10/12 Keio Univ. (KMD) CNU (Korea) ADVNET 2012 WIDE Cloud の挑戦 1. 仮想計算機の資源を広域に分散 • 広域環境でのVM構築 2. インターネット回線を用いて仮想計算機 環境を構築 • セキュリティ確保とネットワーク障害 を回避するための諸技術実証実験 • 次世代ネットワーク環境(IPv6)に対 応した連携プロトコル設計 3. 企業間の連携とは異なる、大学間特有の 共通サービス提供への挑戦 • 資源を融通し合うためのポリシーと メカニズム • 広域仮想計算機資源のユーザへの 提供実験 2 WIDE Cloud の挑戦 • 拠点単位の障害回避 • ネットワークの柔軟性 拠点B 拠点A 拠点B Migratable Network 拠点A Distributed Storage 拠点C 2012/10/12 拠点B 拠点A VM Replication Migratable Network ADVNET 2012 3 広域分散 IaaS の冗長性 Storage� Storage� HA Server� HA HA Server� HA HA Network� HA Network� HA 2012/10/12 HA ADVNET 2012 4 Amazon EC2 / S3 の障害例 • 2008/02/15 – Amazon S3 停止 – 復旧に数時間を要する • 2008/07/20 – Amazon S3 停止 – 復旧に数時間を要する • 2009/12/09 – バージニア州 EC2 サイト電源障害 – インスタンス (VM) 復旧に数時間を要する • 2010/04/01 – US 東海岸 EC2 サイトにてインスタンス制御不能 – 数時間後に復旧 • 2011/04/21 – US 東海岸 EC2 サイトにて再ミラーリング頻発による高負荷障害 – 4日ほど高負荷状態が継続 • 2012/06/30 – – – – 2012/10/12 バージニア州 EC2 サイトで電源障害 EBS, RDS, ELB といったサービスも連鎖障害 復旧に数時間を要する Instagram, Pinterest, Flipboard, Heroku, CloudApp, Netflix といったサービスに障害 ADVNET 2012 5 その障害が波及 出展 : http://itpro.nikkeibp.co.jp/article/COLUMN/20111122/374827/?k2 2012/10/12 ADVNET 2012 6 その他のクラウドサービスも • WebARENA Cloud 9 (NTT PC コミュニケーションズ) – 2011年5月にストレージ障害発生 => サービス停止 • NIFTY Cloud (@nifty) – 2011年11月にDNS 設定による障害発生 • さくらのクラウド (さくらインターネット) – 2011年12月にストレージに起因する障害 => 現在も新規申込み一時停止中 • Windows Azure (microsoft) – 2012年2月にうるう年に起因する障害発生 • Gmail (google) – 2009年5月にほぼ全サービスに影響する大規模障害 – 2011年2月にソフトウェア更新に起因する障害 • ファーストサーバ – 「クラウド」ではないかもしれませんが 2012/10/12 ADVNET 2012 7 IaaS の可用性を向上させるために • ネットワーク移動透過性 – VM が利用するネットワークを拠点間にて透過的 に提供 • ストレージ可用性 – 単一ハードウェアや単一拠点に頼らないストレー ジの提供 • 計算資源冗長性 – 単一ハードウェアや単一拠点に頼らない計算資 源分布 – COLD standby vs. HOT standby 2012/10/12 ADVNET 2012 8 分散ファイルシステムの可能性 • 100台以上のサーバを 用いて実験 – StarBED @ NICT 北陸 リサーチセンター – 遅延を入れて広域環境 をエミュレーション • 障害が発生した場合の リカバリー – ナイーブな技術 Sheepdog http://www.osrg.net/sheepdog/ GlusterFS http://gluster.org/community/documentation/index.php/Main_Page 2012/10/12 ADVNET 2012 9 StarBED を利用した分散ファイルシステム実験 Virtual machines running directly on the sheepdog cluster Virtual machines running outside of the sheepdog cluster using iSCSI interface VM VM VM Hypervisor & iSCSI initiator Provide iSCSI interface iSCSI target & Storage node VM Hypervisor & Storage node Storage node Gluster / Sheepdog cluster 100 storage nodes of 500GB HDD, about 2TB storage in total 2012/02 2012/10/12 ADVNET 2012 10 sheepdog 評価 (1) • • • • 3 sheepdog 検証 分散ハッシュ型ストレージ 10台の 3.1 PC のローカルストレージを利用 ネットワークトポロジ 1HV にて 図 10VM を立ち上げ最大 100VM にて検証 1 に検証に用いたトポロジを示す。 実験トポロジ (sheepdog) 2012/10/12 ADVNET 2012 図 1: sheepdog 検証ネットワークトポロジ 11 sheepdog 評価 (2) • 実験環境 • • • • HV : Ubuntu 11.10 (64bit) VM : Debian 6.0 (32it) Sheepdog : 0.2.3 Corosync : 1.3.0 • 計測ソフトウェア • bonnie++ • 計測手法 • ストレージ • 物理サーバのローカル HDD(500G) * 10 • クライアント • 10台の HV にそれぞれ 10VM (100VM) • 5回の試行 2012/10/12 ADVNET 2012 12 sheepdog 評価 (3) KB /sec 100000 10000 1000 MAX AVERAGE MAX(D) 100 AVERAGE(D) D は 50ms の遅延入り 10 1 put chra 2012/10/12 put block rewrite block get char ADVNET 2012 get block 13 GlusterFS 評価 (1) • • • • ファイル分散型ストレージ 128台の PC のローカルストレージを利用 1HV にて 10VM を立ち上げ最大 100VM にて検証 実験トポロジ (GlusterFS) 2012/10/12 ADVNET 2012 図 2: GlusterFS 検証ネットワークトポロジ 14 GlusterFS 評価 (2) • 実験環境 • HV : Ubuntu 11.10 (64bit) • VM : Debian 6.0 (32it) • GlusterFS : 3.2.1 • 計測ソフトウェア • bonnie++ • 計測手法 • ストレージ • 物理サーバのローカル HDD(500G) * 10 • クライアント • 10台の HV にそれぞれ 10VM (100VM) • 5回の試行 2012/10/12 ADVNET 2012 15 GlusterFS 評価 (3) – Distributed mode KB /sec 1000000 100000 10000 MAX AVERAGE 1000 MAX(D) AVERAGE(D) 100 D は 50ms の遅延入り 10 1 put chra 2012/10/12 put block rewrite block get char ADVNET 2012 get block 16 GlusterFS 評価 (4) – Replica mode KB /sec 1000000 100000 10000 MAX AVERAGE 1000 MAX(D) AVERAGE(D) 100 D は 50ms の遅延入り 10 1 put chra 2012/10/12 put block rewrite block get char ADVNET 2012 get block 17 GlusterFS 評価 (5) – VM 増加 (Distributed mode) KB /sec 800000 700000 600000 500000 AVERAGE (10) 400000 AVERAGE (50) AVERAGE (100) 300000 () 内は VM 数 200000 100000 0 put char 2012/10/12 put block rewrite block get char ADVNET 2012 get block 18 広域分散 IaaS クラウドに適したネットワークとは • 前提 – VMに変更は加えない • L3 ネットワークにとらわれない – 管理組織の異なるネットワークへの HV の設置 • 容易なL2拡張 – データセンター / 組織間をまたいで L2 拡張できること • 経路の最適化と耐障害性の向上 – VM -> Internet • 出口の冗長化 – Internet -> VM • 入り口の冗長化 (AS 内部 / AS 外部) 2012/10/12 ADVNET 2012 19 SDN (Software Defined Network) の利点 • 拠点間にまたがるクラウドに適した SDN 技術 – OpenFlow によるネットワーク制御 • 単なるトンネル制御 ? – 制御しやすいオーバーレイ技術とは • NVGRE ? VXLAN ? • クラウドにとっての仮想化ネットワーク – 構造化と抽象化 – 部品は乱立している • VPLS, VXLAN, Q-in-Q, Mac-in-Mac – 何ができればクラウドに最適なのか • SDN による構造化 – ネットワークは 2次元から3次元へ 2012/10/12 ADVNET 2012 20 ネットワーク移動透過性の実現 IPv6 Internet IPv4 Internet NAT64 Boxes Datacenter 2 Datacenter1 Hypervisors Hypervisors Datacenter 3 Datacenter 4 VMs Hypervisors 2012/10/12 Hypervisors ADVNET 2012 21 LISP + VXLAN Back Bone Network ARP Packet SRC : Node A DST : L2 Broadcast VTEP A VXLAN EnCAP SRC : VTEP A DST : L3 Multicast ARP Packet SRC : Node A DST : L2 Broadcast Node A LISP (Locator Identifier Separation Protocol) VXLAN (Virtual eXtensible Local Area Netwowk) AaaS (AS as a Service) の実現 2012/10/12 ADVNET 2012 22 導入・運用コストの低減 • ラピッド・デプロイメ ントツールの導入 • HV の動的増減 – StarBED や大 学内部のサーバ 資源を動的に活 用 2012/10/12 ADVNET 2012 23 統一的監視手法 • VMM-MIB – draft-asai-vmm-mib-00.txt • HyperVisor – 物理 CPU / メモリ情報 • VM – VM 定義情報 – VM 状態 – リソース • CPU / メモリ / Affinity – ストレージ • 利用中のサイズ – NIC • トラフィック量 • ifindex ポインタ 2012/10/12 ADVNET 2012 24 監視手法の実装 $Q:\-Q-./+_3. 4+4_&-/4= ()"* .-/#8.Q: 7,-./` 8.Q:; $^#"$% # CQQ#Q1R& # 5D:-2C1832& # CQ8& # C4:[8& # C8/32+,-& # C1E8 C12/8.Q:; !12/[+\&Q+451.-8 \1RC12/7*$ 8D8/-Q&4+\\ \1RC12/; 0W(A#XY(WBXTY(#"$% a 2012/10/12 038/&W(NU3Q#J ADVNET 2012 0D:-2C1832N!"" 25 最近落とせなくなってます。。。 2012/10/12 ADVNET 2012 26