ブラウザで開発・運用も。ニフティがRuby/PHP/Python対応のPaaSを発表
IaaSのクラウドサービスで国内で先行したニフティが、今度はPaaSのクラウドサービス「ニフティクラウド C4SA」(シーフォーエスエー)の正式サービス開始を発表しました。開始当初はRuby/PHP/Python/Perlなどをサポートしています。サイト自体はしばらく前から公開されていましたが、本日2012年7月31日に正式発表され、クローズドβから正式サービスとなりました。IIJのMogok、paperboy&co.のSqaleと国内で使えるRuby on Rails環境に、またひとつ選択肢が増えましたね。国内で正式サービスをうたって一般ユーザーに公開するのは、C4SAが一番乗りです。
※記事初出時、サービス名をC4SAとご紹介しましたが、正式には「ニフティクラウド C4SA」です。訂正してお詫びいたします。
キャンバスはアプリの開発・運用環境
端的に言うと、C4SAはニフティクラウドというIaaS上に構築されたPaaS環境です。ただ、一般的なPaaSと異なるのは「開発」「運用」、そして開発チームの「コラボレーション」も、全てブラウザ上で完結しかねない勢いの新しい世代の「アプリ開発環境」を目指している、というところで、とても意欲的なサービスです。
アプリの構築・運用環境は「キャンバス」という単位で管理されます。標準でメモリ512MB、ローカルディスクが1GB使えます。月額945円で、日割りで計算されます(現在キャンペーン中で9月末までは無料)。DBは共有のMySQLが用意されていて、今後は専用DBやPostgreSQL対応も検討中とか。ユーザーは好きなだけキャンバスを立ち上げられ、キャンバスごとに、言語処理系やフレームワークが選択できます。ちょうどAmazon EC2のAMIのように、プリセットされた「開発・運用環境」が用意されています。現在は言語として、Ruby/PHP/Python/Perlをサポート。フレームワークとしてはRuby on Rails、CakePHP、Djangoが使えます。サーバアプリがインストール済みの環境としてWordPress、PukiWiki、concrete5(CMS)、CandyCane(プロジェクト管理)などといったキャンバスもあり、手軽にアプリを立ち上げたいというニーズに対応します。
キャンバスの環境は随時追加予定で、C4SAユーザーが作成した環境をサービスとして有償でほかのユーザーに提供するマーケットのようなものも考えているといいます。Node.jsやJava対応もリクエストに上がっているそうです。
ニフティクラウドですからインフラはVMwareです。その上にかなり独自に手を入れたLinuxを載せて、個別環境をLinuxのユーザー名によるプロセス分離でキャンバスを実現しているそうです。アプローチが、ややAndroidっぽいですね。C4SAでは、これまた仕組みは良く分かりませんが、アプリや環境をリスタートすることなく、メモリやディスクが随時増やせるそうです。スケールアップですね。アプリを横に並べて展開するスケールアウトについても、8月中には対応予定だそうです。
開発もサーバ側の各種設定もCLIもブラウザで
C4SAがユニークなのはブラウザ上に開発・運用に関わる全てを載せようとしていることです。ファイルブラウザで任意のファイルを編集できますし、nginxの設定ファイル編集も言語処理系のバージョン変更も、ブラウザで完結します。各種ログも見れますし、デーモンの再起動もブラウザ上のボタン一発です。
Ruby on Railsでいえば、git、rake、bundleなどのコマンドは、ブラウザ上に専用のGUIが用意されているか、もしくはブラウザ上のターミナルエミュレータのようなCLIで利用可能です。このCLIはsshではなく、ホワイトリスト方式のコマンド仲介ターミナルといった風です。ちょっと使ってみた感じ、「git init」ができても、「git commit」などとすると、エディタが起動できずにターミナルの設定がおかしいと怒られたりしました。公言はしていないそうですが、「タブレットで開発できるようになるのが目標」(クラウド事業部クラウドビジネス部 五月女雄一氏)ということですから、今後に期待ですね。
デプロイはGitなどのリポジトリからのチェックアウト、もしくはWebDAV経由で行えます。WebDAVはデザイナ向けの機能で、チーム開発を意識したものですね。キャンバスは複数ユーザーで共有できますが、コラボレーション機能として、今後はチャット機能やSkypeアドオンなどを検討しているそうです。GitのチェックアウトやWebDAVは手軽でいいですが、Capistranoのような自動化ツールが使えないのは、プロの開発者にはちょっと不便かもしれませんね。ただ、「ニフティのC4SA専用の知識がないと使えないという風にしたくない」(五月女氏)という話で、専用コマンドを用意するようなことは考えていないそうです。
C4SAのターゲットとしては、
- アプリを勉強したいけれども環境構築の障壁を越えられない初心者プログラマやデザイナ
- アプリ開発に没頭したいサンデープログラマ
- 技術はあるが時間がないエンジニア。PHPエンジニアがRailsを使う、あるいはその逆で環境構築までやっていられない
- インフラや環境を意識することなくビジネスレイヤですぐに利用したいスタートアップ
というような層を狙っているということです。
今後は、ニフティらしく顧客管理機能、課金・決済機能の提供も検討したいということでニフティクラウド同様に、国内でもビジネスでのPaaS活用が本格化するかもしれませんね。「IaaSほどは安くないですが、ビジネスユースでは使われている、本気で使えるPaaS、お金稼ぎしても大丈夫ですよ、ということを感じてもらえるようなサービスにしたい」(五月女氏)とのことです。