トップ «前の日記(2007-05-21 (Mon)) 最新 次の日記(2007-05-29 (Tue))» 編集

ふたつの川うるおう日記


2007-05-25 (Fri)

_ [大学][Linux][Admin] GFSの性能

一昨日適当に測ったのを掲載。会話の途中でいきなし測ってみるかってことになったので、適当に測ってみました。

  • 他にも同一ネットワークの利用者がそれなりにいた状態
  • ddだと1回目と2回以降で速度変わっちゃったりするらしいけどそこは気にしない
  • bashのtimeで計測、結果は小数点第3位を四者五入
  • 8GBの1ファイルに対する計測
    • 小さいファイルたくさんで計測したらまた違うかもね

構成とスペック

  • SANストレージ1台: IBM System Storage DS4700
    • RAID-5 2TBのファイルシステムがGFSの同一論理領域をファイルサーバ3台で接続
      • ファイルサーバ3台でロック情報を共用
    • RAID-5 1.7TBのファイルシステムがext3の論理領域をファイルサーバ1台で接続
    • 2つあるコントローラに4 Gbps ファイバーチャネルでSANスイッチ経由でファイルサーバ3台に2本ずつ接続
      • それぞれ1本はスタンバイ
  • ファイルサーバ3台: IBM System x 3550
    • OS: CentOS 4.4 64-bit (RDACがCentOS5にまだ対応していないため)
    • CPU: Intel Xeon 5160 3.0GHz
    • MEM: 4GB
    • HDD: SAS 160GB 15,000rpm (RAID-1)
  • シェルサーバ (Xen上): IBM System x 3550
    • OS: CentOS 5.0 64-bit
    • Xen: xen-3.0.3-25.0.3.el5 (CentOS 5.0付属)
      • ゲストOS: 3台稼働中。シェルサーバはその内の1台。
    • CPU: Intel Xeon 5160 3.0GHz
    • MEM: 4GB
      • Xen上のゲストOSへの割り当て容量: 1GB
    • HDD: SAS 160GB 15,000rpm (RAID-1)
    • ファイルサーバのGFS領域をNFSマウント
  • ネットワーク: 1000Mbps

テスト内容: 8GBのファイルの作成、コピー、削除の速度と適当に計測

  1. シェルサーバ上のNFSマウント領域
  2. ファイルサーバ上のGFSのSANストレージ領域
  3. ファイルサーバ上のext3のSANストレージ領域
  4. ファイルサーバ上のext3のローカルHDD領域
  • 1. シェルサーバ上のNFSマウント領域
    • シェルサーバ(NFS) -> (Xenホスト) -> ファイルサーバ -> SANストレージ
$ time dd if=/dev/zero of=/home/users/*****/BigZero8G bs=1024 count=8000000
8000000+0 records in
8000000+0 records out
real    2m21.375s
user    0m3.600s
sys     0m23.869s
結果: 57.95 MB/s
$ time cp BigZero8G BigZero8G_2
real    5m4.968s
user    0m0.460s
sys     0m14.337s
結果: 26.69 MB/s
$ time rm BigZero8G -rf
real    0m0.541s
user    0m0.000s
sys     0m0.132s
  • 2. ファイルサーバ上のGFSのSANストレージ領域
    • ファイルサーバ -> SANストレージ
$ time dd if=/dev/zero of=/home/users/*****/BigZero8G bs=1024 count=8000000
8000000+0 records in
8000000+0 records out
real    1m28.606s
user    0m1.291s
sys     1m2.863s
結果: 92.45 MB/s
$ time cp BigZero8G BigZero8G_2
real    2m13.240s
user    0m0.374s
sys     0m43.967s
結果: 61.48 MB/s
$ time rm BigZero8G_2 -rf
real    0m0.237s
user    0m0.000s
sys     0m0.212s
  • 3. ファイルサーバ上のext3のSANストレージ領域
    • ファイルサーバ -> SANストレージ
$ time dd if=/dev/zero of=/home/backup/BigZero8G bs=1024 count=8000000
8000000+0 records in
8000000+0 records out
real    1m16.306s
user    0m0.946s
sys     0m16.891s
結果: 107.36 MB/s
$ time cp BigZero8G BigZero8G_2
real    2m25.014s
user    0m0.376s
sys     0m17.820s
結果: 56.49 MB/s
$ time rm BigZero8G -rf
real    0m2.017s
user    0m0.000s
sys     0m0.535s
  • 4. ファイルサーバ上のext3のローカルHDD領域
    • ファイルサーバ -> ローカルHDD
$ time dd if=/dev/zero of=/tmp/BigZero8G bs=1024 count=8000000
8000000+0 records in
8000000+0 records out
real    1m32.946s
user    0m0.981s
sys     0m16.132s
結果: 88.13 MB/s
$ time cp BigZero8G BigZero8G_2
real    3m22.509s
user    0m0.354s
sys     0m17.396s
結果: 40.45 MB/s
$ time rm BigZero8G -rf
real    0m2.612s
user    0m0.001s
sys     0m0.567s

テスト実施環境 / テスト項目書き込み速度(MB/s)コピー速度(Read+Write)(MB/s)削除(秒)
1. シェルサーバ上のNFSマウント領域57.95 MB/s26.69 MB/s0m0.541s
2. ファイルサーバ上のGFSのSANストレージ領域92.45 MB/s61.48 MB/s0m0.237s
3. ファイルサーバ上のext3のSANストレージ領域107.36 MB/s56.49 MB/s0m2.017s
4. ファイルサーバ上のext3のローカルHDD領域88.13 MB/s40.45 MB/s0m2.612s

まとめ

  • 1: シェルサーバ上での作成とコピーの値がほぼ2倍になっているので、これはNFSの処理速度とネットワークの限界で、SANストレージは足を引っ張ってなさそう。
  • 2,3: SANストレージのGFSはSANストレージのext3の86.11%のファイル書き込みパフォーマンスだった。
  • 2,3: ファイルのコピーはSANストレージのext3よりSANストレージのGFSの方が早かった。
  • 2,4: GFS経由でもローカルHDDより早い -> たぶんファイバチャネルが早いから。
  • 2,3,4: ファイバチャネルはやっぱし早い
  • 1,2,3,4: 削除は早い順でGFS(SAN) > NFS-GFS(SAN) >>>> ext3(SAN) > ローカルHDD。GFSとNFSはたぶん実際に削除する前にレスポンス返してるので早いっぽい。

という結果でした。GFSはext3と比べて大きな差もなくかなり早いという印象です。GFSに似たとある商用分散ファイルシステムはなぜかファイルの削除に2分以上かかるらしい。たぶんロック情報の共有の仕方がおかしいんだと思う。

ただし、GFSなのかSANストレージなのか判ってないけど、このGFS環境には罠が1個あって、dfした時の現容量の表示が2秒ぐらい掛かる。ファイバーチャネルの接続構成変えても治らなかった。

関連: Sambaで共有フォルダ内のファイル表示が遅い

| Bookmark:
本日のツッコミ(全3件) [ツッコミを入れる]
_ tksmd (2007-06-06 (Wed) 00:39)

ちなみに、Fiber は 2G ですよね。GFS の結果は興味深いです。こういうのを見ると、ついうっかり random read/write の結果とか知りたくなりますね。まだ私も試したことないですが、iozone というベンチマークツールは比較的色々な事が出来そうでよさげです。

_ jfut (2007-06-08 (Fri) 10:47)

どうもです。ついうっかり今晩あたりiozoneを走らせてしまいそうです(゜ー゜)。<br>Fiberはdmesgで下記のように出てたので4Gだと思ったんですが違いますかね?(アレイマネージャでどうだったか覚えてなかったり汗。<br>qla2400 0000:14:01.0: LOOP UP detected (4 Gbps).<br>QLogic QLA2462 - PCI-X 2.0 to 4Gb FC, Dual Channel

_ tksmd (2007-06-11 (Mon) 14:31)

おぉ、知らぬ間に世の中 4G になっていますか。。。<br>dd で seq write で、ブロックサイズ 1k ならこれ位、というのは良い指標かもしれないです。もちっとブロックサイズあげたら、もう少し速度は出るかもしれないですね。<br># H/W 側の RAID のチャンクサイズで、ちょびっと値が変わる事があったような記憶もありますが。。。

[]

| Return to page top | Vicuna CMS - WordPress Theme - Vicuna Ninja Style for tDiary |