ファーストサーバが戦略提携
Node.jsのPaaSが国内開始へ、米Joyentが国内業者と提携
2011/10/26
ファーストサーバは10月25日、米Joyentと戦略提携したことを発表した。同日提携第1弾としてIaaSの「Z Cloud」(ゼットクラウド)の提供を国内で開始した。最も安価な1時間8.1円のインスタンス「Small1」はメモリ1GB、ディスク30GBなどとなっている。
提携第2弾として、Node.jsをベースにファーストサーバが開発するPaaS、「Node Ninja」を提供する。Node Ninjaは、29日に東京で開催される「東京Node学園祭2011」でベータ版のアカウントを配布予定で、一般向けベータサービスは2012年1月を予定している。
ファーストサーバは2014年末までに売り上げ25億円を目指す。
Solaris由来のSmartOSで高いI/O性能
Joyentは2004年創業のベンチャーで、IaaS/PaaSのクラウドサービスを開発・運用している。共同創業者の1人で現CTOのジェイソン・ホフマン氏はモルガン・スタンレーのレポートを引用しつつ、「アマゾンに次いで2番目に大きなパブリッククラウド。IaaSとPaaSの両方を提供しているのは、われわれJoyentと、グーグル、マイクロソフトの3社だけだ」と説明する。
Joyentが提供するサービスの特徴の1つは、OpenSolarisから派生した「Illumos」を、さらに独自にフォークした「SmartOS」を開発し、これをベースに独自のスタックを使ったクラウドインフラを運用していることだろう。
Joyentが提供している「JoyentCloud」や、今回ファーストサーバが国内で提供するZ-Cloudでは、直接SmartOSを使うか(実際には SmartOSという単一OSが稼働する物理マシン上で、Solaris由来のZonesと呼ぶコンテナを使った仮想マシンとして切り出されたSmartMachine)、SmartOS上に移植されたKVM上でCentOSやWindowsサーバを使うかが選べる。Joyentは2011年8月にはKVMを移植したことと、SmartOSをオープンソースとして公開することを発表している。
今回、ファーストサーバが国内で開始するZ-Cloudは、SmartOSをベースとしたJoyentのクラウドインフラ管理製品「SmartDataCenter 6.5」を採用しており、REST APIや管理画面も用意されているという。SmartDataCenterは、日本ではファーストサーバが採用第一号となるが、すでに台湾、中国、ヨーロッパ、カナダなどの開発会社、ISPなどで採用実績がある。また、ファーストサーバは独自に外部監視ツールとして「Giraffi」(ジラフィー)を提供するほか、2012年春には仮想マシンを増やすスケールアウトによる「Zオートスケール機能」も実装予定という。
ホフマン氏によれば、SmartOSはOpenSolarisのカーネルをフォークしたOSだが、ユーザーランドはGNUのツールチェーンが使えるので、PHPやJava、Ruby on Railsなどで開発が行えるという。パッケージシステムはSolaris由来のものではなく、FreeBSDのportsを使う。先進的なファイルシステムの「ZFS」や、動的プロファイリングツール「DTrace」も利用できる。「カーネルはOpenSolaris由来だが、もう5年以上もSmartOSの開発は継続している。マルチテナントのクラウド環境で優れた性能を発揮するスケジューラを採用している」(ホフマン氏)。Solaris由来のZonesというライトウェイトな仮想環境により、ディスクやネットワークのI/Oのスループットを犠牲にすることなく、複数の仮想サーバの運用ができるという。例えば、JoyentがPazugoに依頼して作成した一連のベンチマーク資料によれば、SmartOSのディスクI/O性能は、インスタンスの種類によってはAmazon EC2の数倍から10倍程度の差が付くという(Joyent自身は14倍という数字を出している)。これはOpenSolarisのZFSの性能によるところが大きく、Joyentの資料によれば、SmartOSのKVM上のLinux環境であっても、Amazon EC2で稼働するCent OSに比べてディスク性能は2倍程度の差が付くとしている。
I/O性能での差を強調するJoyentだが、コスト構造の違いでも、ほかのクラウドサービスと差別化できる可能性がありそうだ。なぜなら、一般的なクラウドサービスがホストOS上にゲストOSを走らせる仮想化をする一方、SmartMachinesでは仮想マシンがゲストOS分のメモリを消費しないからだ。
IaaSとして見た場合、どの程度の開発者やインフラエンジニアがSmartOSを選び、どの程度がKVM上でのLinuxを選ぶかは未知数だ。実測性能いかんによってはSmartOSがコストパフォーマンスの高い選択肢となるのかもしれない。一方、エンタープライズユーザーであればSmartOSのDTraceやZonesは、トラブルシューティングやセキュリティ確保の点で代えがたいメリットとなるだろう。
Amazon Web Servicesと比較した場合、分散ストレージやメッセージキューサービス、RDBMSのホスティングなど、クラウド向けミドルウェアサービスがJoyentのソリューションには欠けている。この点についてホフマン氏は、サードパーティーとの提携や連携強化による充実を図るとしていて、その一例として、2010年8月に米Bashoとの提携を挙げる。BashoはErlangとCで書かれた分散ストレージの「Riak」を開発しており、この提携によりJoyentのクラウドプラットフォームでRiakが統合された形で使えるようになっているという。RiakはAmazon S3のベース技術となったAmazon Dynamoにインスパイアされたプロジェクトで、Dynamo同様に分散ハッシュテーブルの実装だ。RiakにはMapReduceのAPIも用意されているという。
WebSocket対応、GitHubから直接デプロイも
ファーストサーバはJoyentとの提携の第2弾として、Node.js PaaS「Node Ninja」をリリース予定という。Joyentは「Node.js Cloud Service」を提供しているが、Node Ninjaは、ファーストサーバが独自に開発する。
GitHubのレポジトリから直接デプロイする機能の提供や、標準でのWebSocket対応を予定しているという。また、NoSQLやMOM(メッセージ指向ミドルウェア)の採用も予定しているという。Node NinjaはZ-Cloud(SmartOS)上で稼働していることから、リアルタイムに膨大なコネクションをさばく必要のあるスマートフォン・ソーシャル向けアプリケーションなどで高い性能を発揮するという。
SmartOSの開発はどうなっているのか?
ところで、SmartOSは独自OSだということだけを聞くと、その開発コミュニティの継続性が気になるところだろう。ここで少し脇にそれるが、オラクルによるサン・マイクロシステムズ買収前後のOpenSolaris事情を付け加えておこう。
OpenSolaris周辺には、特に2010年半ば以降に新しいエコシステムができつつあるようだ。理由の1つはOpenSolarisが元々オープンソースプロジェクトとして成功していると言えなかったことに加え、オラクルがOracle Solaris 11に向けて外部に対してSolaris開発を閉ざしていき、オープンソースコミュニティでは「OpenSolarisは2010年8月に死んだ」と見られているという背景がある(例えば、ここやここやここに関係者らの嘆きがある)。
その一方で、「Nexenta」や「Illumos」、「OpenIndiana」といったOpenSolarisのフォーク版が登場、もしくは勢いを付けつつある。当初、Nexenta自体はOpenSolarisにUbuntuのユーザーランドを移植するというディストリビューションだったが、今ではZFSベースのストレージアプライアンス向けOSの「NexentaStor」のコア部分として採用され、エンタープライズ向け市場という背景を持って開発が継続している。
Illumosは「光」を意味する「illminare」と「OS」を足した造語で、「SunOS」(直訳すると太陽のOS)によって生まれたOSという含みがある。サン、そして後にオラクルでSolaris開発に携わり、現在Nexenta Systemsでシニアディレクターを務めるギャレット・ダモーア氏がIllumosコミュニティをリードしている。ダモーア氏は、Illumosプロジェクトの狙いを説明するスライド(PDF)の中で、IllumosはOracle Solarisと競合するものではなくABI互換性も保つとしながらも、特定企業によって取り潰されたり、閉鎖されることのない、オープンソースコミュニティの“保険”として立ち上げたとしている。元々はフォークを意図していなかったものの、オラクルとの不和により、結果的にフォークすることとなったという。
JoyentのSmartOSは、このIllumosの派生ディストリビューションだ。Joyentにも、元々Solarisカーネルの開発をしていたエンジニアが在籍している。最初のDTraceの開発者の1人で、サン、オラクルを経てJoyentに入社したブライアン・カントリル氏もその1人だ。カントリル氏は、Joyentに加わって約1年後にはLinuxのKVMをSolaris(SmartOS)に移植している(関連ブログ)。KVMは、元々Linux向けのカーネルモジュールとして開発されたもので、これをSolarisベースのOSに移植するのは一筋縄ではいかなかったようだ。この成果はKVM on Illumosとして、アップストリームのIllumosプロジェクトにも還元されるという。
つまり、ストレージアプライアンス(Nexenta SystemsによるNexentaStor)、クラウドソリューション(JoyentによるSmartOS)という市場を得て、OpenSolarisの“子どもたち”が、コミュニティベースでの開発で成長を始めていると見るべきだろう。こうして見てみれば、SmartOSを単純にSolaris由来の“独自OS”と呼ぶのは正確さに欠けることが分かる。問題は、このエコシステムが今後どの程度大きくなるか、そしてSmartOSによるJoyentの差別化がどこまで開発者に受け入れられるかだろう。JoyentはNode.jsの生みの親であるライアン・ダール氏をはじめ、ほとんどのNode.jsコミッタを雇用してもいる。少なくとも、OSレベル、PaaSレベルで、新しいアーキテクチャを採用したクラウドベンダとして、今後もJoyentは注目だろう。
関連リンク
情報をお寄せください:
- プログラムの実行はどのようにして行われるのか、Linuxカーネルのコードから探る (2017/7/20)
C言語の「Hello World!」プログラムで使われる、「printf()」「main()」関数の中身を、デバッガによる解析と逆アセンブル、ソースコード読解などのさまざまな側面から探る連載。最終回は、Linuxカーネルの中では、プログラムの起動時にはどのような処理が行われているのかを探る - エンジニアならC言語プログラムの終わりに呼び出されるexit()の中身分かってますよね? (2017/7/13)
C言語の「Hello World!」プログラムで使われる、「printf()」「main()」関数の中身を、デバッガによる解析と逆アセンブル、ソースコード読解などのさまざまな側面から探る連載。今回は、プログラムの終わりに呼び出されるexit()の中身を探る - VBAにおけるFileDialog操作の基本&ドライブの空き容量、ファイルのサイズやタイムスタンプの取得方法 (2017/7/10)
指定したドライブの空き容量、ファイルのタイムスタンプや属性を取得する方法、FileDialog/エクスプローラー操作の基本を紹介します - さらば残業! 面倒くさいエクセル業務を楽にする「Excel VBA」とは (2017/7/6)
日頃発生する“面倒くさい業務”。簡単なプログラミングで効率化できる可能性がある。本稿では、業務で使うことが多い「Microsoft Excel」で使えるVBAを紹介する。※ショートカットキー、アクセスキーの解説あり
|
|
キャリアアップ
- - PR -
転職/派遣情報を探す
「ITmedia マーケティング」新着記事
CDPの使い方には正解がない だから「コミュニティー」が必要だった
「Treasure Data CDP」ユーザーが主体となって活動するコミュニティー「Treasure Data Ro...
人×AIで磨く ライオンの顧客理解の進化
大手消費財メーカーのライオンが、人と生成AIを融合した顧客理解と市場分析に取り組んで...
生成AIが投資をけん引 2025年度の国内企業のIT予算は「増額」が過去最多に
生成AIの急速な普及により、企業のDX投資は新たな局面を迎えているようだ。