More Related Content Similar to Sheepdogを使ってみて分かったこと(第六回ストレージ研究会発表資料) (20) Sheepdogを使ってみて分かったこと(第六回ストレージ研究会発表資料)2. 自己紹介
辻正博
現在
株式会社エーティークスプロダクト開発本部所属
ハードウエア製品やサービスの開発を担当
専用サーバ運用
経歴
NetBSD → Linux → CTスキャナーの画像処理装置の開発→
Windows用デバイスドライバー開発→USB関係のハードウエア開発
→ 今に至る
趣味
もの作り全般
ほしいものリスト
3Dプリンター
Copyright 2014 A.T.Works,Inc. All Rights Reserved.
7. 最小構成
サービスネットワーク
eth0
node2
eth1 eth2
eth0
node3
eth1 eth2
eth0
node4
eth1 eth2
SW1 SW2
eth0
node1
eth1 eth2
eth0
node5
eth1 eth2
ストレージネットワーク
• メタデータサーバ等は不要
• 管理サーバ(正、副)は仮想サーバとして2台のノードで動作
Copyright 2014 A.T.Works,Inc. All Rights Reserved. 7
8. 論理構成
eth0
仮想ネットワーク(VLAN使用) VLAN20
DB Web Web
node1
eth1 eth2
VLAN10
eth0
node5
eth1 eth2
サビス用ットワーク
サービスネットワーク
eth0
KVMによる仮想サーバ
node2
eth1 eth2
eth0
node3
eth1 eth2
eth0
node4
eth1 eth2
Sheepdogストレージ
SW1 SW2
ストレージネットワーク
Copyright 2014 A.T.Works,Inc. All Rights Reserved. 8
9. Sheepdogの構成要素
構成要素説明
Sheep デーモンとして働く。Sheepdogの本体
dog CLIのコマンド。Sheepの状態をみたりクラスターの制御を行う
Corosync クラスターマネージャ
zookeeperを使用することもできる(ノード数が多いときは
zookeeper推奨)
qemu-kvm KVMハイパーバイザー
QEMU 0.13からsheepdogのクライアントがビルトインしている
RHEL6のqemuは対応していないのでパッチあてが必要
tgt iSCSI target driver
iSCSIプロトコルでSheepdogのボジュームを扱える
KVMのブロックストレージとして利用できる
Copyright 2014 A.T.Works,Inc. All Rights Reserved.
11. バージョンリリース日主な新機能、改良点
0.9.0_rc1 2014/10/24 iSCSI multipath
※Corosync 1.xだと動作しない。Corosync 2.xが必要
0.8.0 2014/1/22 仮想ディスクの最大サイズが4TBから16PB
Erasure Code対応
HTTP simple storage
0.7.0 2013/8/16 Openstack Glance support is upstream-merged
zookeeper driverの改良
0.6.0 2013/6/3
Copyright 2014 A.T.Works,Inc. All Rights Reserved.
11
主な新機能
15. Copyright 2014 A.T.Works,Inc. All Rights Reserved.
MB/sec
Seq-Read 139.3
Rand-Read-512K 417.8
Rand-Read-4K 19.3
Rand-Read-4K-QD32 158.8
Seq-Write 41.5
Rand-Write-512K 25.6
Rand-Write-4K 0.3
Rand-Write-4K-QD32 0.5
15
Fioによるベンチマーク結果
測定条件
• 3ノード
• レプリケーション=3
• 各ノードはSATA HDD×3台RAID0
• 10GBASE-T接続
シーケンシャルでも
17. 非同期I/Oの問題点
sheep
Memory HDD
sheep
• 非同期I/Oでも2台までのノード停止
であれば、データロストにはならな
• Durabilityと性能のトレードオフ
Qemu-kvm Memory HDD
い。
sheep
Memory HDD
ダーティなデータはロスト
Copyright 2014 A.T.Works,Inc. All Rights Reserved. 17
18. Copyright 2014 A.T.Works,Inc. All Rights Reserved.
“--nosync” オプション
(MB/sec)
無し
(同期)
有り
(非同期)
Seq-Read 139.3 500.8
Rand-Read-512K 417.8 440.9
Rand-Read-4K 19.3 18.8
Rand-Read-4K-QD32 158.8 160.2
Seq-Write 41.5 180.9
Rand-Write-512K 25.6 151.7
Rand-Write-4K 0.3 4.0
Rand-Write-4K-QD32 0.5 94.0
180MB/sec×3
=4.3Gbps
18
Fioによるベンチマーク結果((((同期・非同期))))
測定条件
• 3ノード
• レプリケーション=3
• 各ノードはSATA HDD×3台RAID0
• 10GBASE-T接続
IOPS 991
IOPS 23495
23.7倍
QD=32にほぼ比例して高まる
同期の場合は、スケールしていない
19. 10Gbps/3
の壁
0 100 200 300 400 500 600 700 800
Seq-Write QD=64
Seq-Write QD=32
Seq-Write QD=16
Seq-Write QD=8
Seq-Write QD=1
Seq-Read QD=64
Seq-Read QD=32
Seq-Read QD=16
Seq-Read QD=8
Seq-Read QD=1
Copyright 2014 A.T.Works,Inc. All Rights Reserved.
RAMDISK/--nosync
RAMDISK/--nosync
19
ボトルネック調査2
• 3冗長書き込みを行っているので、Writeの速度の上限は
10Gbps / 3 = 416MB/sec
• 同時アクセス数を増やすことでネットワーク速度まで向上できる。
• Readについては、大きな向上はなかった。ストレージ性能が向上して
きた時に、今後、追加調査したい。
21. 大容量、低価格
ARX200 S8(ATWORKS)
1U 3.5inch 12 diskサーバ(参考)
• 追加コストを必要しない
• 搭載ディスク数の多いサーバもある
• HDDの大容量化(3.5inchディスクで6~8TB)
Copyright 2014 A.T.Works,Inc. All Rights Reserved. 21
24. NVDIMM((((不揮発性DIMM)
• DRAM+停電時のデータ保存用NVRAM
• Viking TECHNOLOGYなどがDDR3インターフェイスの製品を販売。
• DDR4にはNVDIMM仕様が盛り込まれた
• AgigA Tech, KS Hynixなどがサンプル品をリリース
• 某M/BメーカではADATA / Viking をリファレンス製品にしている様子
SK HynixのDDR4 NVDIMM
http://pc.watch.impress.co.jp/img/pcw/docs/672/270/html/01.jpg.htmlより
Copyright 2014 A.T.Works,Inc. All Rights Reserved. 24
25. Copyright 2014 A.T.Works,Inc. All Rights Reserved.
“--nosync” オプション
(MB/sec)
有り無し
Seq-Read 453.3 467.1
Rand-Read-512K 342.9 401.1
Rand-Read-4K 18.4 18.4
Rand-Read-4K-QD32 160.8 144.6
Seq-Write 185.7 159.6
Rand-Write-512K 178.5 138.2
Rand-Write-4K 5.6 5.1
Rand-Write-4K-QD32 98.6 89.1
25
ボトルネック調査1111((((RAMDISK使用の場合))))
• --nosyncオプションの有無による、性能の大きな違いはみ
られなかった。
• メモリの速度のストレージなら、同期書き込みでも、非同
期の場合並の性能を出すことができる。
26. LVMにキャッシュ機能を追加するもの
RHEL7にもTechnology Previewとして含まれている
SDSでの用途
HDDのキャッシュをSSD
SSDのキャッシュをRAMDISK(不揮発)
同期I/Oでも高速化できるのではないか
Copyright 2014 A.T.Works,Inc. All Rights Reserved.
26
dm-cacheの活用
RAMDISK SSD Sheepdog cache
27. 2Uサイズ(4ノード)
冗長化電源
2.5inch HDD or SSD ×16
Dual Intel® Xeon E5-2600/4600 v3
16 DIMM slots (support NVDIMM TBD)
1G or 10G NIC
Copyright 2014 A.T.Works,Inc. All Rights Reserved.
27
SDS用サーバ((((TBD)
29. 学んだトラブル事例((((JTF2014発表))))
【検証環境】
① Sheepプロセスが全停止。再起動しても動作し
ない
② 想定外のディスク容量不足発生
③ ノードが不定期に切り離される
【サービス環境】
④ 突然のI/Oの停止
⑤ パフォーマンスが出ない
Copyright 2014 A.T.Works,Inc. All Rights Reserved.
30. トラブルから学んだ事
クラスターマネージャも重要
• システム全体が停止する不具合はクラス
ターマネージャが起因していた
• corosyncのチューニングやsheepの
corosync driverの修正で改善
• Zookeeperの実績も積みたい
不具合対策が重要
• 小さな不具合を放置しない
• 不具合の再現がコミュミティでの修正の近
道
Copyright 2014 A.T.Works,Inc. All Rights Reserved. 30