SlideShare a Scribd company logo
Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     1 
!    自己紹介
!    GlusterFSについて
!    GlusterFSとInfiniBand
!     検証してみた(ことがある)
!      まとめ


                Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     2 
!    自己紹介
!    GlusterFSについて
!    GlusterFSとInfiniBand
!     検証してみた(ことがある)
!      まとめ


                Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     3 
自己紹介


!    高橋敬祐  (  @keithseahus  )
!     ソフトウェア開発@NTTPC
!      分散ストレージ技術屋
!       自宅InfiniBander  (DDR)




                  Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     4 
!    自己紹介
!    GlusterFSについて
!    GlusterFSとInfiniBand
!     検証してみた(ことがある)
!      まとめ


                Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     5 
GlusterFSについて


!  分散ファイルシステム
  v3.3からは”Unified  File  and  Object  
  Storage”
!  オープンソース
  https://github.com/gluster/glusterfs
! RedHatが買収
  開発はコミュニティベースで継続


                      Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     6 
GlusterFSについて

世界2位の性能を達成したスパコンの開発者たちと、インド人の開発コミュニティ。




                       Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     7 
GlusterFSについて

                              システム全体でのシーケンス
各機能がモジュールで実装されている
のがポイント。

 OS上でのシーケンス




          ※古い図なので、現行バージョンとは実装が若干異なります。                                                                    8 
                          Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.  
!    自己紹介
!    GlusterFSについて
!    GlusterFSとInfiniBand
!     検証してみた(ことがある)
!      まとめ


                Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     9 
GlusterFSとInfiniBand


!  オープンソース当初のリリース
  (v1.3.0)から対応
!  IB-VERBs  APIでRDMAでのデー
  タトランスポートを実現
!  クライアントとサーバのトランス
  ポート用モジュール内でTCPから
  RDMAに切り替えるだけ
                     Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     10 
GlusterFSとInfiniBand


protocol/clientモジュール定義と…
    protocol/serverモジュール定義を…
                     下記のように変更するだけ
volume volume01-client-0
  volume protocol/client
    type volume01-server
    option remote-host server01
      type protocol/server
    option remote-subvolume /mnt/gluster
      option transport-type rdma
    option transport-type rdma
      option auth.addr./mnt/gluster.allow *
end-volume
      subvolumes /mnt/gluster
  end-volume
                         Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     11 
GlusterFSとInfiniBand


protocol/clientモジュール定義と…
    protocol/serverモジュール定義を…
                     下記のように変更するだけ
           !    CAUTION!
volume volume01-client-0
           3.1以降のバージョンでは
    type protocol/client
  volume volume01-server
    option設定ファイルをエディタ等で
      type remote-host server01
             protocol/server
         勝手に書き換えないで下さい
    option remote-subvolume /mnt/gluster
      option transport-type rdma
    option transport-type rdma
      option auth.addr./mnt/gluster.allow *
end-volume
      subvolumes /mnt/gluster
  end-volume
                         Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     12 
GlusterFSとInfiniBand


volumeを作る際にコマンド引数で定義しましょう



# gluster volume create volume01 
replica 2 
transport rdma 
server01:/mnt/gluster 
server02:/mnt/gluster


                        Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     13 
!    自己紹介
!    GlusterFSについて
!    GlusterFSとInfiniBand
!     検証してみた(ことがある)
!      まとめ


                Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     14 
検証環境1(Gigabit Ethernet)                                    ※2010年当時の情報です。




                                                                                      サーバ
                                                                                      CPU: Intel(R) Xeon(R)
                                                                                      E5405 @ 2.00GHz
                                                                                      L2: 12MB
                                                                                      RAM: 1GB
                          client01
                                                                                      GbE L2スイッチ
              GbE
              Segment A
                            GbE
                            Segment B
                                        GbE
                                        Segment C
                                                                                      Throughput: 1Gbps /
                                                                                      port
switch01                  switch02                     switch03
                                                                                      サーバ
  GbE
  Segment A
                            GbE
                            Segment B
                                                           GbE
                                                           Segment C
                                                                                      CPU: Intel(R) Xeon(R)
                                                                                      E5405 @ 2.00GHz
                                                                                      L2: 12MB
                                                                                      RAM: 1GB
storage01                 storage02                   storage03
                                                                                      HDD: SATA 6.7TB
                                                                                      RAID5




                                           Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     15 
検証環境2(IB, Coreアーキテクチャ)                                        ※2010年当時の情報です。




                                                                                       サーバ
                                                                                       CPU1: Intel Xeon E5504
                                                                                       @ 2.00GHz ×2
                                                                                       RAM: 72GB
                                                                                       HCA: 40Gbps ×2
                        client02
                                                                                       IB L2スイッチ
                   IB              IB
                   QDR 4x          QDR 4x                                              Throughput: 40Gbps /
                                                                                       port
                        switch04
        IB                                        IB
        QDR 4x   サーバ                              QDR 4x                               サーバ
                 CPU: Intel(R) Xeon(R)                                                 CPU: Intel(R) Xeon(R)
                 E5405 @ 2.00GHz                                                       E5405 @ 2.00GHz
storage04        L2: 12MB                              storage05                       L2: 12MB
                 RAM: 10GB                                                             RAM: 8GB
                 HDD: 2.1TB RAID5                                                      HDD: SATA 2.1TB
                 HCA: 40Gbps                                                           RAID5
                                                                                       HCA: 40Gbps




                                            Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     16 
検証環境3(IB, Nehalemアーキテクチャ)                        ※2010年当時の情報です。




                                                            サーバ
                                                            CPU1: Intel Xeon E5504
                                                            @ 2.00GHz ×2
                                                            RAM: 72GB
       client02                                             HCA: 40Gbps ×2

        IB
        QDR 4x
                                                            IB L2スイッチ
                                                            Throughput: 40Gbps /
       switch04                                             port
        IB
        QDR 4x
                                                            サーバ
                                                            CPU: Intel(R) Xeon(R)
       storage06                                            E5620 @ 2.40GHz ×2
                                                            L2: 12MB
                                                            RAM: 6GB
                                                            HCA: 40Gbps
                                                            HDD: SATA 0.9 TB RAID5




                                                                                   17
                   Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     17 
検証環境4(その他)                                          ※2010年当時の情報です。


本検証のデータと比較するため、一部検証において、以下のマシンに関するデータを取得した。


berga-dalas (自作IAサーバ)
CPU: Intel Core i7 920 2.66 GHz
メモリ: DDR3 1333MHz, 12 GB (2GB×6)
ストレージ: 3.5インチ SATA HDD 500 GB ×2基
ネットワーク: Gigabit Ethernet ×5ポート
(オンボード×1, IntelデュアルポートNIC×2)




zwei (ベアボーンPC)
CPU: Intel Atom 330 2.00 GHz
メモリ: DDR2 533MHz, 2GB (2GB×1)
ストレージ: 2.5インチ SATA SSD 32 GB
ネットワーク: Gigabit Ethernet ×1ポート
(オンボード)


                                 Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     18 
参考: CoreとNehalem                                                                                    ※2010年当時の情報です。

                                 FSB (Front Side Bus)                                   QPI (QuickPath Interconnect)
               メモリ制御             チップセット                                                 メモリコントローラ内蔵CPU
               伝送方式              パラレル                                                   シリアル
                                 共有バス                                                   デファレンシャル信号による
                                                                                        片方向ポイントツーポイント
               インターコネクト          5.3 GBytes/sec (667MHzの場合)                             19.2 GBytes/sec ※1
               速度                (最大10.6 GB/sec)                                        (最大25.6 GBytes/sec) ※2

Intel Coreマイクロアーキテクチャ                                                   ※1 計算式は以下の通り。                                     Intel Nehalemマイクロアーキテクチャ
                                                                        2.4 Giga-Transfers/sec
                                                                        ×2 bits/Hz (double data rate)
                                                                        ×20 (QPI link width)
                                                                        × (64/80) (data bits/flit bits)
                                                                        ×2 (two links to achieve bidirectionality)
                                                                        / 8 (bits/byte)


                                                                        ※2 ハイエンドCPUでは
                                                                        QPI Link Speedが
 5.3 GBytes/
 sec
                                                                        最大で3.2 ×2 = 6.4 Giga-Transfers/sec
                                                                        となる。
                                                                                                                               19.2 GBytes/
                                                                                                                               sec




                                   32 Gbps
                                   (= 4 GBytes/sec)                    InfiniBand HCA



                                                                                                40 Gbps
                          1.5 GBytes/sec                                                        (= 5 GBytes/sec)
                          (150 MBytes/sec×10)
                                                                                                                                                          32 Gbps
                                                                                                                                                          (= 4 GBytes/sec)


                                                                                                                                3.0 GBytes/sec (300 MBytes/
                                                                                                                                sec×10)

                               出典: Intel 5100 Chipset ( http://ark.intel.com/chipset.aspx?familyID=32717 ), Intel 5520 Chipset ( http://ark.intel.com/chipset.aspx?familyID=32423 )

                                                                                Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.                    19 
!    自己紹介
!    GlusterFSについて
!    GlusterFSとInfiniBand
!     検証してみた(ことがある)
!      まとめ 1. メモリ・バス性能測定
          2. InfiniBand RDMA性能測定
          3. GlusterFS RDMA性能測定

                 Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     20 
メモリ・バス性能測定                                   ※2010年当時の情報です。


“stream”を使用した、メモリ内単純データコピー速度の測定。

            全体の帯域幅                                         本検証における
                           Nehalem                         CPU数×CPUコ
                           アーキテク                           ア数×HTスレッド
                           チャ                              数の範囲




                    Core(又はそ
                    れ以前の)アー
                    キテクチャ




                Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     21 
メモリ・バス性能測定                                       ※2010年当時の情報です。


Nehalemでは、マルチコアがマルチスレッドでの並列I/O処理性能に貢献していることがわかる。

            シングルスレッド時の速度に対するスレッドあたり速度比の推移




                           Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     22 
!    自己紹介
!    GlusterFSについて
!    GlusterFSとInfiniBand
!     検証してみた(ことがある)
!      まとめ 1. メモリ・バス性能測定
          2. InfiniBand RDMA性能測定
          3. GlusterFS RDMA性能測定

                 Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     23 
InfiniBand RDMA性能測定                                           ※2010年当時の情報です。


            “qperf”を使用した、RC_RDMAでの書き込み速度の測定。




                        client02
                        2.78 GB/sec
                   IB              IB
                   QDR 4x          QDR 4x


                        switch04
              1.55 GB/sec                    1.67 GB/sec
        IB                                        IB
        QDR 4x    1.67 GB/sec                     QDR 4x




storage04                   1.55 GB/sec                storage05
1.50 GB/sec      1.55 MB/sec                           1.50 GB/sec




                                            Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     24 
InfiniBand RDMA性能測定                              ※2010年当時の情報です。


 “qperf”を使用した、RC_RDMAでの書き込み速度の測定。
NehalemはCoreアーキテクチャの2倍以上の性能となっている。




        client02
         IB
         QDR 4x


        switch04
         IB
         QDR 4x   3.38 GB/sec
        storage06




                    Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     25 
!    自己紹介
!    GlusterFSについて
!    GlusterFSとInfiniBand
!     検証してみた(ことがある)
!      まとめ 1. メモリ・バス性能測定
          2. InfiniBand RDMA性能測定
          3. GlusterFS RDMA性能測定

                 Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     26 
GlusterFS RDMA性能測定                              ※2010年当時の情報です。


Coreアーキテクチャ (Gigabit Ethernet)     Nehalemアーキテクチャ (Gigabit Ethernet)




       Seq. Write                                Seq. Write
       Med. 115.294 MB/sec                       Med. 116.168 MB/sec




       Seq. Read                                   Seq. Read
       Med. 114.914 MB/sec                         Med. 114.882 MB/sec




                                 Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     27 
GlusterFS RDMA性能測定                           ※2010年当時の情報です。


Coreアーキテクチャ (IB RDMA)         Nehalemアーキテクチャ (IB RDMA)




      Seq. Write                             Seq. Write
      Med. 173.310 MB/sec                    Med. 170.393 MB/sec




      Seq. Read                               Seq. Read
      Med. 389.863 MB/sec                     Med. 828.014 MB/sec




                            Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     28 
GlusterFS RDMA性能測定                           ※2010年当時の情報です。


Nehalemアーキテクチャ (IB RDMA)      Nehalemアーキテクチャ (IPoIB)




      Seq. Write                               Seq. Write
      Med. 170.393 MB/sec                      Med. 171.841 MB/sec




      Seq. Read                                 Seq. Read
      Med. 828.014 MB/sec                       Med. 428.418 MB/sec




                            Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     29 
もう一度、この図。

                           システム全体でのシーケンス
RDMAの導入効果は確かにある。しかし、
高速化したのは全シーケンスのうちの一
部分だけ。
 OS上でのシーケンス




          ※古い図なので、現行バージョンとは実装が若干異なります。                                                                 30 
                       Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.  
GlusterFSの性能に関する補足(フォロー)

当然、ストレージサーバを追加すればトータルのスループットが向上します。




                                                                                    処理A
                                                                                    処理B




                  Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     31 
!    自己紹介
!    GlusterFSについて
!    GlusterFSとInfiniBand
!     検証してみた(ことがある)
!      まとめ


                Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     32 
まとめ


! GlusterFSはInfiniBand  RDMAをサポートし
   ています。
!  Nehalem以降のアーキテクチャでは、RDMA
   での読み書き速度が大幅アップしています。
! GlusterFSでもRDMAの恩恵は大きいですが、
   実際のところゼロコピーではなく、オーバー
   ヘッドも大きいので、ネイティブなRDMAほど
   の速度は出ません。
!  でも、「ネットワーク負荷ガー」と嘆くぐらいな
   ら、InfiniBandの導入をおすすめします。

                 Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     33 
PR


!  分散ストレージに関するご用命は、こちらの
   メールアドレスまで!
   storage-contact@nttpc.co.jp
! LinuxCon  Japan  2011  Gluster  Workshop
  で講演します!
   https://events.linuxfoundation.org/
   events/linuxcon-japan/ovirt-gluster-
   workshops
!  過去のプレゼン資料はこちら。
   http://www.slideshare.net/keithseahus
                      Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.     34 

More Related Content

PDF
GlusterFS 技術と動向 2of2
PDF
GlusterFS 技術と動向 1of2
PPTX
透過型確率的パケットマーキング装置の提案と開発(オープンルータコンペティション発表資料)
PDF
Fpga local 20130322
PDF
[D20] 高速Software Switch/Router 開発から得られた高性能ソフトウェアルータ・スイッチ活用の知見 (July Tech Fest...
PDF
Lagopusで試すFirewall
PDF
ASAMAP Update
PDF
hitach flora 220fx 9911
 
GlusterFS 技術と動向 2of2
GlusterFS 技術と動向 1of2
透過型確率的パケットマーキング装置の提案と開発(オープンルータコンペティション発表資料)
Fpga local 20130322
[D20] 高速Software Switch/Router 開発から得られた高性能ソフトウェアルータ・スイッチ活用の知見 (July Tech Fest...
Lagopusで試すFirewall
ASAMAP Update
hitach flora 220fx 9911
 

What's hot (19)

PPTX
ネットワークプログラマビリティ勉強会
PPT
プロトコル変換ゲートウェイPTGWの 実証実験と評価
PDF
Running lagopus on Xeon D
PDF
ネットワーク通信入門
PDF
Osc2018tokyo spring-20180224
KEY
MAP 実装してみた
PPTX
ハードウェア技術の動向 2015/02/02
PDF
Lagos running on small factor machine
PDF
V6 unix vol.2 in okinawa
PDF
Kernel vm-2014-05-25
PDF
NVIDIA TESLA V100・CUDA 9 のご紹介
PDF
Tremaで試すFirewall
PDF
SDN Japan: ovs-hw
PDF
DPDKによる高速コンテナネットワーキング
PPTX
Lagopus workshop@Internet weekのそば
PDF
Dpdk pmd
PDF
FPGA+SoC+Linux実践勉強会資料
PDF
Linux Kernel Seminar in tripodworks
PDF
FPGAのトレンドをまとめてみた
ネットワークプログラマビリティ勉強会
プロトコル変換ゲートウェイPTGWの 実証実験と評価
Running lagopus on Xeon D
ネットワーク通信入門
Osc2018tokyo spring-20180224
MAP 実装してみた
ハードウェア技術の動向 2015/02/02
Lagos running on small factor machine
V6 unix vol.2 in okinawa
Kernel vm-2014-05-25
NVIDIA TESLA V100・CUDA 9 のご紹介
Tremaで試すFirewall
SDN Japan: ovs-hw
DPDKによる高速コンテナネットワーキング
Lagopus workshop@Internet weekのそば
Dpdk pmd
FPGA+SoC+Linux実践勉強会資料
Linux Kernel Seminar in tripodworks
FPGAのトレンドをまとめてみた
Ad

Viewers also liked (7)

PDF
Big Data入門に見せかけたFluentd入門
PDF
IIJにおけるGlusterFS利用事例 GlusterFSの詳解と2年間の運用ノウハウ
 
PDF
クラウドで消耗してませんか?
 
PDF
パーフェクト"Elixir情報収集"
PDF
分散ストレージソフトウェアCeph・アーキテクチャー概要
PPTX
Jetson TK1でSemi-Global Matching
ODP
音声認識の基礎
Big Data入門に見せかけたFluentd入門
IIJにおけるGlusterFS利用事例 GlusterFSの詳解と2年間の運用ノウハウ
 
クラウドで消耗してませんか?
 
パーフェクト"Elixir情報収集"
分散ストレージソフトウェアCeph・アーキテクチャー概要
Jetson TK1でSemi-Global Matching
音声認識の基礎
Ad

Similar to GlusterFSとInfiniBandの小話 (20)

PDF
RDMA for Windows Server 2012
PDF
Microsoft power point ai fss 製品概要-4-4 [互換モード]
PDF
Ai fss 製品概要 4-4
PDF
20121126 flex pure_ws2012
PDF
20111015 勉強会 (PCIe / SR-IOV)
PDF
シーサーでのInfiniBand導入事例
PDF
運用ドキュメントから見たシステム運用を考える Vol.2.2-資料一式編
PPTX
自宅スケーラブル・ファイルシステムのご紹介
PDF
Crooz meet fusion io3 open
PDF
GMOメディア RHEV-S-事例紹介
PDF
OSC2011 Tokyo/Fall 濃いバナ(virtio)
PDF
プログラマ目線から見たRDMAのメリットと その応用例について
PDF
AWS 初級トレーニング (Windows Server 2008編)
PDF
AWS ベーシックトレーニング-トレーニング資料
PDF
B14 SQL Server over SMB using infiniBand and SSD by Mario Broodbakker/市川明
PDF
『どうする?どうやる? データセンター間ネット ワーク』 - 802.1aq(SPB)/TRILL@JANOG29
PDF
2011 07 17_日本アンドロイドの会_abc summer_2011_jun_yamada
PDF
さくらのクラウドインフラの紹介
PDF
エバンジェリストが語るパワーシステム特論 ~ 第4回:AIX 人気の秘密を探る
PDF
Oracle RACの弱点を克服する infinibandを使ったクラスターテクノロジー
RDMA for Windows Server 2012
Microsoft power point ai fss 製品概要-4-4 [互換モード]
Ai fss 製品概要 4-4
20121126 flex pure_ws2012
20111015 勉強会 (PCIe / SR-IOV)
シーサーでのInfiniBand導入事例
運用ドキュメントから見たシステム運用を考える Vol.2.2-資料一式編
自宅スケーラブル・ファイルシステムのご紹介
Crooz meet fusion io3 open
GMOメディア RHEV-S-事例紹介
OSC2011 Tokyo/Fall 濃いバナ(virtio)
プログラマ目線から見たRDMAのメリットと その応用例について
AWS 初級トレーニング (Windows Server 2008編)
AWS ベーシックトレーニング-トレーニング資料
B14 SQL Server over SMB using infiniBand and SSD by Mario Broodbakker/市川明
『どうする?どうやる? データセンター間ネット ワーク』 - 802.1aq(SPB)/TRILL@JANOG29
2011 07 17_日本アンドロイドの会_abc summer_2011_jun_yamada
さくらのクラウドインフラの紹介
エバンジェリストが語るパワーシステム特論 ~ 第4回:AIX 人気の秘密を探る
Oracle RACの弱点を克服する infinibandを使ったクラスターテクノロジー

More from Keisuke Takahashi (11)

PDF
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
PDF
GlusterFS Masakari Talks
PDF
GlusterFS Updates (and more) in 第六回クラウドストレージ研究会
PDF
Trying and evaluating the new features of GlusterFS 3.5
PDF
Gluster Cloud Night in Tokyo 2013 -- Tips for getting started
PDF
Gluster in Japan 2012-2013
PDF
Creating a shared storage service with GlusterFS
PDF
最新技術動向 GlusterFS (仮想化DAY, Internet Week 2011)
PDF
GlusterFS As an Object Storage
PDF
GlusterFS モジュール超概論
PDF
GlusterFS座談会テクニカルセッション
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
GlusterFS Masakari Talks
GlusterFS Updates (and more) in 第六回クラウドストレージ研究会
Trying and evaluating the new features of GlusterFS 3.5
Gluster Cloud Night in Tokyo 2013 -- Tips for getting started
Gluster in Japan 2012-2013
Creating a shared storage service with GlusterFS
最新技術動向 GlusterFS (仮想化DAY, Internet Week 2011)
GlusterFS As an Object Storage
GlusterFS モジュール超概論
GlusterFS座談会テクニカルセッション

GlusterFSとInfiniBandの小話

  • 1. Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   1 
  • 2. !  自己紹介 ! GlusterFSについて ! GlusterFSとInfiniBand !  検証してみた(ことがある) !  まとめ Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   2 
  • 3. !  自己紹介 ! GlusterFSについて ! GlusterFSとInfiniBand !  検証してみた(ことがある) !  まとめ Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   3 
  • 4. 自己紹介 !  高橋敬祐  (  @keithseahus  ) !  ソフトウェア開発@NTTPC !  分散ストレージ技術屋 !  自宅InfiniBander  (DDR) Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   4 
  • 5. !  自己紹介 ! GlusterFSについて ! GlusterFSとInfiniBand !  検証してみた(ことがある) !  まとめ Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   5 
  • 6. GlusterFSについて !  分散ファイルシステム  v3.3からは”Unified  File  and  Object   Storage” !  オープンソース  https://github.com/gluster/glusterfs ! RedHatが買収  開発はコミュニティベースで継続 Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   6 
  • 7. GlusterFSについて 世界2位の性能を達成したスパコンの開発者たちと、インド人の開発コミュニティ。 Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   7 
  • 8. GlusterFSについて システム全体でのシーケンス 各機能がモジュールで実装されている のがポイント。 OS上でのシーケンス ※古い図なので、現行バージョンとは実装が若干異なります。 8  Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.  
  • 9. !  自己紹介 ! GlusterFSについて ! GlusterFSとInfiniBand !  検証してみた(ことがある) !  まとめ Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   9 
  • 10. GlusterFSとInfiniBand !  オープンソース当初のリリース (v1.3.0)から対応 !  IB-VERBs  APIでRDMAでのデー タトランスポートを実現 !  クライアントとサーバのトランス ポート用モジュール内でTCPから RDMAに切り替えるだけ Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   10 
  • 11. GlusterFSとInfiniBand protocol/clientモジュール定義と… protocol/serverモジュール定義を… 下記のように変更するだけ volume volume01-client-0 volume protocol/client type volume01-server option remote-host server01 type protocol/server option remote-subvolume /mnt/gluster option transport-type rdma option transport-type rdma option auth.addr./mnt/gluster.allow * end-volume subvolumes /mnt/gluster end-volume Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   11 
  • 12. GlusterFSとInfiniBand protocol/clientモジュール定義と… protocol/serverモジュール定義を… 下記のように変更するだけ ! CAUTION! volume volume01-client-0 3.1以降のバージョンでは type protocol/client volume volume01-server option設定ファイルをエディタ等で type remote-host server01 protocol/server 勝手に書き換えないで下さい option remote-subvolume /mnt/gluster option transport-type rdma option transport-type rdma option auth.addr./mnt/gluster.allow * end-volume subvolumes /mnt/gluster end-volume Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   12 
  • 13. GlusterFSとInfiniBand volumeを作る際にコマンド引数で定義しましょう # gluster volume create volume01 replica 2 transport rdma server01:/mnt/gluster server02:/mnt/gluster Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   13 
  • 14. !  自己紹介 ! GlusterFSについて ! GlusterFSとInfiniBand !  検証してみた(ことがある) !  まとめ Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   14 
  • 15. 検証環境1(Gigabit Ethernet) ※2010年当時の情報です。 サーバ CPU: Intel(R) Xeon(R) E5405 @ 2.00GHz L2: 12MB RAM: 1GB client01 GbE L2スイッチ GbE Segment A GbE Segment B GbE Segment C Throughput: 1Gbps / port switch01 switch02 switch03 サーバ GbE Segment A GbE Segment B GbE Segment C CPU: Intel(R) Xeon(R) E5405 @ 2.00GHz L2: 12MB RAM: 1GB storage01 storage02 storage03 HDD: SATA 6.7TB RAID5 Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   15 
  • 16. 検証環境2(IB, Coreアーキテクチャ) ※2010年当時の情報です。 サーバ CPU1: Intel Xeon E5504 @ 2.00GHz ×2 RAM: 72GB HCA: 40Gbps ×2 client02 IB L2スイッチ IB IB QDR 4x QDR 4x Throughput: 40Gbps / port switch04 IB IB QDR 4x サーバ QDR 4x サーバ CPU: Intel(R) Xeon(R) CPU: Intel(R) Xeon(R) E5405 @ 2.00GHz E5405 @ 2.00GHz storage04 L2: 12MB storage05 L2: 12MB RAM: 10GB RAM: 8GB HDD: 2.1TB RAID5 HDD: SATA 2.1TB HCA: 40Gbps RAID5 HCA: 40Gbps Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   16 
  • 17. 検証環境3(IB, Nehalemアーキテクチャ) ※2010年当時の情報です。 サーバ CPU1: Intel Xeon E5504 @ 2.00GHz ×2 RAM: 72GB client02 HCA: 40Gbps ×2 IB QDR 4x IB L2スイッチ Throughput: 40Gbps / switch04 port IB QDR 4x サーバ CPU: Intel(R) Xeon(R) storage06 E5620 @ 2.40GHz ×2 L2: 12MB RAM: 6GB HCA: 40Gbps HDD: SATA 0.9 TB RAID5 17 Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   17 
  • 18. 検証環境4(その他) ※2010年当時の情報です。 本検証のデータと比較するため、一部検証において、以下のマシンに関するデータを取得した。 berga-dalas (自作IAサーバ) CPU: Intel Core i7 920 2.66 GHz メモリ: DDR3 1333MHz, 12 GB (2GB×6) ストレージ: 3.5インチ SATA HDD 500 GB ×2基 ネットワーク: Gigabit Ethernet ×5ポート (オンボード×1, IntelデュアルポートNIC×2) zwei (ベアボーンPC) CPU: Intel Atom 330 2.00 GHz メモリ: DDR2 533MHz, 2GB (2GB×1) ストレージ: 2.5インチ SATA SSD 32 GB ネットワーク: Gigabit Ethernet ×1ポート (オンボード) Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   18 
  • 19. 参考: CoreとNehalem ※2010年当時の情報です。 FSB (Front Side Bus) QPI (QuickPath Interconnect) メモリ制御 チップセット メモリコントローラ内蔵CPU 伝送方式 パラレル シリアル 共有バス デファレンシャル信号による 片方向ポイントツーポイント インターコネクト 5.3 GBytes/sec (667MHzの場合) 19.2 GBytes/sec ※1 速度 (最大10.6 GB/sec) (最大25.6 GBytes/sec) ※2 Intel Coreマイクロアーキテクチャ ※1 計算式は以下の通り。 Intel Nehalemマイクロアーキテクチャ 2.4 Giga-Transfers/sec ×2 bits/Hz (double data rate) ×20 (QPI link width) × (64/80) (data bits/flit bits) ×2 (two links to achieve bidirectionality) / 8 (bits/byte) ※2 ハイエンドCPUでは QPI Link Speedが 5.3 GBytes/ sec 最大で3.2 ×2 = 6.4 Giga-Transfers/sec となる。 19.2 GBytes/ sec 32 Gbps (= 4 GBytes/sec) InfiniBand HCA 40 Gbps 1.5 GBytes/sec (= 5 GBytes/sec) (150 MBytes/sec×10) 32 Gbps (= 4 GBytes/sec) 3.0 GBytes/sec (300 MBytes/ sec×10) 出典: Intel 5100 Chipset ( http://ark.intel.com/chipset.aspx?familyID=32717 ), Intel 5520 Chipset ( http://ark.intel.com/chipset.aspx?familyID=32423 ) Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   19 
  • 20. !  自己紹介 ! GlusterFSについて ! GlusterFSとInfiniBand !  検証してみた(ことがある) !  まとめ 1. メモリ・バス性能測定 2. InfiniBand RDMA性能測定 3. GlusterFS RDMA性能測定 Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   20 
  • 21. メモリ・バス性能測定 ※2010年当時の情報です。 “stream”を使用した、メモリ内単純データコピー速度の測定。 全体の帯域幅 本検証における Nehalem CPU数×CPUコ アーキテク ア数×HTスレッド チャ 数の範囲 Core(又はそ れ以前の)アー キテクチャ Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   21 
  • 22. メモリ・バス性能測定 ※2010年当時の情報です。 Nehalemでは、マルチコアがマルチスレッドでの並列I/O処理性能に貢献していることがわかる。 シングルスレッド時の速度に対するスレッドあたり速度比の推移 Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   22 
  • 23. !  自己紹介 ! GlusterFSについて ! GlusterFSとInfiniBand !  検証してみた(ことがある) !  まとめ 1. メモリ・バス性能測定 2. InfiniBand RDMA性能測定 3. GlusterFS RDMA性能測定 Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   23 
  • 24. InfiniBand RDMA性能測定 ※2010年当時の情報です。 “qperf”を使用した、RC_RDMAでの書き込み速度の測定。 client02 2.78 GB/sec IB IB QDR 4x QDR 4x switch04 1.55 GB/sec 1.67 GB/sec IB IB QDR 4x 1.67 GB/sec QDR 4x storage04 1.55 GB/sec storage05 1.50 GB/sec 1.55 MB/sec 1.50 GB/sec Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   24 
  • 25. InfiniBand RDMA性能測定 ※2010年当時の情報です。 “qperf”を使用した、RC_RDMAでの書き込み速度の測定。 NehalemはCoreアーキテクチャの2倍以上の性能となっている。 client02 IB QDR 4x switch04 IB QDR 4x 3.38 GB/sec storage06 Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   25 
  • 26. !  自己紹介 ! GlusterFSについて ! GlusterFSとInfiniBand !  検証してみた(ことがある) !  まとめ 1. メモリ・バス性能測定 2. InfiniBand RDMA性能測定 3. GlusterFS RDMA性能測定 Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   26 
  • 27. GlusterFS RDMA性能測定 ※2010年当時の情報です。 Coreアーキテクチャ (Gigabit Ethernet) Nehalemアーキテクチャ (Gigabit Ethernet) Seq. Write Seq. Write Med. 115.294 MB/sec Med. 116.168 MB/sec Seq. Read Seq. Read Med. 114.914 MB/sec Med. 114.882 MB/sec Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   27 
  • 28. GlusterFS RDMA性能測定 ※2010年当時の情報です。 Coreアーキテクチャ (IB RDMA) Nehalemアーキテクチャ (IB RDMA) Seq. Write Seq. Write Med. 173.310 MB/sec Med. 170.393 MB/sec Seq. Read Seq. Read Med. 389.863 MB/sec Med. 828.014 MB/sec Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   28 
  • 29. GlusterFS RDMA性能測定 ※2010年当時の情報です。 Nehalemアーキテクチャ (IB RDMA) Nehalemアーキテクチャ (IPoIB) Seq. Write Seq. Write Med. 170.393 MB/sec Med. 171.841 MB/sec Seq. Read Seq. Read Med. 828.014 MB/sec Med. 428.418 MB/sec Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   29 
  • 30. もう一度、この図。 システム全体でのシーケンス RDMAの導入効果は確かにある。しかし、 高速化したのは全シーケンスのうちの一 部分だけ。 OS上でのシーケンス ※古い図なので、現行バージョンとは実装が若干異なります。 30  Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.  
  • 31. GlusterFSの性能に関する補足(フォロー) 当然、ストレージサーバを追加すればトータルのスループットが向上します。 処理A 処理B Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   31 
  • 32. !  自己紹介 ! GlusterFSについて ! GlusterFSとInfiniBand !  検証してみた(ことがある) !  まとめ Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   32 
  • 33. まとめ ! GlusterFSはInfiniBand  RDMAをサポートし ています。 !  Nehalem以降のアーキテクチャでは、RDMA での読み書き速度が大幅アップしています。 ! GlusterFSでもRDMAの恩恵は大きいですが、 実際のところゼロコピーではなく、オーバー ヘッドも大きいので、ネイティブなRDMAほど の速度は出ません。 !  でも、「ネットワーク負荷ガー」と嘆くぐらいな ら、InfiniBandの導入をおすすめします。 Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   33 
  • 34. PR !  分散ストレージに関するご用命は、こちらの メールアドレスまで!  storage-contact@nttpc.co.jp ! LinuxCon  Japan  2011  Gluster  Workshop で講演します!  https://events.linuxfoundation.org/ events/linuxcon-japan/ovirt-gluster- workshops !  過去のプレゼン資料はこちら。  http://www.slideshare.net/keithseahus Copyright  (C)  2012,  NTTPC  Communications,  Inc.  All  Rights  Reserved.   34