Enterprise Watch
バックナンバー

筐体を増やすだけでシステムを拡張できるIsilonのクラスタストレージ


東京エレクトロン株式会社 コンピュータ・ネットワーク事業部 マーケティング・グループ 統括リーダーの上善良直氏
 NASは、異種プラットフォームのサーバーやクライアントPCからファイル共有を簡単に行える上、導入や運用管理も比較的容易である。しかし、一部の高価な製品を除き、SAN環境のようなシステム構成の柔軟性は併せ持たない。つまり、ディスク容量を増やしたり、アクセス性能を高めたりといったことがそれほど容易ではないのだ。このようなときNASヘッドを利用すれば、データの格納にSAN上のストレージを利用できるが、SANとNASの環境をどちらも用意しなければならず、敷居は一気に高くなる。

 そこで登場したのが、SANとNASの利点を兼ね備えたインテリジェント・クラスタストレージ「Isilon IQ」である。Isilon IQは、ほぼ同じ形格好をしたストレージ筐体を単純に増やすだけでシステム規模を拡張できる新しいタイプのNASだ。今回は、このIsilon IQの仕組みと特徴を取り上げていく。なお、本記事を執筆するにあたり、Isilon IQの導入で実績のある東京エレクトロン株式会社 コンピュータ・ネットワーク事業部 マーケティング・グループ 統括リーダーの上善良直氏よりお話を伺った。


ノード間を高速なInfiniBandで接続するIsilon IQ

 Isilon IQは、同じような形格好をした多数のストレージ筐体から構成されている。これらのストレージ筐体間はバックボーンネットワークを通じて相互に接続されており、クラスタを構成している。クラスタを実現する機能はすべてのストレージ筐体に内蔵されており、バックボーンネットワークを通じてデータや制御情報をやり取りすることで、あたかもひとつの巨大NASがあるかのように見せている。


Isilon IQのノード間は多くがInfiniBandで相互接続される。また、Isilon IQのフロントエンドはクライアントとともにEthernetベースのLANに接続される。クライアントからはノード数ぶんのNASが見える形となる(出典:東京エレクトロン株式会社、以下同様)。
 バックボーンネットワークには、Gigabit EthernetもしくはInfiniBandが用いられる。上善氏によれば、Isilon IQが市場に登場したばかりの頃はGigabit Ethernetが多く用いられていたが、最近ではInfiniBandを使用する事例がほとんどだという。Isilon IQは、4レーンのInfiniBandをサポートしているため、Gigabit Ethernetの10倍に相当する10Gbpsの帯域幅を得ることが可能だ。このため、筆者は接続するストレージ筐体数(ノード数)が少ないときにGigabit Ethernetを、多いときにInfiniBandを使用するという「使い分け」が適切だと想像していた。しかし、実際には高いスループットや拡張性を強く期待してIsilon IQを導入する顧客が多く、導入時の規模にかかわらずInfiniBandを採用するケースがほとんどなのだそうだ。

 ストレージ機器の要素技術としてInfiniBandを積極的に採用した製品はIsilon IQが初めてではないだろうか。InfiniBandが登場した当初は、HPCC(High Performance Computing Cluster)向けのインターコネクトやストレージ向けの高速インターフェイスとして使われることが期待されていたが、現時点ではごく一部のHPCCで採用されているに過ぎない。私事で恐縮だが、筆者はかつてInfiniBandに期待を寄せる短期連載(伊勢雅英のInfiniBand探検隊)を寄稿したことがある。Isilon IQのような製品を通じて、これらの記事に再び日が当たるようであればたいへんうれしい。


クラスタ全体を単一のストレージに見せる分散ファイルシステム「OneFS」

Isilon IQシリーズのラインナップ。総容量は1920i、3000i、4800i、6000iの順に多くなっていくが、すべて同一のコンピューティングリソースを持つことから、単位容量あたりのパフォーマンスは6000i、4800i、3000i、1920iの順に向上していく。つまり、容量を重視する用途では数字の大きいモデル、性能を重視する用途では数字の小さいモデルを選択すればよい。なお、すべてのノードのパフォーマンスを底上げする拡張ノードがIsilon IQ Acceleratorだ。
 さて、そんなInfiniBand接続のIsilon IQだが、その中身はIntel Xeonプロセッサ 3.2GHz、4GBのECC付きキャッシュメモリ、512MBの不揮発メモリ、12台の3.5インチSATA-2 HDD、ホットスワップ可能な冗長型電源を内蔵した2Uラックマウントのストレージ筐体である。内蔵されるHDDの容量によって、160GB HDD×12台(総容量1.92TB)のIsilon IQ 1920i、250GB HDD×12台(総容量3TB)のIsilon IQ 3000i、400GB HDD×12台(総容量4.8TB)のIsilon IQ 4800i、500GB HDD×12台(総容量6TB)のIsilon IQ 6000iという4つのモデルから構成されている。また、Isilon IQ 6000iの総容量を2倍の12TBに拡張するIsilon EX 6000(500GB HDD×12台)もオプションとして用意されている。Isilon IQ 6000iとIsilon EX 6000の間は、Serial Attached SCSIで接続される。

 Isilon IQは、各筐体のストレージリソースを単一のものに見せる独自の分散ファイルシステム「OneFS」を搭載している。OneFSは、従来のストレージアーキテクチャを構成するファイルシステム、ボリュームマネージャ、RAIDの3層を1つのソフトウェア層に統合したものだ。現時点では3~88ノードをサポートしている。ノードの追加は、他のノードを稼働させたまま行うことが可能で、しかも単にノードを追加するだけで60秒以内にはボリューム拡張が完了してしまう。

 このとき、Auto Balance機能によってパフォーマンスも同時に最適化される。従来型のストレージでは、ストレージ筐体を追加した際の増加分を新たなボリュームのために使用するのが一般的だ。このため、ストレージ全体の容量は増えても、パフォーマンスの向上には直接結びつかない。これに対してIsilon IQは、ノードが追加されると、すべてのノードに対してデータを均等に再配分してパフォーマンスの最適化を行う。つまり、ノードが増えれば増えるほど、ストレージ全体の容量が増えるのはもちろんこと、パフォーマンスも一緒に向上していくことになる。

 もし、それ以上にパフォーマンスを高めたいという場合には、オプションのIsilon IQ Acceleratorを追加すればよい。Isilon IQ Acceleratorは、クラスタの構成に必要なコンピューティングリソースのみを搭載した1Uラックマウントの拡張ノードである。既存のIsilon IQクラスタにIsilon IQを追加することにより、ストレージ容量を増やすことなく、パフォーマンスだけを高めることが可能だ。Isilon IQ Acceleratorは、クラスタストレージのトータルパフォーマンスは高めたいが、ストレージ容量はこれ以上必要ないといったニーズに応えるソリューションとなる。


Isilon IQを支える分散ファイルシステム「OneFS」。各ノードのストレージリソースを単一のボリュームに見えるようにする役割を果たす。
ノード数にあわせてパフォーマンスを最適化するAuto Balance機能。すべてのノードにデータを均等に再配分することにより、ノード数に応じたパフォーマンスを発揮する。

ノードの障害からデータを守る強固なデータ保護技術

 クラスタストレージは、基本的に多数のストレージ筐体から構成される。このため、筐体内のHDDやストレージ筐体自身の障害に対して神経質にならざるをえない。Isilon IQは、こうした問題に対処するために、いくつかの強固なデータ保護機能を通じて安全性を高めている。例えば、ノード間をまたがる形でデータを保護するFlex Protect-APがある。これはノード間で組まれるRAIDライクなアプローチだ。従来型のストレージは筐体内のHDDに対してRAIDを構成するが、これは内蔵HDDの障害に対するデータ保護には効果を発揮するものの、ストレージ筐体自体の障害には無力である。

 そこで、Flex Protect-APは、フォルダやファイル単位でノードをまたがったN+1、N+2、二重~八重のミラーリングなどをサポートしている。N+1は、全体のうち1つのノードにECCを、残りのノードにデータを記録する方式だ。ECCとデータのローテーションはファイル単位で行われる。これにより、どれか1つのノードに障害が発生しても、残りのノードからデータを復元できる。ただし、N+1ではドライブ再構築中に異なるノードで障害が発生するとデータが失われてしまう。そこで、全体のうち2つのノードにECCを、残りのノードにデータを記録するN+2も用意されている。こうすることで、ドライブ再構築中に他のノードで障害が発生してもデータは失われない。そして、さらにデータ保護強度を高めるには、ファイルを何重にも複製保存できるミラーリングを使用すればよい。


フォルダやファイル単位でさまざまなデータ保護レベルを設定できるFlex Protect-AP。すべてのノード間にデータとECCを割り振るN+1やN+2に加え、データそのものを何重にも複製して保管するミラーリングをサポートしている。
ECCを二重にとるN+2を利用してデータ保護を行えば、同時に2台のノードに障害が発生してもデータが失われることはない。

Isilon IQは、Virtual Hot Spareを通じて残りのノードでデータの再構築を行うため、ノードの自動修復用にあらかじめホットスペアを用意する必要がない。
 Isilon IQは、Flex Protect-APに加え、プロアクティブなデータ保護も同時に行う。これを支えているのが、Soft Failと呼ばれる機能だ。Soft Failは、障害発生後だけでなく、障害発生前のHDD障害の予兆も事前に検知し、そのHDDに対するアクセスを回避する。HDDの障害または障害の予兆を検出したら、そのHDDに対する読み出しを最小限に抑え、他のHDDに含まれるデータや冗長情報からファイルを読み出すようにする。また、そのHDDを避ける形でファイルを書き込んでいく。こうすることで、近い将来に障害が発生しても、残りの正常なノードから復元すべきファイルを最小限に抑えられる。なお、障害が発生したノードはいったん切り離す必要があるが、その際にはVirtual Hot Spareによって正常なノードを新たに追加することなく残りのノードだけでデータの再構築を行える。


ノードの負荷状態に応じて接続先を割り振るSmart Connect

 Isilon IQのフロントエンドには、EthernetベースのLANを通じてクライアントPCやサーバー(以下、クライアントと呼ぶ)が接続される。Isilon IQは、基本的にすべてのノードに対してIPアドレスを割り当てられている。このため、クライアントは、どのノードを経由してデータにアクセスしてもかまわない。最も簡単なのは、適当なノードのIPアドレスを直接指定してアクセスすることだが、IPアドレスは視認性が悪く、管理しづらいのが欠点だ。

 このような場合、DNSを用いて単一のホスト名と複数のノードをラウンドロビン方式で対応させれば、クライアントからのアクセスは容易になる。ただし、ラウンドロビン方式は、DNSに対する問い合わせがあるたびに割り当てるIPアドレスを単調に変えるだけなので、ノードの負荷状態がまったく考慮されていない。もしクライアントに割り当てられたノードが高負荷の状態だった場合、アクセス性能が低下してしまう。


Isilon IQのDNSは、ノードの負荷状態に応じて最適なノードのIPアドレスをクライアントへと返す。これにより、クライアントからのアクセス負荷を各ノードで平均化できる。
 そこで、Isilon IQには自前でインテリジェントなDNSを持つSmart Connectが搭載されている。Smart Connectは、各ノードの負荷状態を常にチェックし、クライアントからDNSへの問い合わせがあったら、負荷の低いノードを優先的に割り当てる機能だ。これにより、クライアントは常に最適なノードへと接続される。接続するクライアントの台数が多い場合、1台のノードで多数のクライアントをまかなうケースが増え、ホットスポットが発生しやすい。Smart Connectがあれば各ノードの負荷を平均化できるため、このような問題が起こりづらくなる。

 Isilon IQは、最小の3ノード構成から1ノードずつ順次追加していき、最大で88ノードまで増設可能だ。ストレージ容量は、Isilon IQ 1920iで5.7~169TB、Isilon IQ 3000iで9~264TB、Isilon IQ 4800iで14.4~422TB、Isilon IQ 6000iで18~528TBとかなり選択肢が広い。Isilon IQ Acceleratorを併用すればパフォーマンスも簡単に高められる。これまで、ストレージ容量とパフォーマンスを両立するには、ひたすら高価なストレージに頼るしかなかったが、Isilon IQはこうした従来型ストレージの常識に対して一石を投じる製品となりそうだ。



URL
  アイシロン・システムズ株式会社
  http://www.isilon.jp/
  東京エレクトロン株式会社
  http://www.tel.co.jp/cn/


( 伊勢 雅英 )
2006/05/15 00:00

Enterprise Watch ホームページ
Copyright (c) 2006 Impress Watch Corporation, an Impress Group company. All rights reserved.