Software Defined Storageの真実
要約
EMCのSDS製品であるScaleIOについて設計・導入・拡張・運用さまざま
目線での検証結果について解説致します。
OpenStackとの親和性や類似製品であるCephとの比較など製品単体で
はなく、実際どのように利用できるのか?といった疑問にお答えできる内容と
なっております。
OpenStackをご検討中のお客様はもちろん、ScaleIOってどんなストレージ?
というお客様必見のセッションです!
Agenda
SoftwareDefinedStorage の
トレンドと定義
OpenStack
と
ScaleIO の 関 係
の理解
ScaleIO vs Ceph比較
各製品機能のおさらい
機能観点
運用観点
OpenStackとの連携(親和性)
パフォーマンス試験結果
テスト環境(サーバ・ストレージ・
ネットワーク)
ハイパーコンバージド構成におけ
る性能測定 ScaleIO
2tier 構 成 に お け る 性 能 測 定
ScaleIO vs Ceph
検証結果まとめ
まとめと設計に関する考察
SoftwareDefinedStorageの定義
• 特定ベンダハードウェアに依存しない
• コモディティサーバで稼働させることが可能
OpenStackとは
• 2010年にNASAとRackspaceで開始• 非常に拡張性の高いパブリックおよび、プライベート クラウドを 構築する為のオープン ソース ソフトウェアです
OpenStackのおさらい
• リリース名は、アルファベット順でOpenStack Summitが 開催される場所の周囲の都市 or 通りの名前であること。 https://wiki.openstack.org/wiki/Release_Naming/M_Proposals Libertyの次リリース名:Meiji(来年春リリース) • 6か月ごとにリリース – 4/5月リリース or 10/11月リリース • バージョン形式は”西暦.リリース番号” Juno : 2014.2 • サポートリリースは2/3か月ごと Juno : 2014.2.1Austin– Oct 2010 Bexar– Feb 2011 Diablo– September 2011 Essex– April 2012 Catus– April 2011 Folsom –Sept 2012 Grizzly– April 2013 Havana – October 2013 2011 2012 2013 2014 Icehouse– April 2014 2015 Kilo – April 2015 Juno– April 2014 Liberty – October 2015
リリースバージョン
Red Hat Enterprise LinuxOpenStack Platform
•Red Hat Enterprise Linuxでの稼働を実施するOpenStack
Platformがディストリビューション
•デプロイの簡素化の方法として、PackstackやForemanが提供さ
れている。日本語サポート、Linuxも含めた幅広いサポートが特徴
BlockStorageのCinder連携
• 複雑化するストレージの要件
– テナントにより異なる SLA や機能、性能、コスト要求
– OpenStack 変化のスピードへの追従
• Cinderが提供する機能
– Cinderは仮想・物理のインスタンスに対して、ブロックストレージ機能を提供する。Cinderでは作成されるスト
レージ領域を「ボリューム」と呼び、その作成・削除・添付・スナップショット作成が可能だ。ボリュームを作成する
際に、ボリュームソースとしてイメージを選択すると、イメージサービス「Glance」からイメージが転送されて、ボ
リューム内に保存される。Glanceから提供されるイメージがOS起動イメージである場合、そのボリュームからイン
スタンスが起動可能となる。
• Cinder連携とカタログ化
– Cinderでは、管理者がストレージをカタログ化することで、利用者はボリューム作成時にカタログからストレージ
の種別を選択できる。このストレージカタログの作成では、RAIDの種別、SSDの利用有無、サードパーティのス
トレージなどの要件を自由に加味できる。
– Cinderは標準でLVM(Logical Volume Manager)上の領域を利用するが、EMCやNetAppといった大
手ストレージベンダーが提供しているCinder用のドライバを利用することにより、サードパーティのストレージ製品
との連携が可能となる。これによって、スナップショット作成などの各種作業をストレージシステム側にオフロードで
きる
ScaleIOのおさらい
•ソフトウェアベースのストレージ
– 拡張規模は1000台以上
•サーバの内蔵ディスクを共有ストレージ化
•主要OS・ハイパーバイザにインストール可能
– Redhat,Suse,Centos,Xentserver,Windows
– VMware,KVM,Citrix XenServer,Hyper-v
•OpenStackのブロックストレージとして使用可能
– Cinder Driverを提供可能
•アプライアンス製品の発表
– サーバーを組み合わせた検証済み構成の「ScaleIO Node」
ScaleIOの基本機能
• ストレージ容量と性能のプール化
Servers
Network
Storage
Converged Architecture
1,000 IOPS
10TB’s
100 IOPS 1TB 100 IOPS 1TB 100 IOPS 1TB 100 IOPS 1TB 100 IOPS 1TB 100 IOPS 1 TB 100 IOPS 1TB 100 IOPS 1TB 100 IOPS 1TB 100 IOPS 1TBFlash | SSD | HDD | RAID Cache | RAM
Bare Metal | KVM | VMware | Hyper-V
Cephおさらい
• RADOS – 核となるオブジェクト
ストレージ基盤
– 高信頼性、自己修復、分散型をテーマとし
た論文の理論を実装し、その後、起業
OSD – データの読み書きを担う、自身や
他OSDの状態監視
– Monitor – Ceph クラスター階層マップを
管理
● LIBRADOS
RADOS機能に直接アクセスするライブラリ
● RBD
RADOSをブロックストレージとして見せる
● RGW
S3, Swift等Ceph ネイティブ「でない」
API 用のゲートウェイ
Cephの構成上の制限
•最新版は1.3
•最低3物理ノード必要
– Mgmtx1
/
Monx3
/OSDx3(
Mgmt/MonはOSPノード同居可能
)
•ボリューム容量のサブスクリプションライセンス
– 2015/9/1~提供開始
•RAID Controllerは非推奨
機能観点での比較軸
保護 フォールトトレランス マルチテナンシー モニタリング セキュリティ 弾力性書き込み可能
スナップショット
データマスキング
MDM & SDC
IOPS and QoS
Controls
ラックレベル
高可用性
リバランス
自動
SNMP &
Call Home
APP 1 APP 2 APP 3 運用管理性GUI
インターオペラビリティOpenstack Cinder
Restful API
パフォーマンスFlash Cache
効率性シン
プロビジョニング
フォールトトレラン
ス
比較項目
EMC
Scale IO(1.32)
RedHat
Ceph Storage(1.3)
特記事項
データ複製数
(デフォルト)
2面ミラー
3面ミラー
実効容量
物理容量の1/2
(障害用のスペア領域を除く)
物理容量の1/3
(障害用のスペア領域を除く)
ラックレベル
高可用性
○
○
効率性
比較項目
EMC
Scale IO(1.32)
RedHat
Ceph Storage(1.3)
特記事項
シンプロビジョニング
○
○
サーバが認識する
ディスク容量
実際に消費している
ディスク容量
• ボリューム単位に適用
• デフォルトはThick
• Thin指定により適用可能
保護
比較項目
EMC
Scale IO(1.32)
RedHat
Ceph Storage(1.3)
特記事項
書込み可能スナップ
ショット
○
○
Volume 1 Snapshot1 Volume1’ボリュームから
スナップショット作成
スナップショットから
ボリューム作成
・アタッチして読み書き可能
弾力性
比較項目
EMC
Scale IO(1.32)
RedHat
Ceph Storage(1.3)
特記事項
自動リバランス
○
追加した/dev/sdxを追加すると
自動でVolumeのチャンクが自動
で再配置される
○
OSD Prepare後、
OSD Activateで追加後に
reweightすれば
再配置される
Cephの場合
手動で再配
置設定が必
要
マルチテナンシー
比較項目
EMC
Scale IO(1.32)
RedHat
Ceph Storage(1.3)
特記事項
IOPS and QoS
Controls
○
EMCではストレージの種別や、
QoS、シンプロビジョニングの有無
等のEMC特有の情報をカタログの
一部とする事ができます。
×
非対応
Gold Volume Silver Volume Bronze Volume50
1000
制限なし
Extra Specs 説明 sio:pd_name プロテクションドメインを指定します。デフォルト設定を上書きします。 sio:sp_name ストレージプールを指定します。デフォルト設定を上書きします。 sio:iops_limit ボリュームのIOPS制限を指定します。制限をかける場合には、IOPSの数値は10以上で設定 する必要が有ります。数値を0に設定すると、制限がかかりません。 sio:bandwidth_limit ボリュームの帯域制限(KB/sec)を指定します。数値を0に設定すると、制限がかかりません。 sio:provisioning シンプロビジョニング機能を使用したい場合に”thin”を指定します。指定しない場合にはデフォ ルトのシックプロビジョニングが行われます。オープンスタック連携
OpenStack操作
ストレージ側
連携機能項目
EMC
Scale
IO(1.32)
RedHat
Ceph Storage(1.3)
特記事項
スナップショットの作成・削除
書込み可能スナップ
ショット連携
○
○
スナップショットからのボリューム
の作成
書込み可能スナップ
ショット連携
○
○
ボリュームの接続・切断
-
○
○
ボリュームの追加・削除・拡張
シンプロビジョニング
連携
○
○
IOPS and QoS
Controls連携
○
×
イメージからのボリュームの作成
-
○
○
運用管理性
比較項目
EMC
Scale IO(1.32)
RedHat
Ceph Storage(1.3)
特記事項
GUI管理画面 での初期構成・追加構成 プール作成プールへのデバイス(/dev/sdx)の追加可能 Volume作成のみCLI プールの作成のみ可能 プールへのデバイス(/dev/sdx)の追加と Volume作成はCLI 容量の拡張 ○ GUI or CLIで提供 追加するストレージメディアに特段の意識不要 △ CLIのみで提供 ジャーナルの意識が必要(5HDDあたり1SSD) 性能の拡張 ○ GUI or CLIで提供 追加するストレージメディアに特段の意識不要 △ CLIのみで提供 ジャーナルの意識が必要(5HDDあたり1SSD) 導入容易性 ○ GUIやコマンドによる入力の必要を最小限に抑えら れており、インストールは簡単 × コマンドや導入の手順が複雑でイントールに高度な 設計、知識を要する 運用容易性 ○ サーバ管理者による運用。システムによる性能管理、 バランシングが自律的に稼働し、性能管理、障害 時の対応が容易 △ トレーニングを受けた専任技術者による維持・運用 が不可欠 運用コスト ○運用容易であり、少ない人数で1000台までに 拡張するスケールサーバを管理しやすい △専任技術者による維持・運用が必要で 運用管理ツールでの自動化などパフォーマンス
比較項目
EMC
Scale IO(1.32)
RedHat
Ceph Storage(1.3)
特記事項
キャッシュ機構
○
DRAM read cache per
volume and increased
number of volumes per SDC.
○
Flash Pool ティアリング
メタ情報
メモリ上に保持(8PBのボリューム
領域に関する情報に対して、SDC
では約2MBのメモリが必要
SSDを構成し、メタ情報
(Journal領域)を配置する
検証項目
•ハイパーコンバージド構成における性能測定
– ScaleIO
•2tier構成における性能測定
– ScaleIO vs Ceph
•検証結果まとめ
UCS Bシリーズ
ハードウェア構成
UCS B22M3
①
10GbE
UCS C240M3
④
UCS C240M3
③
UCS C240M3
②
UCS C240M3
①
Fabric Interconnect 6248
UCS B22M3
②
ハードウェアスペック
モデル
CPU
メモリ
ディスクドライブ
Cisco UCS B22M3
Intel XeonE5 2470 (2.30GHz 8core TH)
x2
192GB
ー
モデル
CPU
メモリ
ディスクドライブ
C240 M3 RAID構成とLocal Storage
R1 R0 R0 R0 R0 R0 R0 R0 R0 R0 R0 R0 R0・・・HDD(ソフトウェアストレージ用)
・・・SSD(ソフトウェアストレージ用)
・・・HDD(OS領域)
R1 ・・・RAID 1
R0 ・・・RAID 0
R0 Type スペック SSD 200GB SSD(eMLC) HDD 300GB SAS 15K RPM 2.5 inchソフトウェアバージョン
# ソフトウェア バージョン 備考
1 RHEL OSP6OpenStack Red Hat Enterprise Linux Server 7.1Kernel 3.10.0-229.14.1.el7.x86_64 2 EMC Scale IO 1.34
3 RedHat RHEL 7.1 4 tester(FIO)Flexible IO 2.2.9
ハイパーコンバージド構成における性能測定
ETH/IB
S
S
S
S
S
S
S
S
S
S
S
S
C
C
C
C
C
C
C
C
C
C
C
C
クライアントとストレージが同一サーバにおける構成の性能測定を実施します。
EMC Scale IO検証 論理構成図
OpenStack Controller Node
UCS B22M3①
OpenStack Cinder Volume Manager
Scale IO Cinder Driver
10GbE ネットワーク
UCS C240M3①
Instance Scale IO SDC OpenStack Nova Scale IO Tie Breaker Scale IO Nova DriverScale IO SDS
UCS C240M3②
Instance Scale IO SDC OpenStack NovaScale IO Nova Driver Scale IO SDS Scale IO MDM Primary
UCS C240M3③
Instance Scale IO SDC OpenStack NovaScale IO Nova Driver Scale IO SDS Scale IO MDM Secondary
UCS C240M3④
Instance Scale IO SDC OpenStack NovaScale IO Nova Driver Scale IO
SDS Scale IOREST Gateway
EMC Scale IO ストレージ構成イメージ図 (SSD)
SSD Pool (4.3TB) 320GB 320GB 320GB SSDPool
Volume
RedHat
(KVM)
Instance
Disk
SSD SSD SSD SSD SSD SSD SSD SSD SSD SSD SSD SSD SSD SSD SSD SSD SSD Node1: Node2: Node3: RHEL (benchmark tool) RHEL (benchmark tool) RHEL (benchmark tool) RHEL (benchmark tool) 320GBEMC Scale IO ストレージ構成イメージ図 (HDD)
HDD Pool (6.5TB) 480GB 480GB 480GBPool
Volume
RedHat
(KVM)
Instance
Disk
HDD HDD HDD HDD HDD HDD HDD HDD HDD HDD HDD HDD Node1: Node2: 480GB RHEL (benchmark tool) RHEL (benchmark tool) RHEL (benchmark tool) RHEL (benchmark tool)ストレージノード分離構成における性能測定
S
S
S
S
S
S
C
C
C
C
C
C
ETH/IB
クライアントとストレージが異なるサーバにおける構成の性能測定を実施します。
EMC Scale IOとRedHat Cephの両方の性能測定を実施し比較を行います。
EMC Scale IO検証 論理構成図
UCS C240M3
②
UCS C240M3
①
UCS B22M3①
OpenStack Controller Node
OpenStack Compute Node
InstanceInstance Instance Scale IO SDC
UCS C240M3
③
UCS C240M④
Scale IO SDS Scale IO MDM Primary Scale IO SDS Scale IO MDM Secondary OpenStack Nova Scale IO Scale IO Tie BreakerStorage Nodes
Scale IOScale IO Nova Driver
OpenStack Cinder Volume Manager
Scale IO Cinder Driver
10GbE ネットワーク
Fabric Interconnect
6248
EMC Scale IO ストレージ構成イメージ図 (HDD)
HDD Pool (4.9TB) 430GB 430GB 430GB RHELPool
Volume
RedHat
(KVM)
RHEL (benchmark tool)Instance
(benchmark tool)RHEL (benchmark tool)RHELDisk
HDD HDD HDD HDD HDD HDD HDD HDD HDD HDD HDD HDD HDD HDD Storage Node1: Storage Node2: Storage Node3:RedHat Ceph検証 論理構成図
UCS C240M3
②
UCS C240M3
①
UCS B22M3①
OpenStack Controller Node
OpenStack Compute Node
InstanceInstance Instance