「大企業向け」で利益を生み出せ。開発者に聞く:カシオや楽天でも採用されたオープンソースのシステム管理ツール「Pandora FMS」編
Pandra FMSはオープンソースのシステム管理ツールだ。オープンソース版と、より大規模なシステム向けの商用版が並行開発されており、日本でも楽天やカシオといった企業で採用されている。今回はこのPandra FMSの開発者であり、Pandra FMSの商用サービスを提供しているスペインArtica STのCTOでもあるSancho Lerena氏に、その歴史やオープンソースとビジネスとの関わりについて話を聞いた。
SourceForge.netで公開されているPodcast「The Anvil Podcast」では、さまざまなオープンソースプロジェクトの開発者にインタビューを行っている。今回はPandora Flexible Monitoring System(Pandra FMS)の開発者であるSancho Lerena氏へのインタビューをお送りする。
――今回のインタビューの相手は、Sancho Lerena氏。Pandora FMSのオープンソースプロジェクトや、Pandora FMSの開発をリードする企業であるArtica STについて話を聞くつもりだ。まず、プロジェクトが立ち上げられた経緯を聞かせてほしい。
Sancho: 立ち上げは8年ほど前だ。当時私はセキュリティコンサルタントとして銀行に勤めていて、時間的な余裕があった。仕事ではBSDやSolaris、AIXといったシステムを使ってファイアウォールシステムの設定などを行っていた。そのシステム内で何か通常と変わったことはないか、変なことが起きてないかを監視しなくてはならない。最初はTivoliやHPの提供する有名かつ一般的なツールを使っていたんだが、システムから情報を抜き出すのに苦労した。そこで、データを収集するためスクリプトをいくつか書き始め、それが毎日の仕事になっていたんだ。1、2年経った頃、それは単なるスクリプト以上のものになっていた。その後、それはUNIXサーバやWindowsサーバなど、さまざまな種類のサーバーを監視するのに有用なプロダクトとなり、それでネットワーク機器を監視するようになった。そして、それを仕事にできるんじゃないかと思って会社を立ち上げることにしたんだ。
――オープンソース版は、会社の事業にどう絡んでるの? また、エンタープライズ版ではどんな機能が追加されているんだい?
Sancho: プロジェクトで最も難しいのが、オープンソースプロジェクトでいかに利益を生み出すかってことなんだ。たしか2007年から2008年だったと思うんだが、Pandora FMSはそれまで100%フリーで提供されていたんだ。オープンソースとしてもフリーだし、料金も無料。その当時の経験から、その状態でお金を稼ぐことは非常に困難であることが分かった。ライセンス云々が理由なのではなく、すべてがオープンだと大企業に信用してもらえないんだ。全部の大企業がそうだとは言わないが、なかなかプロフェッショナルだと思ってもらえず、信用を得るのが難しい。そこで私達は戦略として、大企業にとってのみ便利な機能を選定することにした。つまり、エンタープライズ版の機能は大企業専用に絞ったものなんだ。
小さな企業で20台くらいのサーバーを監視するのと、2000台のサーバを監視するのは同じことではない。まったく違うことなんだ。オープンソース版のPandora FMSでも、80~90%の機能が利用できるようになっているはずだ。誰でもダウンロードしてインストールすれば利用できる。オープンソース版を利用しているサーバは何千とある。だがTelefonicaや楽天、カシオのような企業は、たくさんあるシステムを一貫性をもって監視するための特定の機能を必要とする。おそらく、ほかにも同様のアプローチを用いたアプリケーションがたくさんあるだろう。
――「Pandora」というプロジェクト名は何に由来しているの? ギリシャ神話関連? それとも、ほかになにか意味があるのかい?
Sancho: その通りさ。誰だって、見えてない所で何か不具合が起きたなら自分に知らせてくれるものが必要なんだ。Pandora FMSの最初のロゴは箱の中にタコが入っていた。その後、「FMS」の文字を付け足した。「Pandora」では一般的すぎるし、Google検索でなかなか引っ掛かってくれない。当初は「Free Monitoring System」の頭文字を取っていたのだが、「Free」は悪いマーケティング用語だって誰かに言われて「Flexible Monitoring System」に改名したんだ。
――Nagiosなどの競合ソフトウェアと比べて、Pandora FMSは何が違う?
Sancho: 私達のプロジェクトの方が優れている、と思っている。もちろん、実際のところNagiosコミュニティは大きい。だから、「あなたの会社ではどの監視ツールを使ってるの?」とか、「これまでどんな監視ツールを使ってきたの?」って聞かれたら、誰だってNagiosじゃないかって考えるだろう。Nagiosは一番最初の、コミュニティにとって最も重要なプロジェクトだったしね。
私が思っているのは、Nagiosは私達とは違う方向に進化しているということだ。たとえばユーザーインターフェイスも違うし、Pandora FMSはコンソールからだけで完全に操作でき、スクリーンを使ったり、シェルからプロセスを立ち上げる必要は無い。こういうのがとても重要だと考えている。それからレポートも。これが、Pandora FMSとほかのソリューションとの違いで一番重要なところだ。モニタリングは複雑極まりない。マーケットには、モニタリングのためのアプリケーションは100以上もあるんだが、それぞれが大きく異なっている。Pandoraは水平的アプローチであると私達は思っている。つまり、Pandoraは大概の環境で使えるってことなんだ。ネットワーキング、サーバー、パフォーマンス、ビジネスアプリケーション、レポート、それにデータマイニングでも。もちろん、すべてを統合することもできる。ほかのアプリケーションはパフォーマンスや、可用性、それからマネジメントといったことにもっと焦点を置いている。Pandoraはこうした機能を全部ひとつにまとめる。
――コードの開発に、コミュニティはどれくらい参加しているのかい?コードの開発は、主にあなたの会社がやってるの?それとも、外部コミュニティーからの参加もあるの?
Sancho:私達がオープンソース版を始めた最初の頃は、プロジェクトに関わる開発者が何人かいた。米国から数人、ヨーロッパから一人、それからニュージーランドからも一人。だが、彼らが開発してくれたものはどれも小さな機能ばかりで、長期的コミットメントではなかった。どちらかというと、「機能的には問題はないと思うから、アレをやるのを手伝おうか」といった感じで、提案を貰ったり、バグをレポートしてもらっていた。後にエンタープライズレベルに成長した頃、大企業が必要とする機能に力を入れていこうとしたら、それまでのコントリビューションを失ってしまった。だがその代わりに、Pandoraが自分達の要望にも対応するよう開発を手伝いたいとする企業から連絡を受けるようになったんだ。この時点で、我々のパートナーの1つでもある日本企業と、開発だけでなくビジネス関係においても 、完全な協力関係を築くこととなった。彼らの開発チームには6人のメンバーがいるのだが、全員が開発レポジトリへのアクセス権を持っている。それから、エクアドルにもパートナー企業があって、我々の開発をいくつかか手伝ってくれている。そして、提案してくれたり、アイディアをくれたり、バグも報告してくれる人を大勢増やした。私達のトラッキングサーバはとても混雑している。非常にアクティブなんだ。
――プロジェクトの今後について聞かせて。今年はどんな新しいことをやろうとしているの?
Sancho:現在、2つの異なるバージョンに取り組んでいる。間もなくリリースすることになると思うが、安定バージョンって呼んでいる。こういった類の開発ではよくある感じで、新しい機能はちょっとだけしか追加されないが、バグ修正はたくさん行われる。同時に次のマイナーバージョンであるバージョン5.2にも取り組んでいて、現在、大きな改善をたくさん行っているところなんだ。無料で提供するオープンソース版Pandora FMSにはNetFlow機能を追加している。それから、Pandoraで複数の異なるサイトを管理するための新たなレイヤーを追加している。私達はこれをメタコンソールと呼んでいる。我々のメタコンソールがあれば、サービスプロバイダはほかの企業にモニタリングサービスを提供することができ、1つのコンソールで、例えば10,000個のサーバを管理することだって可能なんだ。
私がPandoraを始めた頃から明確にしていたことの一つが、このプロダクトをSourceForgeで公開しなければならないってことだった。私にとってSourceForgeは、オープンソースプロジェクトついての知識の源だったからさ。SourForgeは、プロジェクトを設置するべきサイトだ。最初はプロダクト名でつまづいたよ。プロダクト名が先に取られていたから、Pandoraの名前が使えるまで2年待たなければならなかった。SourceForgeがそれだけインターネットで重要だってことさ。オープンソースプロダクトなら、SourceForgeに設置しなきゃだめなんだよ。
――Sancho、私のインタビューに答えてくれてありがとう。
Sacho: こちらこそ、ありがとう。