クラウドと業界: 第 1 回 PaaS のベスト・プラクティスとパターン

クラウド対応の業界ソリューションのプラクティス、パターン、モデルの概念

この記事は、クラウド・コンピューティングを業界ソリューションで使用できるようにする方法について説明する連載の第 1 回目です。連載最初の記事として、今回は基本的なクラウド・コンピューティングの理念と業界ソリューションに関する知識を学びます。記事ではまず、業界ソリューションを実現するための IaaS (Infrastructure as a Service)、PaaS (Platform as a Service)、SaaS (Software as a Service) という 3 つのクラウド・コンピューティング・モデルの要件と機能について説明します。その後、PaaS フレームワークを例に、ベスト・プラクティスとパターンを使用してクラウド・コンピューティング・ソリューションをデプロイして管理する方法を説明します。続く第 2 回の記事では、クラウド・コンピューティングの機能を特に石油化学および電気通信の分野に適用する場合について検討を行います。

Yu Chen Zhou, Senior Technical Staff Member and Lead Architect, IBM

Yu Chen Zhou 的照片Dr. Yu Chen Zhou は中国の IBM Research に勤務するシニア・テクニカル・スタッフです。IBM SWG SOA Advanced Technologies、China SOA Design Center のクラウド・コンピューティングおよびソリューション・エンジニアの主任アーキテクトとして、クラウド対応業界ソリューション、フェデレーテッド・メタデータ管理、SOA ポリシーなどの高度な技術プロジェクトを発足し、主導してきました。現在、IEEE および ACM のシニア・メンバー、IBM Master Inventor、IBM Academy of Techinology のメンバーであり、かつては W3C および TOG ワークグループのメンバーでもありました。『Service Oriented Computing』の主要な著者である彼は、IEEE カンファレンスの議事録、IBM Research Report、そして IBM developerWorks で 17 の記事を発表しました。



Xi Ning Wang, Staff Software Engineer and Development Lead, IBM

Xi Ning Wang photoXi Ning Wang は、IBM Software Group、IBM SOA Advanced Technologies のクラウド・インフラストラクチャーのスタッフ・ソフトウェア・エンジニア兼開発リーダーです。彼は、重要なプロジェクトで SOA 技術およびソリューションの設計、開発を手掛けてきました。現在は、クラウド・コンピューティングと業界ソリューションの分野を専門に取り組んでいます。2009年には IBM developerWorks に貢献した著者として指名されました。



Xin Peng Liu, Advisory Software Engineer and Development Lead, IBM

Xin Peng Liu photoXin Peng Liu は、IBM Software Group、IBM SOA Advanced Technologies の顧問ソフトウェア・エンジニア兼クラウド・サービスの開発リーダーです。さまざまなプロジェクトで SOA 技術およびソリューションを設計、開発してきた彼は、現在、クラウド・コンピューティングと業界ソリューションの分野を専門に取り組んでいます。



Liang Xue , Manager, IBM

Liang Xue photoLiang Xue は、IBM Software Group、IBM SOA Advanced Technologies のマネージャーです。SOA 技術およびソリューションの設計、開発の経験を持つ彼女は現在、クラウド・コンピューティングと業界ソリューションの分野を専門に取り組んでいます。



Xiao Xing Liang, Staff Software Engineer, IBM

Xiao Xing Liang photoXiaoxing Liang は、IBM Software Group 内部の Business Performance and Service Optimization チームに所属するスタッフ・ソフトウェア・エンジニアです。SOA、BPM、および Web 2.0 技術およびソリューションの開発に経験を積んでいます。



Chang Hua Sun, Staff Software Engineer, IBM

Chang Hua Sun photoChang Hua Sun は、IBM Software Group 内部の Business Performance and Service Optimization チームに所属するスタッフ・ソフトウェア・エンジニアです。このチームでは、SOA および BPM 技術およびソリューションの開発を担当しています。



Shuang Liang, Software Engineer, IBM

Shuang Liang photoShuang Liang は、IBM Software Group 内部の Business Performance and Service Optimization チームに所属するソフトウェア・エンジニアです。SOA および BPM 技術およびソリューションの開発に経験を積んでいます。



2010年 12月 07日

クラウド・コンピューティングは、利用可能なサービスとしてインフラストラクチャー、プラットフォーム、アプリケーションを提供することで、ビジネス・アジリティーを強化します。クラウド・コンピューティングを大まかに定義すると、企業の環境の外部にサービスとして提供されているスケーラブルなコンピューティング・リソースを使用量に応じて支払う方式で利用すること、と言えます。企業は必要な分だけリソースを利用し、使用した分だけ支払います。「クラウド」のなかに存在するすべてのリソースは、いつでもどこからでもインターネット経由でアクセスすることができます。しかも、裏で行われる保守について心配する必要はありません。その一方、企業でよく悩みの種となるのは、クラウド・コンピューティング・サービスを従来の業界ソリューションにどうやって当てはめたらよいのかという点です。

顧客と内部組織の両方にとって有効にクラウド・コンピューティングを利用できるようにするという目標を達成するには、企業が自らのビジネス・モデルをどのように取り込んでいるかを再考する必要があります。この連載では、クラウドのベースに横たわる原則を実際の業界におけるシナリオに変換します。第 1 回目となるこの記事では、IaaS (Infrastructure as a Service)、PaaS (Platform as a Service)、SaaS (Software as a Service) という 3 つのクラウド・コンピューティング・モデルを紹介し、そのうち PaaS が業界ソリューションの実現にどのように役立つかを具体的に説明します。図 1 に、3 つのモデルを使用した階層化クラウド・コンピューティングを示します。

図 1. 業界ソリューションを対象としたサービスとしての階層化クラウド・コンピューティング
業界ソリューションを対象としたサービスとしての階層化クラウド・コンピューティング

各モデルの説明

IaaS モデルは業界ソリューションの顧客に、特に必須となるハードウェアおよび帯域幅のリソースをはじめ、基本的なインフラストラクチャーを提供します。このモデルでは、オペレーティング・システムや必要なソフトウェア・コンポーネントをインストールするといった、プラットフォームおよびアプリケーションの構成は、顧客が行わなければなりません。IaaS を利用した業界ソリューションでの開発、テスト、リソース管理は、従来のデリバリー方式と変わりませんが、この場合の業界ソリューションは、クラウド・コンピューティングのメリットを十分に活かすことができます。そのメリットとは、ソリューションのバックアップが可能なことや、ハードウェア・リソースのフル活用が可能なことなどです。

PaaS モデルが提供するのは、アプリケーションをデプロイするための基本的なインフラストラクチャーとプラットフォームです。顧客がプラットフォームを構成したり、ハードウェア・リソースの確保について心配したりする必要はありません。PaaS モデルは業界ソリューションを開発、テスト、デプロイするための API を提供するのが通常です。このようなモデルは、ロングテール・アプリケーションには非常に役立ちます。従来から、パレートの法則 (または 80 対 20 の法則) に基づき、収益の約 80% は全体の約 20% の製品やソリューションによってもたらされるとされています。残りの大部分のソリューションは、ほんのわずかな収益にしか貢献しません。けれどもロングテールが当てはまる業界では、ロングテール・ソリューションからますます多くの収益がもたらされています。その一例は、電気通信業界です。図 2 に、電気通信サービスのロングテールを示します。

図 2. 電気通信サービスのロングテール
電気通信サービスのロングテール

幅広い顧客ベースを引き付けてサービスを提供するために、電気通信サービス・プロバイダーはロングテールをターゲットとしたサービスおよびソリューションを追及し続けています。このことから、サービスおよびソリューションは今後、さまざまな組み合わせで再利用できるコンポーネントをベースに、さらに焦点を絞ってカスタマイズされたものになっていくはずです。このように多数のコンポーネントを再利用したロングテール・ソリューションの開発では、PaaS モデルを簡単に使用することができます。PaaS は、プロバイダーにとっての複雑さと、顧客にとっての柔軟さのトレードオフ・モデルです。

SaaS モデルがさまざまな顧客に提供するアプリケーションの機能はクラウドのなかで完全にホストされますが、顧客には限られた柔軟性しか許されません。その一方、SaaS モデルを使用することで、業界ソリューションを製品化するまでの時間が大幅に短縮されます。

クラウド・コンピューティングのこの 3 つのモデルのどれを使用するにしても、業界ソリューションはクラウド・コンピューティングのメリットを得られると共に、製品化までの時間短縮やコンポーネントの再利用といったデリバリー・モデルのメリットも得ることができます。


PaaS の詳細

主にソフトウェア開発サイクルと新しいアプリケーションの収益化に重点を置くソフトウェア・サプライヤーにとっては、アプリケーションを設計、開発、テスト、デプロイ、そしてホストする上で必要となるインフラストラクチャーやサービスに対して、投資および保守作業をせずに済ませるには、PaaS モデルを採用するのが一番です。

PaaS システムは通常、ホストされた Web ベースのアプリケーション開発プラットフォームであり、プログラム全体をオンラインで開発するためのエンドツーエンドの環境 (場合によっては部分的な環境) となります。開発者は既存の SaaS の機能をベースにアプリケーションを構築することも、まったく新しい Web アプリケーションを開発することもできます。ユーザーはアプリケーションの開発、ホスト、更新、保守を心配する必要もなければ、データの保管について心配する必要もありません。

ビジネス・プロセスはエンタープライズ IT システムの中心であり、従来型のビジネス・プロセス・マネジメント (BPM) 主導の企業では、常に、ビジネス指向のプロセス・モデリングと、IT 中心のプロセスの開発、デプロイ、監視といったタスクの両方に取り組むためにソフトウェア・バンドルを採り入れて IT インスフラストラクチャーを管理しています。商業的ルーチンの効率性を改善し、それによってビジネス革新をもたらす鍵は、特定のビジネス・プロセスでは IT に関する事項をビジネス分析と切り離すことです。プロセスを中心とした PaaS 対応のオンライン・プラットフォームは、そのようなビジネス変換を実現する 1 つの方法となります。

業界ソリューションをベースとした BPM アプリケーションの場合、手に負えないほどの複雑さによって、ソリューション構築サイクルの促進が妨げられることがあります。したがって、プロセス中心の PaaS モデルによるメリットを最大限に活かす方法は、既製のすぐにデプロイ可能な仮想マシン・テンプレートと併せて、カスタマイズ可能な業界ソリューション・パターンのライブラリーを PaaS にあらかじめ作成することです。これらをホストする PaaS 自体のマシン (アプライアンス) は、アクセス・ポータルとして公開された Web ベースの管理コンソールを加えることで強化することができます。このアクセス・ポータルはセキュリティーの制御と、クライアント・サイドで行われたカスタマイズの送信を行うためだけのポータルです。

企業の業界ソリューションの要件を満たすために、私たちは CloudLand というプロセス中心の PaaS フレームワークを設計しました。このフレームワークには以下の特徴があります。

  • 社外での開発および実装に対応した Web 2.0 ベースの開発者ワークスペースのコードレスな開発
  • カスタマイズに適するように強化されたアプライアンス
  • 業界ソリューション・パターンの構築
  • ライフサイクル管理
  • BPM マルチテナンシー

設計したこの PaaS フレームワークをベースに、業界のさまざまな要件に対処するクラウド対応の業界ソリューションをいくつか開発しました。以下は、その一部です。

  • クラウド対応のセルフサービス電気通信サービス・デリバリー・プラットフォーム: 位置情報を利用したサービス (LBS)、ショート・メッセージ・サービス (SMS)、マルチメディア・メッセージング・サービス (MMS)、Third Party Call サービス、統合通信サービスなどの電気通信サービスをベースとしたオープンな開発者コミュニティーとパブリック・クラウドで、カスタマイズされたロングテール・アプリケーションをサポート
  • クラウド対応の統合情報フレームワーク: 石油化学産業を対象に、主要業績評価指標 (KPI) プロセスおよび複合ビジネス・サービス、価値連鎖の統合、およびエンタープライズ SaaS をプライベートおよびハイブリッド・クラウドでサポート
  • クラウド対応の医療ソリューション: ハイブリッドおよびプライベート・クラウドでの電子健康記録ベースのアプリケーション用
  • クラウド対応の金融市場情報ソリューション: ハイブリッド・クラウド用

PaaS モデル

ビジネスの観点から見ると、パブリック・クラウドでホストされる一般的な PaaS ソリューションには以下のシナリオが伴います。

  • プラットフォームおよびアプリケーションのすべては、特定のベンダーが所有する 1 つの環境に収容されます。
  • アプリケーションは大抵の場合、様式化されたプログラミング・モデル内で一から開発されます。
  • ベンダーが提供するサービス (データベースや Web アプリケーション・サーバーなど) は共通しており、変わることがありません。
  • クラウド・サービス環境全体を設計する際には、初めからビジネス・モデルの役割が一貫しています。
  • プラットフォームには業界固有のサービスやアプリケーションがないため、プラットフォームを容易に設計、管理することができます。

PaaS モデルを業界固有のコンテキストで企業に当てはめてみると、複雑さが増し、さらに多くの要件が生じてくることになります。その場合の PaaS ソリューションには、一般に以下のような問題があります。

  • クラウド方式がプライベート・クラウドまたはハイブリッド・クラウドであること: このような業界ソリューションは、常に企業内のプライベート・クラウドでホストされ、複数の支社や組織単位で共有されることになるか、IT システムを部分的にアウトソースしている場合や、サプライ・チェーンが複雑な場合には、ハイブリッド・クラウドでホストされることもあります。
  • 開示性の問題: 既存の内部システムまたは外部システムとの統合
  • 業界固有の IT 標準、アプリケーション、およびサービス
  • 関連するビジネス・モデルおよび役割の不確実性: 業界固有のユーザー・グループには、システム作業負荷の分布曲線、リソースに対するタスク要件のタイプ、システムの処理能力など、さまざまなユーザーの振る舞いモデルとシステム使用パターンがあります。
  • ソリューション確立までの時間: まったく新しい IT インフラストラクチャーを一から構築する時間的余裕のある企業はほとんどありません。ビジネスを中断させることなく継続させるためには、古いシステムを置き換えて既存のシステムと統合するためのクラウド環境を素早くセットアップしなければなりません。したがって、PaaS ソリューションを検討する際の迷いを和らげるには、デプロイして管理するまでの時間が重要な要素となります。
  • 多様なアプリケーションとユーザー・タイプが存在すること: 業界ソリューションは全体として、複数の事業分野にわたるアプリケーションがあります。これらのアプリケーションは、さまざまなユーザー・グループ (個々のユーザーまたは組織) によって開発され、所有されます。
  • 企業ユーザーのほとんどは、IT の専門家ではないため、Java や Web 2.0、Web サービスなどの複雑なプログラミング・モデルを使用してアプリケーションやシステムを開発、デプロイ、管理するのに消極的です。
  • ビジネスの利害関係者および顧客から要求される特定のビジネス要件があります。例えば、コンピテンシーのための製品化までの時間短縮、プロセスやビジネス・ロジックの迅速な変更によるビジネス・アジリティーのサポート、エンタープライズ・システムの高速なスケーリングなどです。

テストや開発用のクラウドも PaaS フレームワークの一部となる場合がありますが、通常、そのようなソリューションが業界のコンテンツに触れる必要はありません。

技術の観点から見ると、BPM、サービス指向アーキテクチャー (SOA)、そしてクラウド・コンピューティングのすべてを組み合わせることで、PaaS モデルに BPM 機能を提供することができます。クラウド・コンピューティングを使用した BPM は、プロセスとそれに関連するイベント、ヒューマン・タスク、あるいはデータベース・アクセスを提供する手段となります。


ベスト・プラクティスとパターン

業界ソリューションのアーキテクチャー、そしてそのアーキテクチャーのなかで PaaS を使用する方法は、企業やソリューションに特有のアプリケーション・シナリオ、ビジネス・モデル、エンタープライズ・アーキテクチャーによって異なります。それに応じて、業界ソリューションとの統合パターンも変わってきます。以下にこれらのパターンを要約し、ビジネス・プロセス中心の PaaS フレームワークのアーキテクチャーに当てはめて検討します。

  • 業界ソリューションに包含された PaaS: このパターンは、業界ソリューション内に PaaS を組み込みます。つまり、PaaS が業界ソリューションの一部 (例えば、石油化学産業を対象としたクラウド対応の統合情報フレームワークなど) になるということです。このようなパターンでは、コンポーネントまたは機能の一部のみが PaaS サービスとして公開され、業界ソリューションの残りの部分についてはクラウドではホストされません。
  • 業界ソリューションに追加された PaaS: このパターンは、業界ソリューションの境界上に位置する付加価値サービスを PaaS でホストする傾向のある業界に対応します。システム全体は PaaS がなくても機能し、そのコア機能とインフラストラクチャーは非クラウド環境で保守されます。PaaS 対応の付加価値をもたらす部分は、将来のビジネス成長点のテスト・ベッドとなります。このパターンを説明する例としては、ユーザーが電気通信サービスを使用した付加価値アプリケーションを一から素早く構築できるように支援する、クラウド対応のセルフサービス電気通信サービス・デリバリー・プラットフォームがあります。
  • 業界ソリューションと結合された PaaS: このパターンでは、PaaS と業界ソリューションが同じクラウド環境で 1 つに結合されます。この場合のソリューションは、純粋に業界固有の PaaS となります。典型的な例は、クラウド対応の金融市場情報ソリューションで、このソリューションが目的とするのは、PaaS をベースに、カスタマイズ可能な金融市場情報ハブを提供することです。PaaS は企業のビジネス・モデル全体を、特定の業界のエコシステムのなかで 1 つの独立したノードにすることができます。

図 3 に、業界ソリューションが上記の 3 つの統合パターンをすべてサポートするためのアーキテクチャーとして、ビジネス・プロセス中心の PaaS フレームワークのアーキテクチャーを示します。

図 3. 業界ソリューションに対応したビジネス・プロセス中心の PaaS フレームワークのアーキテクチャー
業界ソリューションに対応したビジネス・プロセス中心の PaaS フレームワークのアーキテクチャー

図 3 に提案されている PaaS フレームワークには、以下のコア・コンポーネントが組み込まれています。

  • コア仮想イメージ: コア仮想イメージは、デプロイ可能なランタイム・プラットフォームとして、自動的にクラウド・インフラストラクチャー内にプロビジョニングされるようにすることができます。これらのイメージは、プロセス・サーバー、イベント・サーバー、またはルール・サーバーなどのビジネス・プロセスを実行する基本ミドルウェアとしてインスタンス化することが可能です。フレームワークの実装パターンによっては、デプロイされたランタイム・プラットフォームが業界ソリューション全体となったり、その一部となったりします。あるいは、ランタイム・プラットフォームとソリューションがやりとりすることもできます。
  • サポート開発ツールによってコードレスな開発者ワークスペースを形成する社外プログラミング・モデル: フレームワークの組み込みワークスペース機能には、ビジネス・プロセス、マッシュアップ・ユーザー・インターフェース、ビジネス・イベント、およびビジネス・ルールの編集に使用するツールが含まれます。
  • サービス管理用セルフサービス管理ポータル: 業界固有のサービス、PaaS 生成サービス、そして外部サービスという 3 種類の対象サービスの管理に使用されます。
  • BPM マルチテナンシー管理: BPM 関連のすべての成果物を対象としたマルチテナンシーの定義および実施の両方に対処します。

さらに、PaaS フレームワークから公開される多様な拡張ポイントもあります。

  • カスタム仮想イメージの拡張ポイント。これらのイメージは特化された業界ソリューションの要件に対応するためのもので、この拡張ポイントにより、フレームワークの仮想イメージ・ライブラリーに容易に追加することができます。
  • 自己定義された社外開発ツールの拡張ポイント。これらのツールはフレームワークの組み込み機能には含まれませんが、個々のソリューション開発に必要です。コードレスな開発者ワークスペースでは、拡張ツールが構成されることがよくあります。
  • 業界固有のサービス登録の拡張ポイント。さまざまな業界、そして Third Party Call に必要な外部サービスに対応するための拡張ポイントです。

その他の考慮事項

クラウド・インフラストラクチャーを構築する際には、インフラストラクチャーのリソース管理および容量計画も考慮しなければなりません。PaaS フレームワークで管理するリソースは、仮想マシンとそれに関連するリソースという形で規定されます。つまり、リソースの管理は、仮想リソースを管理するなかにあります。

業界ソリューションでは、サービス・プロバイダーのそれぞれの役割に応じて、異なる機能と品質、あるいはリソースの規模が必要になります。これらはすべて、クラウド・インフラストラクチャーで仮想リソースを調整することによって簡単に取得することができます。さらに、特定の業界サービスには、ビジネスの成長と併せてサービス品質を高めるために、リソースに関する要件がさらに追加される場合があります。フレームワークの組み込み仮想テンプレートは、例えばスタンドアロンのアプリケーション・サーバーとクラスターなどといったトポロジーを提供し、通常のシステム・スループットとそれよりも高いシステム・スループットの両方に対応します。ビジネス・ユーザーはサービス管理ポータルでサービス品質のオプションを指定するだけでよいのです。すると、指定したオプションに対応する仮想システム・リソースが自動的に関連付けられて、サービス品質の要件が満たされます。

さらに、リソース管理とスケーリングを実装するために、さまざまなユーザー・ロールを対象とした容量計画が行われます。業界サービス・プロバイダーとビジネス・パートナーは、初期リソースの割り当てに対するリソース制約を定義できるだけでなく、将来リソースを増やす場合の上限を決定することができます。また、リソースの拡張および回収についての条件を規定するポリシーを定義することも可能です。例えば、特定のユーザーが使用する仮想リソースが事前定義されたしきい値に達すると、クラウド・インフラストラクチャーは仮想マシン・リソースを拡大するための手段として、追加のメモリーとディスク・スペースを割り当てるか、クラスターにノードを追加して作業負荷のバランスを取ります。逆に、仮想システムの使用量が事前定義されたしきい値を一定の期間下回った場合には、アイドル状態のノードが取り除かれたり、メモリーが回収されたりします。


まとめ

クラウド・コンピューティングはその環境のなかで、業界ソリューションのシステムと機器を相互に接続します。この記事では具体的な例として PaaS フレームワークを用いて、クラウド・コンピューティングを業界ソリューションに取り込むための要件、アーキテクチャー・パターン、そして実装技術について説明しました。このフレームワークをベースに、連載の今後の 2 回の記事では、クラウド・コンピューティングの機能を石油化学および電気通信の分野に適用する方法について検討します。

参考文献

学ぶために

製品や技術を入手するために

  • WebSphere App Server および DB2 Express-C を使って特定の業界のあらゆるアプリケーションを開発、デプロイするために、1 つにまとめて完全に構成されたイメージを試してみてください。

議論するために

コメント

developerWorks: サイン・イン

必須フィールドは(*)で示されます。


IBM ID が必要ですか?
IBM IDをお忘れですか?


パスワードをお忘れですか?
パスワードの変更

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


お客様が developerWorks に初めてサインインすると、お客様のプロフィールが作成されます。会社名を非表示とする選択を行わない限り、プロフィール内の情報(名前、国/地域や会社名)は公開され、投稿するコンテンツと一緒に表示されますが、いつでもこれらの情報を更新できます。

送信されたすべての情報は安全です。

ディスプレイ・ネームを選択してください



developerWorks に初めてサインインするとプロフィールが作成されますので、その際にディスプレイ・ネームを選択する必要があります。ディスプレイ・ネームは、お客様が developerWorks に投稿するコンテンツと一緒に表示されます。

ディスプレイ・ネームは、3文字から31文字の範囲で指定し、かつ developerWorks コミュニティーでユニークである必要があります。また、プライバシー上の理由でお客様の電子メール・アドレスは使用しないでください。

必須フィールドは(*)で示されます。

3文字から31文字の範囲で指定し

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


送信されたすべての情報は安全です。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=Cloud computing, Industries
ArticleID=617617
ArticleTitle=クラウドと業界: 第 1 回 PaaS のベスト・プラクティスとパターン
publish-date=12072010