Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
ZFS Day 2011.10 Linux で ZFS Kazuhisa Hara @kazuhisya
プロフィール 氏名 : 原 和久 (Kazuhisa Hara) ID: @kazuhisya 所属 某 DC 業の会社 入社以来、某親会社に出稼ぎ ( 社内ベンチャーとか ) 今はそこで研修講師しています Web3 層 , Linux, VMware, KVM, ZFS,  GlusterFS(NEW!) 興味分野 おもに Linux や仮想化、ストレージ周り
プロフィール Linux 好き、主に RHEL 系 SUSE も昔ちょっと Deb 系は全く分からない でも普段 ZFS を使うときは基本 Solaris11-ex, OI, Nexenta になる BtrFS にも勿論期待してます プレビューレベルだけど、 RHEL6.2 にマージされましたね! SmartOS にも注目してますよ! Crossbow や COMSTAR の資産が使えるのは素敵ですね 様々な OS の良いところを知って、活用できるようになれれば良いのかなぁと思います
お手柔らかにお願いします
ZFS on Linux の話 ・・・の前に
ZFS 概要 ( おさらい )
ZFS 事前準備情報 128bit ファイルシステム 大容量のファイルに対応 HDD をストレージプールとして管理し、簡単に HDD 増設が可能 RAID(0,1,5,6,7) に相当する機能を提供 Copy-on-Write によるデータ完全性の保証 スナップショット・クローン機能 重複排除機能 (zpool v21 ~ ) スケールアップ志向
従来のストレージソリューション H/W RAID 高額 チェックサム範囲が狭く、ブロック単位 オンラインでの容量変更が難しい、もとい高い SAS バイト単価が高額 電力ワット単価も高額 容量の制限 プロトコル 種類によってオプション扱い (iSCSI 等々 )
ZFS なソリューション 高速 / 大容量 SATA & SSD のハイブリット構成も可能 16 エクサバイトまでサポート 拡張性 オンライン拡張 スモールスタートが可能 信頼性 Software RAID End-to-End のチェックサム 公証 99.99999999999999999% の信頼性 Copy-On-Write Wirte-hole が起こらない 複数の RAID レベル (0,1,5,6,7,mirror) 管理性 プロトコル Cifs, NFS, iSCSI 全て対応できる
ZFS on Linux の話 種類
とりあえず お や く そ く
おやくそく ライセンス ライセンス の 深いところはあえて突っ込まない よ ZFS は CDDL Linux Kernel は GNU GPL CDDL と GPL の関係以外も勿論あるよね Oracle(Sun) とか NetApp とか・・・!
ZFS on Linux の話 種類
種類 ZFS は CDDL で提供されている Solaris 以外にも OSOL, OI, Nexenta をはじめ FreeBSD や NetBSD, OS X(10.5 以降は Google Code 上で ) 等にもある ちょっと前までの話 Linux は? LLNL による Native 実装 zfs-fuse
種類 2010 年まで LLNL( ローレンス・リバモア国立研究所 ) による実装 非オープンソース ( 米エネルギー省との契約 ) zfs-fuse FUSE 実装の ZFS, 2006 年の Google Summer Code より Fedora の標準リポジトリや EPEL にも入っている
2010 年 8 月末
2011/08
2011/08 2010 年 8 月
2011/08 2010 年 8 月
Native ZFS Is Coming To Linux  !!
種類 2010 年半ば、 2 個のネイティブポート版開発プロジェクトが表に出てくる Knowledge Quest Infotech  版 IT 系ニュースサイトで取り上げられたり、結構話題になった zfsonlinux.org  版 実は前記の LLNL の OSS 実装 あまり話題にはならなかった様子
種類 まとめると Linux で一般人が今使える ZFS の実装は zfs-fuse  版 KQ Infotech  版 zfsonlinux.org  版
Native ZFS on Linux の話 近況
簡単な用語説明 Native ZFS for Linux で出てくる用語 SPL Solaris Porting Layer Linux Kernel module, Solaris の kernel API の一部を提供する ZPL ZFS POSIX Layer lzfs という場合も ( すごく極端に言うと )ZFS を通常の Linux ファイルシステムのようにマウントできるようにする module
Native ZFS on Linux の話 近況   KQ Infotech  版
KQ Infotech 版 https://github.com/zfs-linux
KQ Infotech 版 Knowledge Quest Infotech  版 IT 系ニュースサイトで取り上げられたり、結構話題になったのはこれ SPL(Solaris Porting Layer) を実装 ZFS は基本的に CDDL 版をそのまま実装 はやくから ZPL(ZFS POSIX Layer) を実装 要は何も考えなくても普通に使えた
KQ Infotech 版 ところで  KQ Infotech  版  だけど 今年度初め頃、 「最近コミットがないなぁ」 … と思っていたら
KQ Infotech 版 (; ゜ д ゜ ) ・・・・
KQ Infotech 版 会社ごと 買収されていたでござる
KQ Infotech 版
KQ Infotech 版 ぱったりと止まるコミット 2011/04/11
KQ Infotech 版 2011/04/19 STEC 社 に買われた模様 STEC は SSD とか作ってる会社 ( らしい ) ZFS の最後のコミットも  2011/04/11 半年動いてない模様 最近の kernel だと素のままでビルド不能( ? ) 例えば  2.6.32-131  系とか (RHEL6.1 系 ) 例えば  2.6.40  系とか (Fedora15) 例えば  3.0  以降とか 2.6.32-71  系までは動作確認済み (RHEL6.0)
Native ZFS on Linux の話 近況   zfsonlinux.org  版
zfsonlinux.org 版 http://zfsonlinux.org/
zfsonlinux.org 版 https://github.com/zfsonlinux
zfsonlinux.org 版 zfsonlinux.org 今日の本題はこれ KQI の実装が今後どうなるか分からない今、使うのであればこれ ( かな、と ) LLNL の OSS 実装 最新安定バージョンは  0.5.2 zfs  v5, zpool v28 ZPL が実装された正式リリースはまだ 要は普通には  mount  はできない せっかく Native なのに fuse 経由・・・
zfsonlinux.org 版 zfsonlinux.org 最新安定版には ZPL がない・・・・が 最新開発バージョンは  0.6.0-rc6(2011/10/7) このバージョンには ZPL が入っている! という訳で、このバージョンの正式リリースに期待 そろそろ出てもいい頃 ( ? )
zfsonlinux.org 版 Linux Kernel SPL ZFS コンポーネント
zfsonlinux.org 版 Linux Kernel: GPL SPL: GPL ZFS: CDDL ライセンス
zfsonlinux.org 版 ZFS CLI libzfs /dev/zfs ZVOL ZPL Traversal DSL DMU ZAP ZIL ARC ZIO VDEV Configration Interface Layer Transaction object Layer Pooled Storage Layer User Kernel ZFS on Linux for Luster SC10: LLNL 発表資料より
zfsonlinux.org 版 ZFS CLI libzfs /dev/zfs ZVOL ZPL Traversal DSL DMU ZAP ZIL ARC ZIO VDEV Configration Interface Layer Transaction object Layer Pooled Storage Layer User Kernel ZFS on Linux for Luster SC10: LLNL 発表資料より v0.6 までで、 ZPL 以外実装済み
zfsonlinux.org 版 意外と ( ? ) 普通に使える ZFS 皆大好き Deduplication 、 Compress も動確 OK sharenfs オプションが使えるようになっていた 最近のお話 /etc/exports  を書かなくても超お手軽に NFS もちろんスナップショットも取れるしブロックデバイスにすることもできる
zfsonlinux.org 版 意外と ( ? ) 普通に使える ZFS SSD で ZIL/L2ARC も使えてる Send/Receive も利用できることを確認済み Solaris 系 (v28) <-> Linux(v28) 同士でも OK でした Import も動作確認 あれ?なんかスゲーフツーに ZFS じゃないですか
zfsonlinux.org 版 いまひとつのところ sharesmb  は動かない これは結構根が深い 普通に  smb.conf  書いて COMSTAR がない (iSCSI の話 ) どうしよもない これも従来通りのやり方で iSCSI Enterprise Target  とか scsi-target-utils  とか
zfsonlinux.org 版 いまひとつのところ DKMS でない Dynamic Kernel Module Support 要は  kernel update  のたびにビルドし直し ビルド環境を作っておいて、作成 - リポジトリ登録の流れを自動化しておければベター それなりにバギー RC だし、当然だけどバギーです、はい quota 切ろうとするとハングする、ことがあるとか よくがるのが ほげほげの状況でデットロックする、とか
zfsonlinux.org 版 Issues
zfsonlinux.org 版
zfsonlinux.org 版 いまひとつのところもあるし、 バギーなら本番環境は無理だけど まぁそれなりに望みはあるんじゃないの という感触を持ってもらえたかもしれません で、
実際どうよ? パフォーマンスは 実際どうなの?
Native ZFS on Linux の話 パフォーマンス
実際どうよ? ベンチマーク環境 (OS) NexentaStor  3.1.1  x86_64 zfs v5, zpool v28 Scientific Linux 6.1 x86_64 zfs v5, zpool v28 基本方針 4 本の HDD で RAID-Z1 zpool get all  で出てくるパラメータは基本的にデフォルトで同じにする (dedup, comp は off) 細かいチューニングはしない (noatime, elevator=deadline とか ) NFS, iSCSI でクライアントからベンチする ベンチには  fio 1.55  を利用する ARC に乗っかってもそれはそれで OK
実際どうよ? ベンチマーク環境 (HW) HP ProLiant MicroServer ( 旧世代 ) 発表時から ZFS に最適じゃね?と常々思っていた CPU AMD Athlon™ II NEO N36L (2Core 1.3GHz)  MEM 8GB HDD OS: 250GB (5inch drive bay) zpool: HGST 7200rpm 2TB * 4  (AHCI) NIC Broadcom NC107i  1Gbps(OnBoard)
実際どうよ? 通常どんくらい出るの? 参考 : INTERNET Watch 第 415 回: HP MicroServer で作る最強ホームサーバー http://internet.watch.impress.co.jp/docs/column/shimizu/20101109_405588.html Windows Home Server (Vail - 2011)   NTFS (???) MEM: 4GB HDD: SAMSUNG HD204UI 5400rpm 2TB * 5 (AHCI RAID0  ???  Soft RAID ???)
実際どうよ? NFS NexentaStor  vs.  ZFS on Linux
実際どうよ? NFS
実際どうよ? ( つ д⊂) ゴシゴシ
実際どうよ? NFS
実際どうよ? (; ゜ д ゜ ) ・・・・
実際どうよ? NFS 読み込みは結構いい線 ランダムでも NCQ は爆速 メモリ 8GB 盛った効果 ( ? ) 耐え難い書き込み性能・・・! シーケンシャルで  400KB/s  とか なんなの馬鹿なの死ぬの
実際どうよ? 既知の問題のようです Issue #290, #361  あたり参照 結構根が深い マイルストーン的には  0.8.0 には・・・
実際どうよ? async でやってみた(サーバ側)
実際どうよ? ちょっと悩ましい sync + no_wdelay は変化なし 転送ブロックサイズを大きくすると、ほんの少し速くなる でも  1MB/s  にも届かない そもそも sync が腐ってるからしょうがない async 最強 当たり前だけど、 NFS での書き込み保障はない zpool iostat 見ながらベンチすると楽しい
実際どうよ? iSCSI NexentaStor  vs.  ZFS on Linux
実際どうよ? iSCSI
実際どうよ? 結構いける ランダム 512k 書き込みが遅い ランダム 4k(NCQ) の読みが遅い その他はなかなか優秀
実際どうよ? まとめ NexentaStor  vs.  ZFS on Linux
実際どうよ?
実際どうよ? まとめ NexentaStor COMSTAR やっぱ速い NFS はぱっとしないけど、許せるレベル(?) ZFS on Linux NFS の地雷っぷりときたら sharenfs オプションで簡単に使えるのに勿体無い iSCSI は中々素敵なパフォーマンス 十分使えると思う ついでに HW(microserver) 思った以上に頑張る HW 的にはシーケンシャルで 1Gbps を丁度使い切れるような設計の様に思える ( なのかな? )
Native ZFS on Linux の話 どんなシチュエーションで使える?
どんなシチュエーションで使える? ダメな環境例 エンプラ環境 高い SLA 落ちると結構困る、データロストしたら結構困る HW 、 OS が 64bit 以外 メモリが 2GB 以下 いいけど僕責任持てないよ! バギー、まだ RC 、安定版は ZPL なし ライセンス 勿論ベンダはサポートしてくれないよ
どんなシチュエーションで使える? 使える環境例 検証環境のストレージに 会社のオレオレ専用マシン ( あれば ) ちょこっと使う程度の NAS 自宅の環境 今日来てる人は皆  ぎーく  か  はかー  だと思うので、皆様自宅 Lab に余ってるマシンや、 FC 、 10GE などなど使える物資はすべからくあると思います!
どんなシチュエーションで使える? 使える環境例 ようは ブッ壊れたら 自分の責任の範囲で 何とかするぜ!! という環境 ( が、いまのところ良いと思う )
どんなシチュエーションで使える? 具体例➀ 仮想化のストレージに Dedup フル活用構成 ( ファイルベース ) KVM で( Xen kernel で動くかは? ) Dedup は勿論 on zfs で pool を組んで、そこに仮想マシンイメージを置く libvirt で普通に pool に追加 qcow2 で作っても raw で作っても OK qcow2 で作れば、ファイル (≒VM) 単位でスナップショット raw で作るなら pool ごとスナップショット パフォーマンス的にどっちかにしたほうがよさそう
どんなシチュエーションで使える? 具体例② 仮想化のストレージに Snapshot フル活用構成 ( ブロックベース ) KVM でも Xen でも OK zfs でブロックを作成 そのブロックを直に VM にアタッチ Snapshot の clone で VM をどんどん増やす Dedup を使わなくても、差分でしか使用量は増えない virt-zfs 方式で iSCSI で渡しても OK
どんなシチュエーションで使える? 具体例③ 分散ファイルシステムのバックエンドに GlusterFS 構成 GlusterFS は、ノード数を増やしてもリニアに性能が伸びない ストライプの場合ある程度上げることもできる 現段階ではストライプと分散モードを同時に使用することができない (3.3.x  より解禁 ) 各ノード自体の性能を上げる必要がある バックエンドを ZFS にすれば、性能的にもスケールアップしやすい HOWTO: GlusterFS + ZFS on Linux http://www.gluster.com/2011/08/29/howto-glusterfs-zfs-on-linux/
どんなシチュエーションで使える? 具体例④ DLNA(UPnP) サーバ PS3 やら Xbox などで、動画や音楽を再生できるあれ 多分 Solaris で構築するより Linux のが簡単 (?) 同じ容量なら、 QN○P やバッ○ァローの NAS 製品を買うより安く付くよ! ドライバがわりと豊富 Solaris よりも RAID カードなどを選ばない ヒント : eSATA でポートマルチプライヤ
ZFS on Linux の話 まとめ
まとめ Linux で一般人が今使える ZFS の実装は zfs-fuse  版 お手軽さならダントツ、制限多い KQ Infotech  版 ZPL の実装あり、ただし今後に期待できない? zfsonlinux.org  版 まだまだ発展途上だけど、今後に期待できそう
まとめ zfsonlinux.org  版の現状 現行のリリースバージョン  0.5.x  は zpl が含まれていない 使うのであれば、  0.6.0( の RC)  がオススメ 結構普通に使えるが、転んでも泣かない
まとめ 使えそうなシチュエーションは 検証環境とか 仮想化と相性よろしげ dedup, snapshot, send/receive SmartOS(Solaris+KVM) は libvirt 対応してないし DLNA とか良いんじゃないですかね 対応製品をことごとく持ってないので、試してないですが・・・ エンタープライズにはまだ早い(かもしれない) やるならライセンス・サポートの問題も考える
デモ
デモ 今日のデモ環境は仮想マシンです 今日は会場提供をしてくださった  Oracle   さまに敬意を表して、 Oracle Linux 6.1 を用意させていただきました
Question ?

More Related Content

ZFS on Linux @ZFS Day 2011.10

  • 1. ZFS Day 2011.10 Linux で ZFS Kazuhisa Hara @kazuhisya
  • 2. プロフィール 氏名 : 原 和久 (Kazuhisa Hara) ID: @kazuhisya 所属 某 DC 業の会社 入社以来、某親会社に出稼ぎ ( 社内ベンチャーとか ) 今はそこで研修講師しています Web3 層 , Linux, VMware, KVM, ZFS, GlusterFS(NEW!) 興味分野 おもに Linux や仮想化、ストレージ周り
  • 3. プロフィール Linux 好き、主に RHEL 系 SUSE も昔ちょっと Deb 系は全く分からない でも普段 ZFS を使うときは基本 Solaris11-ex, OI, Nexenta になる BtrFS にも勿論期待してます プレビューレベルだけど、 RHEL6.2 にマージされましたね! SmartOS にも注目してますよ! Crossbow や COMSTAR の資産が使えるのは素敵ですね 様々な OS の良いところを知って、活用できるようになれれば良いのかなぁと思います
  • 5. ZFS on Linux の話 ・・・の前に
  • 6. ZFS 概要 ( おさらい )
  • 7. ZFS 事前準備情報 128bit ファイルシステム 大容量のファイルに対応 HDD をストレージプールとして管理し、簡単に HDD 増設が可能 RAID(0,1,5,6,7) に相当する機能を提供 Copy-on-Write によるデータ完全性の保証 スナップショット・クローン機能 重複排除機能 (zpool v21 ~ ) スケールアップ志向
  • 8. 従来のストレージソリューション H/W RAID 高額 チェックサム範囲が狭く、ブロック単位 オンラインでの容量変更が難しい、もとい高い SAS バイト単価が高額 電力ワット単価も高額 容量の制限 プロトコル 種類によってオプション扱い (iSCSI 等々 )
  • 9. ZFS なソリューション 高速 / 大容量 SATA & SSD のハイブリット構成も可能 16 エクサバイトまでサポート 拡張性 オンライン拡張 スモールスタートが可能 信頼性 Software RAID End-to-End のチェックサム 公証 99.99999999999999999% の信頼性 Copy-On-Write Wirte-hole が起こらない 複数の RAID レベル (0,1,5,6,7,mirror) 管理性 プロトコル Cifs, NFS, iSCSI 全て対応できる
  • 10. ZFS on Linux の話 種類
  • 12. おやくそく ライセンス ライセンス の 深いところはあえて突っ込まない よ ZFS は CDDL Linux Kernel は GNU GPL CDDL と GPL の関係以外も勿論あるよね Oracle(Sun) とか NetApp とか・・・!
  • 13. ZFS on Linux の話 種類
  • 14. 種類 ZFS は CDDL で提供されている Solaris 以外にも OSOL, OI, Nexenta をはじめ FreeBSD や NetBSD, OS X(10.5 以降は Google Code 上で ) 等にもある ちょっと前までの話 Linux は? LLNL による Native 実装 zfs-fuse
  • 15. 種類 2010 年まで LLNL( ローレンス・リバモア国立研究所 ) による実装 非オープンソース ( 米エネルギー省との契約 ) zfs-fuse FUSE 実装の ZFS, 2006 年の Google Summer Code より Fedora の標準リポジトリや EPEL にも入っている
  • 16. 2010 年 8 月末
  • 20. Native ZFS Is Coming To Linux !!
  • 21. 種類 2010 年半ば、 2 個のネイティブポート版開発プロジェクトが表に出てくる Knowledge Quest Infotech 版 IT 系ニュースサイトで取り上げられたり、結構話題になった zfsonlinux.org 版 実は前記の LLNL の OSS 実装 あまり話題にはならなかった様子
  • 22. 種類 まとめると Linux で一般人が今使える ZFS の実装は zfs-fuse 版 KQ Infotech 版 zfsonlinux.org 版
  • 23. Native ZFS on Linux の話 近況
  • 24. 簡単な用語説明 Native ZFS for Linux で出てくる用語 SPL Solaris Porting Layer Linux Kernel module, Solaris の kernel API の一部を提供する ZPL ZFS POSIX Layer lzfs という場合も ( すごく極端に言うと )ZFS を通常の Linux ファイルシステムのようにマウントできるようにする module
  • 25. Native ZFS on Linux の話 近況 KQ Infotech 版
  • 26. KQ Infotech 版 https://github.com/zfs-linux
  • 27. KQ Infotech 版 Knowledge Quest Infotech 版 IT 系ニュースサイトで取り上げられたり、結構話題になったのはこれ SPL(Solaris Porting Layer) を実装 ZFS は基本的に CDDL 版をそのまま実装 はやくから ZPL(ZFS POSIX Layer) を実装 要は何も考えなくても普通に使えた
  • 28. KQ Infotech 版 ところで KQ Infotech 版 だけど 今年度初め頃、 「最近コミットがないなぁ」 … と思っていたら
  • 29. KQ Infotech 版 (; ゜ д ゜ ) ・・・・
  • 30. KQ Infotech 版 会社ごと 買収されていたでござる
  • 32. KQ Infotech 版 ぱったりと止まるコミット 2011/04/11
  • 33. KQ Infotech 版 2011/04/19 STEC 社 に買われた模様 STEC は SSD とか作ってる会社 ( らしい ) ZFS の最後のコミットも 2011/04/11 半年動いてない模様 最近の kernel だと素のままでビルド不能( ? ) 例えば 2.6.32-131 系とか (RHEL6.1 系 ) 例えば 2.6.40 系とか (Fedora15) 例えば 3.0 以降とか 2.6.32-71 系までは動作確認済み (RHEL6.0)
  • 34. Native ZFS on Linux の話 近況 zfsonlinux.org 版
  • 37. zfsonlinux.org 版 zfsonlinux.org 今日の本題はこれ KQI の実装が今後どうなるか分からない今、使うのであればこれ ( かな、と ) LLNL の OSS 実装 最新安定バージョンは 0.5.2 zfs v5, zpool v28 ZPL が実装された正式リリースはまだ 要は普通には mount はできない せっかく Native なのに fuse 経由・・・
  • 38. zfsonlinux.org 版 zfsonlinux.org 最新安定版には ZPL がない・・・・が 最新開発バージョンは 0.6.0-rc6(2011/10/7) このバージョンには ZPL が入っている! という訳で、このバージョンの正式リリースに期待 そろそろ出てもいい頃 ( ? )
  • 39. zfsonlinux.org 版 Linux Kernel SPL ZFS コンポーネント
  • 40. zfsonlinux.org 版 Linux Kernel: GPL SPL: GPL ZFS: CDDL ライセンス
  • 41. zfsonlinux.org 版 ZFS CLI libzfs /dev/zfs ZVOL ZPL Traversal DSL DMU ZAP ZIL ARC ZIO VDEV Configration Interface Layer Transaction object Layer Pooled Storage Layer User Kernel ZFS on Linux for Luster SC10: LLNL 発表資料より
  • 42. zfsonlinux.org 版 ZFS CLI libzfs /dev/zfs ZVOL ZPL Traversal DSL DMU ZAP ZIL ARC ZIO VDEV Configration Interface Layer Transaction object Layer Pooled Storage Layer User Kernel ZFS on Linux for Luster SC10: LLNL 発表資料より v0.6 までで、 ZPL 以外実装済み
  • 43. zfsonlinux.org 版 意外と ( ? ) 普通に使える ZFS 皆大好き Deduplication 、 Compress も動確 OK sharenfs オプションが使えるようになっていた 最近のお話 /etc/exports を書かなくても超お手軽に NFS もちろんスナップショットも取れるしブロックデバイスにすることもできる
  • 44. zfsonlinux.org 版 意外と ( ? ) 普通に使える ZFS SSD で ZIL/L2ARC も使えてる Send/Receive も利用できることを確認済み Solaris 系 (v28) <-> Linux(v28) 同士でも OK でした Import も動作確認 あれ?なんかスゲーフツーに ZFS じゃないですか
  • 45. zfsonlinux.org 版 いまひとつのところ sharesmb は動かない これは結構根が深い 普通に smb.conf 書いて COMSTAR がない (iSCSI の話 ) どうしよもない これも従来通りのやり方で iSCSI Enterprise Target とか scsi-target-utils とか
  • 46. zfsonlinux.org 版 いまひとつのところ DKMS でない Dynamic Kernel Module Support 要は kernel update のたびにビルドし直し ビルド環境を作っておいて、作成 - リポジトリ登録の流れを自動化しておければベター それなりにバギー RC だし、当然だけどバギーです、はい quota 切ろうとするとハングする、ことがあるとか よくがるのが ほげほげの状況でデットロックする、とか
  • 49. zfsonlinux.org 版 いまひとつのところもあるし、 バギーなら本番環境は無理だけど まぁそれなりに望みはあるんじゃないの という感触を持ってもらえたかもしれません で、
  • 51. Native ZFS on Linux の話 パフォーマンス
  • 52. 実際どうよ? ベンチマーク環境 (OS) NexentaStor 3.1.1 x86_64 zfs v5, zpool v28 Scientific Linux 6.1 x86_64 zfs v5, zpool v28 基本方針 4 本の HDD で RAID-Z1 zpool get all で出てくるパラメータは基本的にデフォルトで同じにする (dedup, comp は off) 細かいチューニングはしない (noatime, elevator=deadline とか ) NFS, iSCSI でクライアントからベンチする ベンチには fio 1.55 を利用する ARC に乗っかってもそれはそれで OK
  • 53. 実際どうよ? ベンチマーク環境 (HW) HP ProLiant MicroServer ( 旧世代 ) 発表時から ZFS に最適じゃね?と常々思っていた CPU AMD Athlon™ II NEO N36L (2Core 1.3GHz) MEM 8GB HDD OS: 250GB (5inch drive bay) zpool: HGST 7200rpm 2TB * 4 (AHCI) NIC Broadcom NC107i 1Gbps(OnBoard)
  • 54. 実際どうよ? 通常どんくらい出るの? 参考 : INTERNET Watch 第 415 回: HP MicroServer で作る最強ホームサーバー http://internet.watch.impress.co.jp/docs/column/shimizu/20101109_405588.html Windows Home Server (Vail - 2011)   NTFS (???) MEM: 4GB HDD: SAMSUNG HD204UI 5400rpm 2TB * 5 (AHCI RAID0 ??? Soft RAID ???)
  • 57. 実際どうよ? ( つ д⊂) ゴシゴシ
  • 59. 実際どうよ? (; ゜ д ゜ ) ・・・・
  • 60. 実際どうよ? NFS 読み込みは結構いい線 ランダムでも NCQ は爆速 メモリ 8GB 盛った効果 ( ? ) 耐え難い書き込み性能・・・! シーケンシャルで 400KB/s とか なんなの馬鹿なの死ぬの
  • 61. 実際どうよ? 既知の問題のようです Issue #290, #361 あたり参照 結構根が深い マイルストーン的には 0.8.0 には・・・
  • 63. 実際どうよ? ちょっと悩ましい sync + no_wdelay は変化なし 転送ブロックサイズを大きくすると、ほんの少し速くなる でも 1MB/s にも届かない そもそも sync が腐ってるからしょうがない async 最強 当たり前だけど、 NFS での書き込み保障はない zpool iostat 見ながらベンチすると楽しい
  • 66. 実際どうよ? 結構いける ランダム 512k 書き込みが遅い ランダム 4k(NCQ) の読みが遅い その他はなかなか優秀
  • 69. 実際どうよ? まとめ NexentaStor COMSTAR やっぱ速い NFS はぱっとしないけど、許せるレベル(?) ZFS on Linux NFS の地雷っぷりときたら sharenfs オプションで簡単に使えるのに勿体無い iSCSI は中々素敵なパフォーマンス 十分使えると思う ついでに HW(microserver) 思った以上に頑張る HW 的にはシーケンシャルで 1Gbps を丁度使い切れるような設計の様に思える ( なのかな? )
  • 70. Native ZFS on Linux の話 どんなシチュエーションで使える?
  • 71. どんなシチュエーションで使える? ダメな環境例 エンプラ環境 高い SLA 落ちると結構困る、データロストしたら結構困る HW 、 OS が 64bit 以外 メモリが 2GB 以下 いいけど僕責任持てないよ! バギー、まだ RC 、安定版は ZPL なし ライセンス 勿論ベンダはサポートしてくれないよ
  • 72. どんなシチュエーションで使える? 使える環境例 検証環境のストレージに 会社のオレオレ専用マシン ( あれば ) ちょこっと使う程度の NAS 自宅の環境 今日来てる人は皆 ぎーく か はかー だと思うので、皆様自宅 Lab に余ってるマシンや、 FC 、 10GE などなど使える物資はすべからくあると思います!
  • 73. どんなシチュエーションで使える? 使える環境例 ようは ブッ壊れたら 自分の責任の範囲で 何とかするぜ!! という環境 ( が、いまのところ良いと思う )
  • 74. どんなシチュエーションで使える? 具体例➀ 仮想化のストレージに Dedup フル活用構成 ( ファイルベース ) KVM で( Xen kernel で動くかは? ) Dedup は勿論 on zfs で pool を組んで、そこに仮想マシンイメージを置く libvirt で普通に pool に追加 qcow2 で作っても raw で作っても OK qcow2 で作れば、ファイル (≒VM) 単位でスナップショット raw で作るなら pool ごとスナップショット パフォーマンス的にどっちかにしたほうがよさそう
  • 75. どんなシチュエーションで使える? 具体例② 仮想化のストレージに Snapshot フル活用構成 ( ブロックベース ) KVM でも Xen でも OK zfs でブロックを作成 そのブロックを直に VM にアタッチ Snapshot の clone で VM をどんどん増やす Dedup を使わなくても、差分でしか使用量は増えない virt-zfs 方式で iSCSI で渡しても OK
  • 76. どんなシチュエーションで使える? 具体例③ 分散ファイルシステムのバックエンドに GlusterFS 構成 GlusterFS は、ノード数を増やしてもリニアに性能が伸びない ストライプの場合ある程度上げることもできる 現段階ではストライプと分散モードを同時に使用することができない (3.3.x より解禁 ) 各ノード自体の性能を上げる必要がある バックエンドを ZFS にすれば、性能的にもスケールアップしやすい HOWTO: GlusterFS + ZFS on Linux http://www.gluster.com/2011/08/29/howto-glusterfs-zfs-on-linux/
  • 77. どんなシチュエーションで使える? 具体例④ DLNA(UPnP) サーバ PS3 やら Xbox などで、動画や音楽を再生できるあれ 多分 Solaris で構築するより Linux のが簡単 (?) 同じ容量なら、 QN○P やバッ○ァローの NAS 製品を買うより安く付くよ! ドライバがわりと豊富 Solaris よりも RAID カードなどを選ばない ヒント : eSATA でポートマルチプライヤ
  • 78. ZFS on Linux の話 まとめ
  • 79. まとめ Linux で一般人が今使える ZFS の実装は zfs-fuse 版 お手軽さならダントツ、制限多い KQ Infotech 版 ZPL の実装あり、ただし今後に期待できない? zfsonlinux.org 版 まだまだ発展途上だけど、今後に期待できそう
  • 80. まとめ zfsonlinux.org 版の現状 現行のリリースバージョン 0.5.x は zpl が含まれていない 使うのであれば、 0.6.0( の RC) がオススメ 結構普通に使えるが、転んでも泣かない
  • 81. まとめ 使えそうなシチュエーションは 検証環境とか 仮想化と相性よろしげ dedup, snapshot, send/receive SmartOS(Solaris+KVM) は libvirt 対応してないし DLNA とか良いんじゃないですかね 対応製品をことごとく持ってないので、試してないですが・・・ エンタープライズにはまだ早い(かもしれない) やるならライセンス・サポートの問題も考える
  • 83. デモ 今日のデモ環境は仮想マシンです 今日は会場提供をしてくださった Oracle さまに敬意を表して、 Oracle Linux 6.1 を用意させていただきました