ハイパースケールコンピューティングがハイエンドストレージを駆逐する?:管理ツール不在が課題
FacebookやGoogleが先駆けとなったハイパースケールコンピューティングと超大規模ストレージは、安価なコモディティコンポーネントで構成され、デバイスレベルでの冗長性を備えている。
エンタープライズ向けストレージといえば、ハイエンドのディスクドライブがぎっしりと収容された、デュアルコントローラー搭載の高価なアレイのことだった。エンタープライズITシステムに対するこの従来のアプローチでは、ストレージやサーバは冗長なコンポーネント(電源、ファン、ドライブなど)を備えたシステムであると見なされていた。
Computer Weekly日本語版 2013年7月24日号無料ダウンロード
本記事は、プレミアムコンテンツ「Computer Weekly日本語版 2013年7月24日号」(PDF)掲載記事の抄訳版です。本記事の全文は、同プレミアムコンテンツで読むことができます。
なお、同コンテンツのEPUB版およびKindle(MOBI)版も提供しています。
しかし、エンタープライズ規模のストレージおよびサーバインフラに新たな選択肢が登場してきている。この潮流の源泉が、Webの先駆企業と、そこで採用されている“ハイパースケールコンピューティング”環境だ。
企業が物理インフラを拡張する場合、スケールアップとスケールアウトの2通りの方法がある。スケールアップは、プロセッサやインタフェースカード、メモリの増設など、サーバやストレージデバイス内のリソースを増強する方法で、これは従来のエンタープライズモデルだ。
スケールアップで拡張する場合、個々のデバイス内で冗長性を持たせた結果として、コストがかさむことが問題になる。そこで代わりになる方法がスケールアウトで、分散コンピューティング環境にサーバとストレージを追加する。ハイパースケールストレージ/コンピューティングは、膨大な処理と膨大なデータを扱うITシステムの“スケールアウト”設計を表す造語だ。この設計では、個々のデバイス内でコンポーネントを冗長化するのではなく、ストレージも含めてサーバ自体を冗長化する。
ストレージにたとえて考えてみよう。ストレージアレイは通常、複数のディスクドライブで構成され、多数のドライブのストレージ領域がRAIDを使って集約、保護される。元来RAIDは“redundant array of inexpensive disks”(高価でないディスクの冗長アレイ)の略だ。信頼性は高いが(と言っても、障害が全く発生しないというわけではない)高価なドライブではなく、信頼性は低いが比較的安価なディスクを使うので費用対効果が高くなることから、そう呼ばれた。
RAIDなら自動的に障害を処理でき、障害が発生したエンタープライズドライブのデータ回復に時間を費やさずに済む。サービスが停止することはなく、都合の良いときに障害が発生したドライブを交換できる。
これで、ストレージアレイ内の障害が発生したRAIDドライブを交換するという考えに抵抗はなくなった。障害が発生したディスクは、コモディティコンポーネントと同様に扱われ、交換、廃棄される。
データベースおよびアプリケーション設計の新しい方法
ハイパースケールコンピューティングでは、サーバとそのDAS(Direct Attached Storage)が基本のユニットになり、数千台の物理デバイスから成るネットワークまたはグリッドの構成要素になる。通常、サーバには冗長コンポーネントは実装されず、障害が発生した場合は、ワークロードが別のサーバにフェイルオーバーされる。障害が発生したサーバはフェイルオーバー後に取り除き、交換または修理する。
ハイパースケールコンピューティング環境では、数Pバイトのストレージや数万台のサーバに対応できる。これまでのところ、この環境は主に、FacebookやGoogleなど、大規模なクラウドベースの企業で採用されている。コモディティコンポーネントを使うことで、できるだけコストを抑えながら、この環境に求められる段違いの規模を実現している。
そのような新興のWeb企業では、データベースおよびアプリケーション設計に新しいアプローチを採用しているため、ハイパースケールコンピューティング設計との相性が良い。ハイパースケールコンピューティング環境は通常、少数の非常に大きなアプリケーションで構成される。一方、典型的なエンタープライズIT環境には、特定機能に特化したアプリケーションが多数含まれる。
ハイパースケールコンピューティング環境でのストレージおよびデータサービスを提供する、新しいオープンソースプラットフォームが登場している。分散ストレージプラットフォームのCephや、分散データベースプラットフォームのCassandraおよびRiak、Apache Software Foundationが開発・管理しているデータベースおよびデータ分析プラットフォームのHadoopなどだ。
こういったツールの登場で、運用の在り方が変わってくる。データは冗長性を確保して複数のサーバ間で分散されるため、どれか1つのサーバで障害が発生しても安全だ。サーバが停止しても、サービスには影響がない。また、複数のサーバを使うことで、処理も分散される。大きなワークロードが発生した場合に、スケールアウトによるパフォーマンスを享受できる。
ハイパースケールコンピューティングプラットフォームの開発を標準化しようと、Facebookは2010年にOpen Compute Project(OCP)を提唱した。目的は、ハイパースケールコンピューティング環境にデプロイできる標準のリファレンスハードウェアアーキテクチャを開発することで、コンピューティング(サーバ)、ストレージネットワーキング、データセンター設計をカバーする。
OCPでは、大手ハードウェアベンダーが、ハイパースケール環境向けの製品の開発を始めるという興味深い動きが生まれている。以下はその一例だ。
続きはComputer Weekly日本語版 2013年7月24日号にて
本記事は抄訳版です。全文は、以下でダウンロード(無料)できます。
Copyright © ITmedia, Inc. All Rights Reserved.