2.3. GlusterFS の要件 – GlusterFS Community ではじめる分散ファイルシステム

.

GlusterFS に必要なスペック

GlusterFS を動かす上で必要な要件は以下のようになります。

  <td>
    1GByte
  </td>
</tr>

<tr>
  <td>
    ハードディスク
  </td>

  <td>
    8Gbyte 以上のディスク
  </td>
</tr>

<tr>
  <td>
    OS
  </td>

  <td>
    CentOS => 5.1、Ubuntu 8.04、<a href='http://fedoraproject.org/ja/'>Fedora</a> 11
  </td>
</tr>

<tr>
  <td>
    CPU
  </td>

  <td>
    Intel か AMD プロセッサの x86 64bit
  </td>
</tr>

<tr>
  <td>
    ネットワーク帯域
  </td>

  <td>
    1Gbps か 10Gbps イーサネット
  </td>
</tr>

<tr>
  <td>
    <a href='http://ja.wikipedia.org/wiki/InfiniBand'>InfiniBand</a>
  </td>

  <td>
    OFED 1.5 以上
  </td>
</tr>

<tr>
  <td>
    Ext4 ファイルシステム
  </td>

  <td>
    Linux kernel >= 2.6.31、CentOS >= 5.4
  </td>
</tr>

<tr>
  <td>
    Ext3 ファイルシステム
  </td>

  <td>
    どのバージョンでも利用可能
  </td>
</tr>

<tr>
  <td>
    XFS ファイルシステム
  </td>

  <td>
    CentOS 5.6 以上
  </td>
</tr>

<tr>
  <td>
    その他のファイルシステム
  </td>

  <td>
    <a href='http://ja.wikipedia.org/wiki/ReiserFS'>ReiserFS</a>(動く可能性)
  </td>
</tr>

ここに記載された要件は GlusterFS 3.2 時点のものですが、2014/02/09現在の最新バージョンである 3.4.2 でも変化はないものと想定されます(現時点では公表されていません)。

特に性能に影響するハードディスクですが、RAID やファイバチャネル・InfiniBand・Amazon EBS 経由でも問題なく動きます。GlusterFS は特に大量のディスク I/O を必要とします。

その為、ハードディスクの性能は非常によいものであるのが好ましいでしょう。ローカルディスクを使う場合、SATA であれば 7200rpm、可能であれば SAS や SSD を使ってください。RAID コントローラを利用するのであれば Write Back Cache 付きのものにするだけで書き込み速度は非常に早くなります。

ネットワーク帯域は 1Gbps もしくは 10Gbps となっていますが、筆者の環境では 100Mbps の LAN でも問題なく動いていることを確認しています。

ファイルシステムは XFS が推奨(100Gbyte 以上の大きいファイルも利用可能)です。CPU については 32bit のシステム(物理アドレス拡張である PAE を含む)に対応していないことにも注意が必要です。

仮想環境について

GlusterFS に必要なスペックのハードディスクに Amazon EBS(EC2 用ブロックストレージ)や VirtualBox、VMWare 等は挙がっていませんが、もちろん GlusterFS は仮想環境でも問題なく利用可能です。

ただし仮想環境で注意が必要なのは GlusterFS ではサーバを特定する為に UUID を使っていることです。これは他のノードとの信頼関係(peer)構築の識別子として利用しています。

仮想環境で VM イメージから VM を作成した時等はこの UUID が変わっている可能性がありますので、既に信頼関係が構築されている場合、このノードを改めて信頼(gluster peer probe)する必要があります。

… UUID はノードを特定するランダムな識別子で 16進数で「550e8400-e29b-41d4-a716-446655440000」のように表記されます。仮想環境等では作成(あるいは Clone)の都度更新されます。