Upload
oss
View
3.329
Download
4
Embed Size (px)
DESCRIPTION
OSS(オープンソース)分散仮想ストレージのXtreemFS, Ceph, GlusterFSの紹介資料
Citation preview
分散仮想ストレージシステム ご紹介資料
OSSラボ株式会社
2013/11/21
1
クラウドストレージとは
l クラウド上のストレージサービス l ユーザは物理的にどのデータセンタ/サーバ/ストレージ/ディスクに自分のデータが格納されているのか、全く意識しなくて良い
l バックアップもオプション指定するだけで、自動的に地理的分散を保証してくれる
2
オブジェクトストレージ(REST)のS3と、ブロックデバイスのEBSを提供
オブジェクトストレージ(REST, JSON/XML etc.)のCloud Storageと、ブロックデバイスのPersistent Diskを提供
オブジェクトストレージ(REST, NTFS)のBLob Storage(Azure Drive)と、ブロックデバイスのLocal Storageを提供
異なるサービス間、またはオンプレミス環境のストレージと互換性/可搬性がない
クラウド透過なクラウドストレージが理想
3
オンプレミス (物理・仮想マシン) プライベートクラウド
パブリッククラウドサービス (仮想マシン)
VMware, OpenStack, etc.
POSIX (FUSE)
自動 レプリケーション
ブロック デバイス
オブジェクト ストレージ 共有ファイル
VMイメージ REST API (S3, SWIFT互換)
ハイブリッド・クラウド 仮想マシン群
オンプレミス (物理・仮想マシン) プライベートクラウド
パブリッククラウドサービス (仮想マシン)
自動 レプリケーション
仮想ストレージとは
l 仮想ストレージの階層 l Disk Virtualization (ディスクの仮想化) :論理ブロック(LBA) l Block Virtualization (ブロックの仮想化) :LVM/RAID l File Virtualization (ファイルの仮想化) :VFS l File System Virtualization (ファイルシステムの仮想化) (SNIA(Storage Network Industry Association)が作成したストレージ仮想化技術の分類)
l ファイルシステムの仮想化: l クラスタ/グリッドファイルシステム/仮想ストレージ/Software Defined Storage, etc.
l ユーザからはサーバや記憶装置の多様性と分散が隠蔽され、単なるボリュームやファイルとして扱える透過性を持つ。
l 商用製品例 l EMC ViPR l VMware VSAN l Datacore SANSymphony-V l NexentaStor
l 分散ファイルシステムは、レプリケーションによるフォールトトレラント性強化を目指したもの、並列化による性能強化を目指したもの、両方を同時に実現しようと設計されたものがある。 4
分散仮想ストレージとは
l 汎用PCサーバ/汎用OS(Linux)を使用 l 特別なハードウェア不要 l フォールトトレラント l スケールアウト l 汎用プロトコル
l POSIXファイルシステム l ブロックデバイス l REST(AWS S3/SWIFT互換) l NFS/SAMBA
l リモートレプリケーション(WAN越し)
5
分散仮想ストレージのアーキテクチャ
l メタデータ管理 l 集中管理型/分散管理型、フォールトトレランス、スケールアウト
l ネーミング l データ格納場所とオブジェクトIDのマッピングアルゴリズム
l クライアントアクセス l POSIX/FUSE/Block/REST
l キャッシングと一貫性保持 l WORM/Transactional locking/Leasing
l レプリケーション/同期方式 l 同期/非同期、Read only/Read/Write、CAP定理、PAXOS
l ロードバランス l データ偏在の自動修正
l 自己修復機能(Self Healing)
6
ユースケース:共有ファイルサーバ
7
アプリケーション ストレージ クラスタ
ストレージ クラスタ
データ
データ
R/W
同期 レプリケーション
仮想ストレージ
ストレージ クラスタ
ストレージ クラスタ
データ
データ
同期 レプリケーション
仮想ストレージ
DC #1 DC #n
アプリケーション
R/W
アプリケーション
Read Only
アプリケーション
Read Only
アプリケーション ストレージ クラスタ
ストレージ クラスタ
データ
データ
R/W
同期 レプリケーション
仮想ストレージ
ストレージ クラスタ
ストレージ クラスタ
データ
データ
同期 レプリケーション
DC #1 DC #n
アプリケーション
R/W
アプリケーション
アプリケーション
R/W
R/W
非同期Read Only レプリケーション
同期Read/Write レプリケーション
ユースケース:バックアップ/DR
8
アプリケーション ストレージ クラスタ
ストレージ クラスタ
データ
データ
R/W
同期 レプリケーション
仮想ストレージ
アプリケーション
ストレージ クラスタ
ストレージ クラスタ
データ
データ
R/W 同期
レプリケーション
仮想ボリューム
LVM ミラリング
ストレージ クラスタ
ストレージ クラスタ
データ
データ
同期 レプリケーション
仮想ストレージ
ストレージ クラスタ
ストレージ クラスタ
データ
データ
同期 レプリケーション
仮想ボリューム
DC内一次バックアップ
非同期 Read Only
レプリケーション
非同期 Read Only
レプリケーション
DR二次バックアップ ファイルマウント
ブロックデバイス
ユースケース:ログ集約
9
アプリケーション ストレージ クラスタ
ストレージ クラスタ
ログ
ログ
Write 仮想ストレージ
ストレージ クラスタ
ストレージ クラスタ
ログ
ログ
DC #1
非同期 Read Only
レプリケーション
DC #n
アプリケーション
Write
アプリケーション
アプリケーション
Write
Write
ログ ログ
ログ ログ
ユースケース:CDN
10
アプリケーション ストレージ クラスタ
ストレージ クラスタ
データ
データ
書き込み
同期 レプリケーション
仮想ストレージ
ストレージ クラスタ
ストレージ クラスタ
データ
データ
同期 レプリケーション
仮想ストレージ
DC内一次ストレージ
非同期 Read Only
レプリケーション
リモートレプリケーション
クライアント
Read Only
クライアント
ユースケース: VMイメージストア
11 11
VM ストレージ クラスタ
ストレージ クラスタ
マウント
同期 レプリケーション
仮想ストレージ
ストレージ クラスタ
ストレージ クラスタ
同期 レプリケーション
DC #1
同期 Read/Write レプリケーション
DC #n
VM
VM
VM
マウント
ライブマイグレーション
ライブマイグレーション
ユースケース:HAストレージ
12
ホスト アクティブ
ストレージ クラスタ
ストレージ クラスタ
マウント 仮想ストレージ
ストレージ クラスタ
ストレージ クラスタ
DC #1
非同期 Read Only
レプリケーション
DC #n
ホスト スタンバイ
ホスト スタンバイ
ホスト アクティブ
マウント
HA構成 HA構成
XtreemFS l 概要と特長
l XtreemFSは、スケーラビリティとフォールトトレランスを備えたオブジェクトベースのグローバル分散ファイルシステムであり、BSDライセンスで提供される。Javaで実装され、Linux, MacOSX, Windows(クライアントのみ)がサポートされている。またHDFS互換の機能も提供されており、HDFS Name Node / Data Nodeの代わりに使用する事もできる。
l 開発/サポート体制 l フランス政府研究省および、経済財政産業省が共同管理するフランス国立研究所であるINRIA(Institut National de Recherche en Informatique et en Automatique、 フランス国立情報学自動制御研究所)が中心となってEC各国と中国の19機関が2006年から共同開発した、科学技術計算グリッドシステム環境XtreemOSプロジェクトの一環として開発された。
13
XtreemFSのアーキテクチャ
14
vfs
FUSE
File system
ブロック デバイス
User space Kernel space
XtreemFS Client Application
MRC
① DIR
OSD
vfs
ブロックデバイスドライバ
BabuDB
BabuDB
②
③
ONC-RPC
Heart-beat
Meta-data
XtreemFSのReplication機能 l Replicationは以下のポリシーが可能
l Read/Write l Primary/Backupモデル、定期的に更新されるリースによってPrimaryが選定される l レプリカ数は最大10までが推奨 l Writeは、全てのBackupに直ちに同期される l 同期には下記の2通りのポリシーがある
§ WaR1(Write all, Read 1) 全てのBackupに書き込みを完了する § WqRq (Write quorum, Read quorum)過半数のBackupに書き込みが完了する
l Read Only l 複製先は更新できない l Full replicaとPartial Replicaが設定できる l Fullはファイル作成時に全ての複製が作成される l Partialはファイル作成時には空のファイルが作成されクライアントからリクエストがあった時点でオンデマンドでフェッチされる
l 複製先の選択 l Gouping PolicyによってOSD (データノード)がどのデータセンターに所属し、データセンター/クライアント
間の距離によって、複製先が選択される
15
Ceph l 概要と特長
l Ceph は、カリフォルニア大学サンタクルーズ校 (UCSC) の Sage Weil (現DreamHost / Inktank共同設立者)がストレージ・システムに関する博士論文の研究プロジェクトとして、2007年から開発を始められたファイルシステムであり、2010年 に Linux カーネル (2.6.34 以降) に組み込まれた。
l CephはLGPL V2.1ライセンスで提供され、商用版はCeph EnterpriseとしてInktankから販売サポートされている。
l 開発/サポート体制 l 開発はInktankを中心に進められているOpen Coreモデルである。オープンソース版がコアになり、商用版は管理用GUIやSNMPインターフェース、Hyper-V連携等が加えられ、サポートが提供される。
l 2012年7月に最初の安定板をリリースした後、約3ヶ月毎にバージョンアップが行われ、現在は2013年11月にリリースされた5番目のV0.72(Emperor)が提供されている。V0.72は、Linuxカーネル3.4.20以降または3.6.6以降でサポートされており、Windows版やMac版は提供されていない。また、OpenStackやCloudStackと共同でIaaS基盤とのストレージ連携を強化している。 16
kernel Device driver
Cephのアーキテクチャ
17
vfs
FUSE
File system
ブロック デバイス
User space Kernel space
Ceph-fuse Client Application
MDS
① Monitors
OSDs
vfs
ブロックデバイスドライバ
②
③ vfs
User space Kernel space
Ceph-kernel Client Application
RADOS
CephのMulti-site Replication機能
オブジェクトストレージ(RADOSGW)のみ 対応済み l 物理的ロケーションの離れた別クラスターにメタデータとデータを複製。
l 複製方式は、マスター/スレーブ、スレーブはRead Only
l 複製先は複数可能 l ディザスタリカバリー用のバックアップデータを保証する。
l 一貫性はAP(Eventually consistency)
18
GlusterFS l 概要と特徴
l GlusterFSは、2005年に起業したGluster, Inc.によって開発されていたが、2011年のレッドハットによるGluster買収後はレッドハットにより開発されている、ファイルベースの分散並列フォールトトレラントファイルシステムである。オープンソース版のGlusterFS CommunityはLGPL V3ライセンスで提供され、商用版はRed Hat Storage Serverとして販売サポートされている。
l 開発/サポート体制 l 開発はレッドハットを中心に2000人以上のコミュニティで進められている。
FedoraとRHELの関係と同様、オープンソース版が先進的機能を取り入れ、商用版がアップストリーム安定版としてサポートが提供される。
l レッドハットに買収された2011年にV3.0をリリースした後、数ヶ月毎にバージョンアップが行われ現在はV3.4が提供されており、V3.5が2013/12にGA予定である。
l Redhat Storageのドキュメントはレッドハット社、日本IBMなどから日本語ドキュメントが提供されており、コミュニティの日本語ドキュメントも多数存在する。
19
GlusterFSのアーキテクチャ
20
vfs
FUSE File system
ブリック
User space Kernel space
クライアント Application Glusterfsd
vfs
ブロックデバイスドライバ
ノード トランスレータ
トランスレータ
File system
ブリック
Glusterfsd
vfs
ブロックデバイスドライバ
ノード
トランスレータ
ボリューム
GlusterFSのGeo Replication機能
l 物理的ロケーションの離れた別クラスターにデータをBrick単位で複製する。
l 複製方式は、マスター/スレーブ、スレーブはRead Only
l 複製先は、普通のファイルシステムでも可能。
l ディザスタリカバリー用のバックアップデータを保証する。
l 非同期型レプリケーション(ファイルの変更は定期的に実施、違いを検知した時に同期を行う。)
l rsync&SSH を使用するため、rsyncの限界(ファイル総数等)が機能の限界。
21