Sheepdog: 仮想化環境のためのクラスタストレージシステム

Similar documents
i Ceph

現象 2 仮想マシン起動時に イベントログ ( システムログ ) に次のエラーイベントが記録される イベントログ内容種類 : エラーソース :storvsp イベント ID:5 Cannot load storage device in ' 任意の仮想マシン名 ' because the versi

PowerPoint プレゼンテーション

概要 ここでは先程デモを行った OpenStack の中で仮想マシンのデータがどのように管理されているかをご紹介致します OpenStack の中でデータがどのように配置され 管理されているかを知ることは 可用性を検討する上で非常に重要になります 2

(Microsoft PowerPoint - Mirapoint\220\273\225i\221\316\224\344\225\\\(6\203V\203\212\201[\203Y_7\203V\203\212\201[\203Y\).ppt)

PowerPoint プレゼンテーション

Corp ENT 3C PPT Template Title

Microsoft Word - nvsi_050110jp_netvault_vtl_on_dothill_sannetII.doc

Software-Defined Storage ware Virtual SAN ware Virtual SAN

XHS1991.COM 国際 IT 認定試験問題集の提供者 1 年で無料進級することに提供する

MATLAB® における並列・分散コンピューティング ~ Parallel Computing Toolbox™ & MATLAB Distributed Computing Server™ ~

160311_icm2015-muramatsu-v2.pptx

スライド 1

DocuWide 2051/2051MF 補足説明書

目次 1. はじめに 用語説明 対象アダプタ P HBA/2P HBAで異なる性能 付録 ( 性能測定環境 ) P HBAでの性能測定環境 P HBAでの性能測定環境 本書の

untitled

(^^

Agenda Hadoop Sahara Kilo Q&A Copyright 2015 Mirantis, Inc. All rights reserved Page 2

VE-GD21DL_DW_ZB

1部2部3. ライセンスの順位 第 3 章ライセンスガイド第CA ARCserve Replication / High Availability のライセンスは 以下のように順位が決められており 上位ライセンスを下位の環境に適用することが可能です Enterprise > Standard > V

Microsoft Word - nvsi_080177jp_trendmicro_bakbone.doc

GPGPU

Page 1 of 6 B (The World of Mathematics) November 20, 2006 Final Exam 2006 Division: ID#: Name: 1. p, q, r (Let p, q, r are propositions. ) (10pts) (a

PFQX2227_ZA

(Microsoft PowerPoint - Mirapoint\220\273\225i\221\316\224\344\225\\\(5\203V\203\212\201[\203Y_7\203V\203\212\201[\203Y\201j.ppt)

GP05取説.indb

00.目次_ope

VE-GP32DL_DW_ZA

NEC Storage series NAS Device

,,.,,., II,,,.,,.,.,,,.,,,.,, II i

Presentation Template Koji Komatsu

fx-9860G Manager PLUS_J

データセンターの効率的な資源活用のためのデータ収集・照会システムの設計

JP-AN-186_Feb_2015 -JP

Microsoft Word - qtsi_120246jp_rhev.doc

Oracle Solaris 仮想環境とプロビジョン環境の構築

28 Docker Design and Implementation of Program Evaluation System Using Docker Virtualized Environment

Windows Server 2016 Hyper-V ストレージQoS機能の強化

ActiveImage Protector 3.5

DEIM Forum 2012 C2-6 Hadoop Web Hadoop Distributed File System Hadoop I/O I/O Hadoo

Arcserve Replication High Availability 18.0 ライセンスガイド Rev 1.3

アジェンダ はクラウド上でも十分使えます 1. の概要 とは の導入事例 で利用される構成 2. をクラウドで使う クラウドサービスの分類 Amazon Web Services による構成例 2

2 except for a female subordinate in work. Using personal name with SAN/KUN will make the distance with speech partner closer than using titles. Last

取説_VE-PV11L(応用編)




仮想マシンのリソース制限 日本 OpenStack ユーザ会第 17 回勉強会 2014/01/20 株式会社日立製作所横浜研究所運用管理システム研究部クラウドサービスプロジェクト 西島直 Hitachi, Ltd All rights reserved.

nakayama15icm01_l7filter.pptx

JP1 Version 11

DataKeeper for Windows リリースノート

Oracle Application Server 10g( )インストール手順書

はじめに

7,, i

システムソリューションのご紹介

2

soturon.dvi

Vol. 48 No. 4 Apr LAN TCP/IP LAN TCP/IP 1 PC TCP/IP 1 PC User-mode Linux 12 Development of a System to Visualize Computer Network Behavior for L

Congress Deep Dive

NKK NEWS 2012

Hitachi Storage Adapter -Hitachi Storage Adapter for VMware vCenter- サポートマトリックス

富士通PRIMERGYサーバ/ETERNUSストレージとXsigo VP560/VP780の接続検証


設定手順

<Documents Title Here>

MmUm+FopX m Mm+Mop F-Mm(Fop-Mopum)M m+mop MSuS+FX S M S+MOb Fs-Ms(Mobus-Fex)M s+mob Fig. 1 Particle model of single degree of freedom master/ slave sy


Arcserve Backup 間違いやすいライセンスー目次 Client Agentが必須になるパターン Disaster Recovery Option Tape Library Option 仮想環境でのライセンス この資料は Arcserve Backup 利用時の間違いやすいライセンスにつ

Transcription:

Sheepdog: 仮想化環境のためのクラスタストレージシステム NTT サイバースペース研究所森田和孝 2010/11/24 Internet Week 2010

Sheepdog とは 仮想マシン専用のクラスタストレージシステム 仮想マシンに任意のサイズの仮想ディスクを提供 Sheepdog のクライアント機能は QEMU 0.13.0 で標準機能として採用されている OpenStack などと組み合わせて動かせるようにしようと検討中

仮想化環境用ストレージ IaaS 環境に適した, Amazon EBS のようなストレージシステムが OSS では存在しない IaaS 環境 仮想マシン 仮想ハードディスク ホストマシン 仮想化環境用ストレージの要件 - 拡張性 - 信頼性 - 運用性 3

既存のストレージ技術 SAN ストレージ 大規模な SAN ストレージは非常に高価拡張性 集中型アーキテクチャなので単一障害点になりうる信頼性 分散ファイルシステム (Ceph, Luster) 規模が大きくなってくると, クラスタの管理が大変になる運用性 仮想マシンホストマシン FC スイッチ SAN ストレージ仮想マシンホストマシンイーサネットスイッチ メタデータサーバ データサーバ 分散ファイルシステム 4

Sheepdog 完全等質なクラスタストレージ 仮想マシン ホストマシン 拡張性 数百台でも動作可能 信頼性 データは冗長化されて保存されている 単一障害点なし イーサネットスイッチ 運用性 自律動作 クラスタメンバの動的管理 高度なディスク操作機能 5

設計 : 仮想マシン専用ストレージ 制限を加えることで, 非常にシンプルな設計を実現 API は仮想化ソフトウェア QEMU に特化 通常のファイルシステムとしては利用できない 同じ仮想ディスクを複数の仮想マシン間で共有できない 他サーバの sheep デーモンと通信 sheep sheep ( サーバデーモン ) ゲスト OS ゲスト OS sheep ディスク入出力 QEMU ホストマシン 6

仮想ハードディスクの保存方法 仮想マシンにオブジェクトストレージを提供 仮想ハードディスクは 4 MB 単位のデータオブジェクトに分割されて保存される 仮想ハードディスクとデータオブジェクトの対応関係は VDI オブジェクトに保存される /dev/hda 仮想ハードディスク VDI オブジェクト 0 1 3 0 1 2 3 データオブジェクト VDI オブジェクト 0 1 3 オブジェクトストレージ 7

クラスタのマシン管理 Corosync 高信頼アトミックマルチキャスト, 動的メンバ管理の実装 有名な OSS (Pacemaker, GFS2, etc) に採用されている Sheepdog は Corosync の高信頼マルチキャストを用いて, メタデータサーバを不要にした マシン A マシン B Lock volume a Lock volume b Lock volume a Lock volume b Lock volume b (failed) Lock volume b (failed) マシン C Lock volume a Lock volume b Lock volume b (failed) 8

性能 Sheepdog NFS (NetApp FAS 2020) VM VM VM VM VM VM VM VM VM VM VM VM VM VM VM VM VM VM VM VM VM VM VM VM Ethernet Ethernet NFS CPU : Core2 Quad 2.4GHz メモリ : 2 GB ネットワーク : 1 Gbps ディスク : SATA 7200 rpm ホストマシン台数 : 8 64 仮想マシン台数 : 1 256 データ冗長度 : 3 FAS 2020 (NetApp storage) 9

性能 $ dbench -s -S 物理マシンを増やすと全体のスループットが上昇する 10

まとめ Sheepdog は拡張性, 運用性, 信頼性を考慮した, IaaS 環境用のクラスタストレージシステム Sheepdog のクライアントは QEMU 0.13.0 より標準機能化 開発者, ユーザ募集中 その他の情報 プロジェクトページ http://www.osrg.net/sheepdog/ メーリングリスト sheepdog@lists.wpkg.org 11

12

付録 13

Architecture: fully symmetric Zero configuration about cluster members Similar to Isilon architecture VMs Host machines ethernet switch ethernet switch VMs Sheepdog cluster Sheepdog cluster Use sheepdog as a network storage VMs Use sheepdog as a virtual infrastructure 14

Snapshot Copy VDI Object, and make allocated data objects read-only Updating read-only objects causes copy-onwrite VDI Object VDI Object VDI Object 10 11 13 10 11 13 20 11 23 VDI Object (snapshot) VDI Object (snapshot) 10 11 13 10 11 13 Create snapshot Copy-on-write 15

Sheepdog の構成要素 corosync corosync corosync gateway VM -------- qemu VM -------- qemu gateway VM -------- qemu クラスタ管理 オブジェクトストレージ gateway storage server storage server storage server 16

オブジェクトストレージ 可変長のデータ ( オブジェクト ) を一意の識別子を指定して保存できる クライアントはオブジェクトがどこに保存されるかを気にしなくてよい Sheepdog に存在するオブジェクトは二種類 Writable オブジェクト Read-only オブジェクト write read オブジェクトオブジェクト 17

オブジェクトストレージの実装 コンシステントハッシュ法を利用 マシンの参加や離脱によって, データ配置が大きく変わらないことが特徴 NAME: E ID : 169 150 175 0 NAME: A ID : 18 25 50 Sheepdog のサーバ, オブジェクトはコンシステントハッシュリングの上に配置される 125 NAME: D ID : 133 100 75 NAME: B ID : 55 NAME: C ID : 81 18

Replication Many distributed storage systems use chain replication to maintain I/O ordering Sheepdog can use direct replication because write collision cannot happen Chain replication gateway Direct replication gateway storage server storage server storage server storage server storage server storage server write read write (parallelizable) read (from one of them) 19

Node membership history All nodes store the history of node membership Objects are stored with the version of node membership (epoch) epoch 1 A, B Node membership 2 A, B, C 3 A, B, C, D, E 4 B, C Machine A Machine B Machine C Machine D Machine E obj:1 obj:1 Time Machine C joined Machine D, E joined obj:1 obj:1 obj:2 obj:2 obj:2 obj:2 obj:3 obj:3 Machine A, D, E left obj:4 obj:4 20

クラスタのマシン管理 Totem リングプロトコル 動的なメンバの管理を実現 全順序かつ高信頼なマルチキャストを実現 仮想同期を実現 マシン A MSG1 MSG2 MSG3 B is down MSG4 MSG5 マシン B MSG1 MSG2 MSG3 マシン C MSG1 MSG2 MSG3 B is down MSG4 MSG5 21

Strong consistency Avoid reading old objects If requested object is not valid, system must return I/O error A and B stores obj (epoch 1) Without epoch A B C obj obj With epoch A B C obj:1 obj:1 C joined (epoch 2) obj obj obj:1 obj:1 obj is updated to obj' obj obj' obj' obj:1 obj':2 obj':2 B and C are failed (epoch 3) obj Is this obj valid? obj:1 Invalid This obj may be updated in epoch 2 22

Corosync problem 16 1 2 15 3 14 4 13 5 12 11 10 9 8 7 6 Totem single-ring protocol with a large number of nodes doesn't work well

Approach: use multiple rings 12 16 Consider several local rings (blue, red, and green) and one central ring (gray). Each ring uses a different multicast port. Each node is placed on one of the multiple local nodes 1 2 Central ring 11 7 Representative nodes of each ring are also placed on a central ring Each ring has a master node (with a bold line) 6 1 2 11 7 16 12 13 Local ring Local ring Local ring 5 4 3 10 9 8 15 14

Total order multicast 1 2 3 1. Send multicast message in the local ring 2. If master node receives the message, the node resends the multicast message in the central ring 3. If master nodes receive the message in the central ring, each master node resends the multicast message in the local ring Message ordering is coordinated by multicast in the central ring