仮想化道場
“Software Defined Server”Moonshotは、サーバーの未来を変えるか?
(2013/5/2 06:00)
米Hewlett-Packard(以下、HP)は、2年ほど前から開発を進めていた省電力型サーバープラットフォームのMoonshot(製品名:HP Moonshot System)を、4月に発表した。当初、Moonshotは、ARMプロセッサを使った省電力型サーバーとして紹介されてきたが、最初に発表された製品は、サーバー向けのAtomプロセッサを搭載したサーバーになった。
今回は、このMoonshotの詳細に関して解説していく。
4.3Uサイズに45台のサーバーを搭載するMoonshot
今回発表されたMoonshotは、4.3Uサイズのシャーシに、45枚のAtomプロセッサ搭載サーバーモジュールを収納できる超高密度型のサーバーだ。このシャーシをベースに考えれば、42Uラックには最大9シャーシ搭載できるため、1ラックに最大405台のサーバーを収納した超高密度サーバーが実現する。
1枚のサーバーモジュールは、ブレードサーバーよりも小さなカートリッジとなっており、大きさは文庫本よりも一回りほど大きいくらいだ(厚さも一般的な文庫本ほど)。これに、サーバー向けのAtomであるAtom S1260(2.0GHz)、DDR3-1333MHzのSO-DIMM 8GB、2本のGigabit Ethernet(GbE)、1TB/500GBのSATA HDDもしくは200GBのSATA SSDが搭載できる。
消費電力は1枚あたり最大19Wほど。これなら、45枚のサーバーが入ってもトータルで855W、ネットワークスイッチなどの周辺モジュールを合わせても1200W電源(冗長構成)で動作する。
またサーバーモジュールだけでなく、45本のGbEをサポートするスイッチモジュールが2台搭載できる。さらに、外部ネットワークとの接続用、背面に6×10GbE(SFP+)のアップリンクモジュールが2台搭載されている。内部のスイッチモジュールのネットワークが直接外部に出力するのではなく、アップリンクモジュールを経由し、10GbEに集約して外部ネットワークに接続される形だ。
管理機能としては、Moonshotサーバーを管理するマネジメントユニット(HP Moonshot 1500 Chassis Management Module)が用意されている。Moonshotのサーバーモジュールやスイッチモジュールなどは、iLO(integrated Lights-Out)のクライアント機能が搭載されており、このマネジメントユニットから統括してコントロールすることができる。サーバーモジュールすべてにiLOが入っていて、管理者は個々のサーバーモジュールにアクセスして管理することはない。マネジメントモジュールから一括して、管理できるようになっている。
シャーシのファブリックと進化するモジュールが“キモ”
第1弾のMoonshotにおいては、サーバーにAtom S1260が採用されており、1台1台の性能はそれほど高くない。このため、最初の製品は、大規模なWebサービスのフロントサーバー、ソーシャルゲームのフロントサーバーなどに利用されることになるだろう。1台のサーバーに最大8GBのメモリを搭載できるので、データベースのMemcachedの動作プラットフォームとしても利用できるかもしれない(もう少しメモリ容量がほしいだろうが)。
ただHPでは、Moonshotをこれだけで終わらせるつもりはない。Moonshotにおいて、「Software Defined Server」というコンセプトを打ち出し、今後さまざまなサーバーモジュール、スイッチモジュールを発売していく予定だ。
逆にいえば、Moonshotのシャーシのファブリックは、今後5年以上のテクノロジーの進歩を見通して、さまざまなテクノロジーをサポートできるようになっている。
例えば今回のMoonshotでは、GbEのネットワークスイッチモジュールが搭載されているが、シャーシ内部のファブリックとしては10GbEにも対応している。このため、10GbE対応のサーバーモジュールとネットワークスイッチモジュールが発売されれば、Moonshotの内部ネットワークは10GbEで構成できる。
また、今回発表されたAtom S1260のサーバーモジュールには、1枚1枚にストレージが搭載されている。しかしMoonshotのシャーシには、ストレージ専用のファブリックも用意されているため、サーバーモジュールにはプロセッサやメモリだけを搭載し、別にストレージモジュールを用意して接続する、といったことも可能だ。
このほか、HPCなどで必要とされる、サーバーモジュール間をポイント・ツー・ポイントで接続するクラスタファブリックにも対応している。将来的に、クラスタファブリックを利用可能なサーバーモジュールがリリースされれば、現状のシャーシですぐに利用できる。このような柔軟性が、Moonshotにはあらかじめ用意されている。
サーバーモジュールの種類も増やす
最初のサーバーモジュールは、Atom S1260を1基だけ搭載した製品しかリリースされていないが、すでに、ストレージを省き1つのサーバーモジュールに4つのサーバーを詰め込んだ超高密度型(クアッドサーバーモジュール)や、1プロセッサだがメモリを大容量搭載したサーバー、DSPを搭載したSoCベースのサーバー、強力なグラフィック機能を搭載したサーバーなどが計画されている。
クアッドサーバーモジュールにはストレージがないので、仮に、4.3Uシャーシにサーバーモジュールが30台、ストレージモジュールが15台(サーバーモジュール2台にストレージモジュール1台が割り当てられる)でシステムを構成すると、4.3Uシャーシに120サーバーを搭載できる計算となる。Atom S1260(2コア/4スレッド)を使って構成されたとすれば、、240コア/480コアのサーバー群が誕生するわけだ。
さらにIntelでは、次世代のサーバー向けAtomプロセッサであるAvaton(開発コード名)の開発を進めている。Avatonでは、プロセッサアーキテクチャを全面改良したSilvermontコアが採用され、製造プロセスも22nm(Atom S1260は32nm)に移行するため、より低消費電力なプロセッサになる。コア/スレッド数は最大8コア/16スレッドになると予想されている。
この、今年後半にリリースされるAvatonをベースにクアッドサーバーモジュールが開発されれば、1シャーシで960コア/1920スレッドを実現するサーバー群が誕生するわけだ。なによりも、これだけのプロセッサを搭載しながらも、1200Wで動作することを考えれば信じられないことである。
ARMプロセッサやAMD APU搭載のサーバーモジュールも登場へ
HPではAtom以外に、研究プロジェクトとして開始したMoonshot Projectで採用していたARMプロセッサ(CALXEDA)を採用したサーバーモジュールもリリースする予定だ。
ARMプロセッサに関しては、研究プロジェクトでは32ビットプロセッサだったが、昨年ARMが64ビットプロセッサを発表したため、ARMの64ビットコア Cortex A57/A53ベースもしくは、ARMの64ビットアーキテクチャARMv8ベースに各社が拡張したプロセッサが利用されるだろうと予想している。
注目したいのは、NVIDIAとの連携が行われるかどうかだろう。NVIDIAではモバイル向けにTegraシリーズをリリースしているが、2015年には、NVIDIAの64ビットARMプロセッサ(Denver)と次世代GPU(Maxwell)を搭載したTegra(開発コード名 Parker)の開発を予定している。もし、このプロセッサがMoonshotに搭載されれば、膨大なCPUコアとGPUコアを搭載したGPGPUコンピュータができあがる。
また、HPではAMDが2013年にリリースするモバイル向きのAPUを使ったサーバーモジュールも検討している。このAPUに関しては、詳細は不明だが、ソニーのPS4で採用されたAMDの省電力CPUコアのJaguarとGraphics Core NextというGPUを搭載したものと予想される。APU自体は9Wほどの消費電力となるため、周辺チップを合わせても20W以内に収まるだろう。
HPでは、1サーバーモジュールあたりは20Wほどの消費電力を考えている。しかし、もう少し高い消費電力のプロセッサを使いたいというニーズに対応するために、2枚分のカードモジュールを使うサーバーモジュールも検討しているようだ。1サーバーモジュールあたり40Wにまでなれば、ノートパソコン向けに開発されるIntelの次世代プロセッサのHaswell(開発コード名)のSoCなどをMoonshotのプロセッサとして利用することも可能だろう。
Moonshotはどのようなニーズにマッチするのか?
第1世代のMoonshotは、Atom S1260を使用しているため、幅広いニーズを満足させるサーバーとはいえない。このことは、HP自体も分かっているようで、第1世代はWebサーバーのフロントサーバーなど、ソーシャルゲームや大規模なWebサービスを提供している企業に向けたものとなるとしている。
しかし、Moonshotをこのような用途だけで終わらせることは考えていない。次世代のAtomプロセッサ、ほかのプロセッサ、GPGPU、DSPなどさまざまなモジュールを提供していくことで、企業が抱えるさまざまなニーズにマッチさせたサーバーにしていきたいと考えている。
例えば、サーバーモジュールにある程度のストレージを接続することで、各サーバーモジュールをHadoopのノードとして構成すれば、コンパクトなHadoopシステムを構築することも可能になる。また、GPGPUをサポートしたサーバーモジュールがリリースされれば、HPCを使った高速なシミュレーションサーバーとしても利用できる。このように、Moonshotは、サーバーモジュールを変更することで、企業のさまざまなニーズに合わせたサーバーが構築できる。
問題としては、企業側のニーズに合わせて、サーバーモジュールがリリースできるかどうかだ。企業のニーズは、多岐にわたるため、ある特定の企業ニーズに合わせたモジュールを開発していくと、モジュールがスペシャルなモノになり、コストがかかる。やはり、ニーズを一般化して、モジュールを大量に製造することで、コストを下げていく必要があるだろう。
HPでは、Moonshotを導入する企業、各パートナーと協力して、モジュールの開発をしていきたいと考えている。ただ、こういったことで、多種類のモジュールが開発されていくのかは疑問がある。やはり、ある程度用途を見極めて、モジュールを開発していく必要があるだろう。
もう一つあるのは、Moonshotは、「Software Defined Server」を実現しようと考えている。このためには、ネットワークモジュールがSoftware Defined Network(SDN)をサポートする必要があるだろう。また、ストレージに関しても、Software Defined Storageが必要になるだろう。
Software化されたServer、Network、Storageを効率よく管理できる管理ツールが必要になるだろう。こういったシステムとしてのSoftware化を全体としてサポートできるのは、ハードウェアからソフトウェア、ネットワークなどITに関するすべての領域をカバーしているHPならではだろう。