Service(PaaS)のためのインフラストラクチャを構築する方法について解説します。Service(PaaS)という言葉をすでにご存じの方も多いことでしょう。これは、元々セールスフォース・ドットコムが2007年に打ち出したコンセプトです(用語説明)。PaaSのサービスプロバイダは、ユーザーに対して、アプリケーションサーバ、データベースサーバなどの「プラットフォーム」環境を提供します。PaaSのユーザーはこれらを用いてシステムを迅速に開発することができます。この「プラットフォーム」という言葉が意味する内容は、サービスプロバイダによってさまざまです。アプリケーションサーバやリレーショナルデータベース、NoSQLデータベースのようないわゆるミドルウェアと呼ばれるソフトウェア環境であったり、WebサービスAPIとそのアクセスクライアントライブラリのようなモジュールを含むものもあります。Service)といった用語もでてきます。これらを分類して整理したのが表1です。注1:IaaSのユーザーは、IaaS上でアサインされたリソースに対して、ミドルウェア・ネットワークなどを設計、実装します。その上にアプリケーションをデプロイします。一方のPaaSのユーザーは、主にアプリケーションの設計、実装に注力します。Foundryとは、VMware社が提供するPaaSのオファリングの名称です。Foundryを利用するには次の方法があります。Foundryプロジェクトからソースコードをダウンロードしてインストールするからソースコードをダウンロードしてインストールするこのうち、最初の2つは主にアプリケーション開発者、すなわちPaaSのユーザーとしての利用方法です。3つ目は、PaaSのプロバイダの向けの利用方法になります。Engine、Herokuなど)と決定的に異なるのは、この「PaaSのプロバイダ向けの利用方法」を提供している点です。2.0ライセンスの元でオープンソースとして公開しています。したがってPaaSのプロバイダは、自身が定義する「プラットフォーム」を実装するために、ソースコードレベルでカスタマイズできます。複数のプログラミング言語に対応可能である複数のアプリケーションフレームワークに対応可能である複数のデータサービスに対応可能であるIaaSレイヤに依存しないといった設計思想を実現しようとしています。Foundryのコアチームとは別のPaaSプロバイダが、PythonやPHPといったプログラミング言語の対応を追加したPaaS実装を提供し始めています(注2)。Foundryは、プラットフォームの実装を容易にカスタマイズ可能なPaaSのカーネルとして利用できることが分かります。注2:AppFog社が提供するパブリッククラウドサービスやActiveState社が提供するプライベートクラウド向けのパッケージ製品などがあります。Foundryのユーザーからの利用イメージをつかむため、cloudfoundry.comを実際に使ってみましょう(2011年11月20日現在、cloudfoundry.comはβ提供中で、無料でアカウントを作成して使うことができます)。10.04上で動作確認をしています。cloudfoundry.comのサービスアカウントは、サインアップページからメールアドレスを記入して取得できます。サインアップからアカウントの発行までには数日間かかるようです。Foundryで実装されたPaaSを利用するには、通常、VMCと呼ばれるコマンドラインツールを使うことになります。VMCはRubyで実装されており、gemコマンドを使ってインストールできます。VMCのインストールは次のように行います。~/.bashrインストールしたvmcコマンドを使って、cloudfoundry.comの情報を確認します。targetコマンドを使って、VMCが使うターゲットサイトをcloudfoundry.comのAPIサーバに向けます。infoコマンドを使ってターゲットサイトの情報を確認できます。loginコマンドを使ってターゲットサイトにログインします。[https://api.cloudfoundry.com]ログインに成功すると、利用可能なプラットフォームの情報が取得できます。Foundryでは、プラットフォームを、アプリケーションを動作させるランタイム、およびデータを格納、取得するシステムサービスの2つに分けて定義しています。runtimesコマンドを利用します。servicesコマンドを利用します。メールマガジンをご購読ください。申し込みページへITmediaはアイティメディア株式会社の登録商標です。