SpringSourceは月曜、オープンソースのシステムモニタリング製品ベンダであるHypericを買収したことを発表した。取得額は明かされていない。Hypericは、これも最近SpringSourceが買収したCovalentの1プロジェクトとして始まり、後に分社化した。同社の中心的な製品であるHyperic HQは、ハードウェア、OS、VM、データベースとアプリケーションサーバのアベイラビリテイをモニタリングするもので、Web基盤を対象としている。この製品には、GPLバージョン2ライセンスで提供されるリミテッドエディションと、商用ライセンスで提供される、より総合的な製品という、2つのライセンスがある。この製品を構成しているのは、Struts 1.xとTilesによって開発されたWebポートレットのフロントと、HQがモニタリングする各マシン上で動作する一連のエージェントである。JBossアプリケーションサーバ上で動作する分散J2EEサーバアプリケーションは、エージェントからインベントリ情報とメトリック情報とを受信し、データベースに保存する。サポートされているデータベースはMySQL、OracleとPostgreSQLであるが、PostgreSQLについては若干の注意事項がある。
エージェントはマシン上にデプロイされると、マシン関するタイプ、ベンダ、バージョンやロケーションといった基本的な情報を自動的に収集する。このプロセスはオート・ディスカバリと呼ばれる。加えて、HQはタイプに特有な情報、例えばRAM、CPUスピード、IPアドレスやドメイン名などを決定する。
Hypericの製品は3種類のモニタリング・メトリックをサポートしている。
- アベイラビリティ・メトリック。つまりリソースが落ちていないかどうか。
- スループットメトリック。一定期間中のスループットを追跡する。Webアプリケーションのスループットは通常、送受信するデータのバイト数とリクエスト、レスポンスの数によって計測されるものであり、データベースの場合は一般的に、リクエストの数とアクティブなコネクションの数に基づくものである。
- 使用状況を示す図。生成、破棄されたセッションの数、ロード、リロードされたサーブレットの数、フリーなJVMメモリ、EJBの生成と除去、ロードとストアなど。これらの図は、ディスク、メモリ、CPUとネットワークの使用率を分析に用いることで、アプリケーションのボトルネックがどこにあるのかを発見するのに役立つ。
Hyperic HQはこれらのメトリックに基づいた警告機能をサポートしており、ユーザは警告が発生した時にHQが実行する処理を設定することができる。例えば電子メールの送信や、SNMPトラップの設定、サーバ再起動や他の管理システムへの通知といったことができるのだ。同様に、ユーザは発生した警告に対する一連のレスポンスのエスカレーションを定義することもできる。
Hypericの前CEOであり、現在、SpringSourceのマネジメント製品のCTOとなったJavier Soltero氏はInfoQに対して、Hyperic HQは約5000インストールが利用されており、1分当たり200万件のメトリックを収集することができると語った。
HQの他に、Hypericの製品はあと2つある。Hyperic IQはHyperic HQ Enterpriseのレポート用プラットフォームであり、JasperSoftのJasperServer Pro上に作られている。また、CloudStatusはAmazonのEC2やGoogleのApp Engineのようなクラウドサービスをモニタリングするベータ版の製品である。Soltero氏はCloudStatusのことを、SpringSourceとの取引を推進する主要な戦略的材料だったと語る。というのも、クラウド内の管理に関する諸問題に対して、いまだ貧弱にしか理解されていない以上、これは会社が成長するためのチャンスを象徴していると見ているからだ。この一部は、データセンターにおいては本質的であるモニタリングの極めて多くの要素、例えば、OSやネットワークのモニタリングが、クラウドの文脈には当てはまらないことに起因している。Soltero氏はさらに、Hyperic HQが持つ実行処理を制御する機能を用いることで、クラウド上のアプリケーションを管理するオペレータが、Webアプリケーションが提供するサービスのレスポンスが急増するのに対応して、迅速にTomcatのノードやデータベースのスレイブをオンラインで追加する方法についても説明した。
SpringSourceのビジネスの中心はSpringSource Enterpriseの販売である。これは、Hyperic製品を使用したシステムモニタリングを備えた、ApacheライセンスのSpringフレームワークのバージョンの1つだ。しかし、最近になって同社は、主として買収により、新しい分野へとビジネスを拡大している。2008年にはGroovyプログラミング言語およびGrails Webフレームワークを推進してきたG2Oneと、ApacheのTomcatアプリケーションサーバのサポートを提供していたCovalentを買収した。他にもSpringSourceは、パッケージ化されたサーバ製品を3つ提供している。これらはApacheのTomcatとHTTPサーバ上に構築され、モニタリング機能のためにHyperic HQを利用している。
Hypericの知的財産を得たことによって、SpringSourceは2つの製品の統合をさらに進めることができるが、Soltero氏によれば、Hypericチームは独立した会社であった時と同じマネジメントの方針に従うという。モニタリングシステムをSpringSourceのテクノロジーだけに限定してしまっては、エンタープライズアプリケーションがしばしば、いくつかの技術が混在するテクノロジー・スタックの上に構築される以上、競争力を失ってしまうと氏は主張する。実際、Hypericはそれ自体がJava製品である一方で、Windows OS、IIS、Exchange、Active Directory、MSMQ、.NETランタイムといったMicrosoftのテクノロジーをモニタリングすることができるのも、この理由によるものだ。
Soltero氏と、SpringSourceのCEOであるRod Johnson氏は2人とも、今回の合併をより広い戦略的観点から見ている。ブログに書かれている通り(Hyperic、SpringSource)、開発者と運用との間にあるコミュニケーションの障壁が、企業がスケーラビリティのあるWebアプリケーションを構築する際の重大な問題を生み出してしまうとしており、両社が合併することで、組織内の運用と開発チームとの溝を埋める手助けができるという。Soltero氏は我々のインタビューにおいて、このテーマについてさらに詳しく語り、SpringSourceがJavaコミュニティーで享受している開発者たちの共通認識によって、Hypericは、アプリケーションの管理容易性を開発プロセスにおける重要なポイントとして位置づけるのに必要な推進力を得ることができると論じた。開発者はアプリケーションを作る際、JMXを利用して発生した問題に関する文脈情報を提供することができる。しかし、Hypericを利用してこの情報を得られるようにすることで、開発と運用は問題の診断をする上での共通の文脈を与えられる。単純化するなら、氏によれば、「アプリケーションが管理しやすくなればなるほど、開発はより成功に近づく」のだ。
Johnson氏はこれに同意し、クラウド環境へのデプロイが増加していることで、これは一層差し迫った問題になっていると示唆している。
「クラウドが台頭してきていることで、開発と運用の概念的な溝を埋めることが一層重要になっています。私たちのミドルウェアはJavaクラウドテクノロジーの基盤として完全に整合していると信じています。そして、SpringSourceとHypericの組み合わせによって、私たちは開発と運用の間の溝を独自のやり方で埋めることができるのです。
Hypericは、リリースされている製品としても、開発パイプラインとしても、優れたテクノロジーを持って、昨今のクラウド開発の必要性に取り組んでいます。以前のマネジメント製品と異なって、Hyperic HQはクラウドと仮想化された開発に良く適合しており、物理的なマシンに依存したマネジメントモデルに制限されていません。Hypericのマネジメント製品は同時に、極めて拡張性に優れ、クラウド開発で求められる類のカスタマイズも行うことができます。」
Rod Johnson氏とJavier Soltero氏は、さらなる技術的な詳細について、5月20日に開催されるウェビナーイベントで提供する予定である。