僕の個人的な意見を述べさせて頂くとすると、半分賛成、半分反対だ。例えば、クラウドという言葉を作ったGoogleは、仮想化技術を使っていない。冒頭の文言に従えば、Googleはクラウド企業を名乗るべきではない、というおかしなことになってしまう。
[参考資料] Channel Register "Google abstains from blades, VMware and the rest of the hype"
http://www.channelregister.co.uk/2007/06/25/google_barroso_datacenter/
http://www.channelregister.co.uk/2007/06/25/google_barroso_datacenter/
一方で、日本のIT業界はクラウドというキーワードを非常に広義な意味でとらえ、商売のための言葉、いわゆる「バズワード」にしてしまった感も否めない。未だに「インターネットを介してサービスを提供していればクラウド」などと真面目に語られると、こちらが赤面してしまう。したがって、何でもかんでもクラウドと呼んで欲しくない気持ちもよくわかる。
そこで本稿では、まず米国で一般的なNIST (National Institute of Standards and Technology) によるクラウドの定義を紹介し、次に日本および米国におけるクラウド事業者、特にプラットフォームを提供するサービス事業者について、「クラウドを名乗る条件」という視点から調査、比較した結果をまとめる。
クラウドの定義
まずクラウドの定義についてまとめておく。米国は、NISTの定義が業界標準になったと言ってよいだろう。NISTの定義は、5つの本質的な特徴、3つのサービスモデル、4つのデプロイメントモデルで構成されている。以下にその日本語訳を掲載する。日本語訳はAgile Cat氏のブログを抜粋し、一部を改変して掲載している。
まずクラウドの定義についてまとめておく。米国は、NISTの定義が業界標準になったと言ってよいだろう。NISTの定義は、5つの本質的な特徴、3つのサービスモデル、4つのデプロイメントモデルで構成されている。以下にその日本語訳を掲載する。日本語訳はAgile Cat氏のブログを抜粋し、一部を改変して掲載している。
[参考資料] Agile Cat氏ブログ 「とても重要なNISTのクラウド定義:対訳」
本稿もこのNISTによるクラウドの定義に則って記載するが、ここで注意していただきたいのは、NISTの定義では仮想化をクラウドの必要条件にしておらず、あくまで例として記載している点だ。
●5つの本質的な特徴
1)オンデマンド・セルフサービス
それぞれのサービスプロバイダーとの人的な対話に依存することなく、消費者は必要に応じて自動的かつ一方的に、サーバやネットワーク、ストレージの利用時間といった、コンピューティングの能力をプロビジョニングする。
1)オンデマンド・セルフサービス
それぞれのサービスプロバイダーとの人的な対話に依存することなく、消費者は必要に応じて自動的かつ一方的に、サーバやネットワーク、ストレージの利用時間といった、コンピューティングの能力をプロビジョニングする。
2)広帯域のネットワークアクセス
このコンピューティング能力は、ネットワーク上で利用でき、また、標準的なメカニズムを介してアクセスできる。それにより、各種のシン/シック クライアントプラットフォーム(モバイルフォン/ラップトップ/ PDA)からの利用が促進される。
このコンピューティング能力は、ネットワーク上で利用でき、また、標準的なメカニズムを介してアクセスできる。それにより、各種のシン/シック クライアントプラットフォーム(モバイルフォン/ラップトップ/ PDA)からの利用が促進される。
3)リソース・プール
プロバイダーがコンピューティングリソースは共有され、マルチテナントモデルを利用する多数の消費者に提供される。そこでは、消費者からの需要にしたがって動的に割当/解消される、物理的あるいは仮想的なリソースを用いられる。一般的に、そこで供給されるリソースの正確な位置を、顧客が制御/知覚することはない。そのため、ロケーションから独立した感覚があるが、より高い抽象レベル(国/州/DC)においてロケーションは特定されるかもしれない。こうしたリソースの例としては、ストレージ/プロセッサ/メモリ/ネットワーク帯域幅/仮想マシンなどが含まれる。
プロバイダーがコンピューティングリソースは共有され、マルチテナントモデルを利用する多数の消費者に提供される。そこでは、消費者からの需要にしたがって動的に割当/解消される、物理的あるいは仮想的なリソースを用いられる。一般的に、そこで供給されるリソースの正確な位置を、顧客が制御/知覚することはない。そのため、ロケーションから独立した感覚があるが、より高い抽象レベル(国/州/DC)においてロケーションは特定されるかもしれない。こうしたリソースの例としては、ストレージ/プロセッサ/メモリ/ネットワーク帯域幅/仮想マシンなどが含まれる。
4)迅速な伸縮性
コンピューティング能力のプロビジョニングは、迅速で伸縮性のあるものになる。そして、いくつかのケースでは自動的に、スケールアウトの際に拡大し、また、スケールインの際に縮小する。消費者にとって、このプロビジョニン能力は無限に追加できるものになり、また、従量制で購入できるものとなる。
コンピューティング能力のプロビジョニングは、迅速で伸縮性のあるものになる。そして、いくつかのケースでは自動的に、スケールアウトの際に拡大し、また、スケールインの際に縮小する。消費者にとって、このプロビジョニン能力は無限に追加できるものになり、また、従量制で購入できるものとなる。
5)(適切に)測定されたサービス
サービスの種類(ストレージ/プロセッサーバンド幅/アクティブユーザカウント)に適した抽象レベルにおける測定機能を高めることで、クラウドシステムは自動的にリソース利用を制御し、最適化する。こうしたリソースの使用量については、利用されたサービスのプロバイダーと消費者から、透過的にモニター/コントロール/レポートされる。
サービスの種類(ストレージ/プロセッサーバンド幅/アクティブユーザカウント)に適した抽象レベルにおける測定機能を高めることで、クラウドシステムは自動的にリソース利用を制御し、最適化する。こうしたリソースの使用量については、利用されたサービスのプロバイダーと消費者から、透過的にモニター/コントロール/レポートされる。
●3つのサービスモデル
1)SaaS
このコンピューティングの能力は、クラウドインフラストラクチャ上で実行されるプロバイダーのアプリケーションを用いて、消費者に提供される。 そのアプリケーションは、 Web ブラウザ(Web メールなど)といったシンクライアントインターフェイスを介して、各種のクライアントデバイスからアクセスできる。消費者はネットワーク、サーバ、オペレーティングシステム、ストレージや、個別のアプリケーション機能さえも含めて、基礎となるクラウドインフラストラクチャの管理/制御は行わないが、個々のユーザに特定されるアプリケーションコンフィグレーションは例外となる。
1)SaaS
このコンピューティングの能力は、クラウドインフラストラクチャ上で実行されるプロバイダーのアプリケーションを用いて、消費者に提供される。 そのアプリケーションは、 Web ブラウザ(Web メールなど)といったシンクライアントインターフェイスを介して、各種のクライアントデバイスからアクセスできる。消費者はネットワーク、サーバ、オペレーティングシステム、ストレージや、個別のアプリケーション機能さえも含めて、基礎となるクラウドインフラストラクチャの管理/制御は行わないが、個々のユーザに特定されるアプリケーションコンフィグレーションは例外となる。
2)PaaS
プロバイダーがサポートするプログラム言語とツールで作成したクラウドインフラストラクチャに、消費者が作成もしくは取得したアプリケーションをデプロイすることが、消費者に提供される機能となる。消費者はネットワーク、サーバ、オペレーティングシステム、ストレージなどの、基礎となるクラウドインフラストラクチャの管理/制御は行わないが、デプロイされたアプリケーションを制御し、また、そのホスティング環境をコンフィグレーションすることがある。
プロバイダーがサポートするプログラム言語とツールで作成したクラウドインフラストラクチャに、消費者が作成もしくは取得したアプリケーションをデプロイすることが、消費者に提供される機能となる。消費者はネットワーク、サーバ、オペレーティングシステム、ストレージなどの、基礎となるクラウドインフラストラクチャの管理/制御は行わないが、デプロイされたアプリケーションを制御し、また、そのホスティング環境をコンフィグレーションすることがある。
3)IaaS
オペレーティングシステムやアプリケーションを含む任意のソフトウェアを、消費者がデプロイ/実行することができる場所で、プロセッサ/ストレージ/ネットワーク/重要なコンピューティングリソースなどをプロビジョニングするための機能が、消費者に対して提供される。消費者は、基礎となるクラウドインフラストラクチャの管理/制御は行わないが、オペレーティングシステム/ストレージ/デプロイされたアプリケーションを制御し、また、選択された(ホスト、ファイアウォールなどの)ネットワークコンポーネントを限定的に制御する。
オペレーティングシステムやアプリケーションを含む任意のソフトウェアを、消費者がデプロイ/実行することができる場所で、プロセッサ/ストレージ/ネットワーク/重要なコンピューティングリソースなどをプロビジョニングするための機能が、消費者に対して提供される。消費者は、基礎となるクラウドインフラストラクチャの管理/制御は行わないが、オペレーティングシステム/ストレージ/デプロイされたアプリケーションを制御し、また、選択された(ホスト、ファイアウォールなどの)ネットワークコンポーネントを限定的に制御する。
●4つのデプロイメントモデル
1)プライベートクラウド
このクラウドインフラストラクチャは、特定の組織のために単独で運用される。そして、当該組織あるいはサードパーティーにより管理され、オンプレミスあるいはオフプレミスで運用されるだろう。
2)コミュニティクラウド
このクラウドインフラストラクチャは、いくつかの組織により共有され、また、関心事(ミッション/セキュリティ要件/ポリシー/コンプライアンス)を共有する特定のコミュニティをサポートする。そして、当該組織あるいはサードパーティーにより管理され、オンプレミスあるいはオフプレミスで運用されるだろう。
このクラウドインフラストラクチャは、いくつかの組織により共有され、また、関心事(ミッション/セキュリティ要件/ポリシー/コンプライアンス)を共有する特定のコミュニティをサポートする。そして、当該組織あるいはサードパーティーにより管理され、オンプレミスあるいはオフプレミスで運用されるだろう。
3)パブリッククラウド
このクラウドインフラストラクチャは、不特定多数の人々や大規模な業界団体などに提供され、対象となるクラウドサービスを販売する組織により所有される。
このクラウドインフラストラクチャは、不特定多数の人々や大規模な業界団体などに提供され、対象となるクラウドサービスを販売する組織により所有される。
4)ハイブリッドクラウド
このクラウドインフラストラクチャは、複数のクラウド定義(private/community/public)から、2 つ以上を組み合わせたものとなる。それぞれに固有の実体は保持するが、標準あるいや個別のテクノロジーによりバインドされ、データとアプリケーションのポータビリティ(クラウド間でのロードバランシングのためのクラウドバーストなど)を実現する。
このクラウドインフラストラクチャは、複数のクラウド定義(private/community/public)から、2 つ以上を組み合わせたものとなる。それぞれに固有の実体は保持するが、標準あるいや個別のテクノロジーによりバインドされ、データとアプリケーションのポータビリティ(クラウド間でのロードバランシングのためのクラウドバーストなど)を実現する。
※注:クラウドソフトウェアとは、ステートレス/疎結合/モジュール性/セマンティックインターオペラビリティを重視するサービス指向であることで、そのクラウドパラダイムの先進性を活用するものである。
-*-*-*-*-*-*-*-*-*-*-*-*-*-*―
さて、クラウドを定義したところで、本題の「クラウドを名乗る条件」を視点に調査した結果をまとめる。プラットフォーム、すなわちサービス提供モデルの中のIaaSおよびPaaSの事業者についてそれぞれ分けて比較する。よくこれら2つのサービス提供モデルも混同されて「クラウド」と括られることも多いが、抽象化される対象が異なるため、中身は全く別物だ。
IaaS事業者
1)日本国内
日本国内の大手SIerのクラウドを見てみよう。まず、調べていて思うのは、どれも本当に売ってくれるのか、本当に動いているのかがわからない。「資料請求」や「お問い合わせ」のリンクしか見あたらない。なぜ「仮想マシンを作成する」ボタンがないのか?答えは、下表をご覧頂ければ一目瞭然。北川氏の指摘する、自動プロビジョニングの機能がないからだ。NISTの定義に照らし合わせても、オンデマンド・セルフサービス、迅速な伸縮性、測定されたサービスなどのクラウドの本質的な特徴を備えていないことがわかる。このタイプのIaaSは、発注してから利用できるようになるまで、少なくとも数日を要する。そして迅速な伸縮性を備えておらず、到底、クラウドと呼ぶことはできない。なお10月より提供開始を予定している富士通のオンデマンド仮想システムサービスは、本当のクラウドのようである。日立製作所は、IaaSを提供していない。
事業者 | 日立情報 | NTTデータ | 富士通 | NEC | 日本IBM | |
サービス名称 | Business Stage ROD | BizXaaS インフラサービス | オンデマンド仮想システムサービス*1 | RIACUBE | マネージドクラウドコンピューティングサービス | |
北川氏 | 仮想化 | ○ VMware | ○ VMware | ○ | ○ VMware | ○ MCCS |
自動プロビジョニング | × | × | ○ | × | × | |
NIST | オンデマンド・セルフサービス | × | × | ○ | × | × |
広帯域のネットワークアクセス | ○ | ○ | ○ | ○ | × | |
リソース・プール | ○ | ○ | ○ | ○ | ○ | |
迅速な伸縮性 | × | × | ○ | × | ○ | |
測定されたサービス | × | × | ○ | × | ○ |
*1: 2010年10月提供開始予定。
一方、レンタルサーバ事業者やホスティング事業者などは、古くからパーティショニング技術を活用して仮想専用サーバ(Virtual Private Server; VPS)を提供してきた。その延長線上で提供されるIaaSサービスもあり、サーバやストレージの大きさによって複数のメニューを数個用意しておいて、ユーザに選ばせる。これらは残念ながら月額課金のものばかりで、即日利用、即日破棄などはできそうにない。例えば、さくらインターネット「VPS」、IDC Frontier「NOAHプラットフォームサービス」、IIJ「GIO コンポーネントサービス」、伊藤忠テクノソリューションズ「TechnoCUVIC」などがある。
そんな中でも、ニフティが提供する「ニフティクラウド」は、正真正銘のIaaS、パブリッククラウドサービスだ。時間単位の課金に対応し、ニフティ法人IDさえ持っていれば、即時利用可能だ。
KDDIの「クラウドサーバサービス」は、IaaSとPaaSの中間に分類できるサービスだ。よく利用されるサーバ(Web 3層、LAMPスタック、その他のミドルウェアやロードバランサなど)が仮想アプライアンスとして既に用意されており、ユーザは専用の管理アプリケーションを使ってドラッグ&ドロップでシステム構成を自由に変更できる。月額課金ではあるが、自動プロビジョニング機能を備え、オンデマンド・セルフサービスを実現している。
[参考資料]
・日立情報システムズ Business Stage ROD
http://www.server-outsourcing.jp/os/services/resource/
・NTTデータ BizXaaS インフラサービス
[参考資料]
・日立情報システムズ Business Stage ROD
http://www.server-outsourcing.jp/os/services/resource/
・NTTデータ BizXaaS インフラサービス
http://www.kddi.com/business/cloud/
2)米国
次に、米国のIaaS事業者を見てみよう。ここに紹介したIaaS事業者はすべて、自動プロビジョニング機能を備えており、NISTの定義に照らしてもクラウドと呼べるサービスを提供している。
2)米国
次に、米国のIaaS事業者を見てみよう。ここに紹介したIaaS事業者はすべて、自動プロビジョニング機能を備えており、NISTの定義に照らしてもクラウドと呼べるサービスを提供している。
事業者 | Amazon Web Service | Rackspace | Terremark | SAVVIS | AT&T | IBM | |
サービス名称 | EC2/S3 | Rackspace Cloud | vCloud Express | Symphony VPDC | Cloud Services | Cloud *2 | |
北川氏 | 仮想化 | ○ Xen, RHEV | ○ VMware | ○ VMware | ○ VMware, RHEV | ○ VMware | ○ RHEV |
自動プロビジョニング | ○ | ○ | ○ | ○ | ○ | ○ | |
NIST | オンデマンド・セルフサービス | ○ | ○ | ○ | ○ | ○ | ○ |
広帯域のネットワークアクセス | ○ | ○ | ○ | ○ | ○ | ○ | |
リソース・プール | ○ | ○ | ○ | ○ | ○ | ○ | |
迅速な伸縮性 | ○ | ○ | ○ | ○ | ○ | ○ | |
測定されたサービス | ○ | ○ | ○ | ○ | ○ | ○ |
*2: 提供開始日未定。
[参考資料]
・Amazon Web Service EC2/S3
http://www.redhat.com/solutions/cloud/partners/
PaaS事業者
さて、PaaSにおいては、プラットフォーム以下が抽象化されるため、明確に「仮想化」や「自動プロビジョニング」の機能を備えていると謳われていないことが多い。そのため、PaaS事業者の比較においては、「仮想化や自動プロビジョニングの機能を備えていれば当然実現できるであろう尺度」を用いる。それは、ユーザがそのサービスを使うことを決定してから、実際に利用開始できるようになるまでの時間である。
1)日本国内
日本国内でPaaSを提供していると見受けられるのは、富士通、日立製作所の2社だけである。NECはPaaSを提供していない。そして、利用開始までの時間に注目いただきたい。各社とも「ご相談」になっている。
PaaS事業者
さて、PaaSにおいては、プラットフォーム以下が抽象化されるため、明確に「仮想化」や「自動プロビジョニング」の機能を備えていると謳われていないことが多い。そのため、PaaS事業者の比較においては、「仮想化や自動プロビジョニングの機能を備えていれば当然実現できるであろう尺度」を用いる。それは、ユーザがそのサービスを使うことを決定してから、実際に利用開始できるようになるまでの時間である。
1)日本国内
日本国内でPaaSを提供していると見受けられるのは、富士通、日立製作所の2社だけである。NECはPaaSを提供していない。そして、利用開始までの時間に注目いただきたい。各社とも「ご相談」になっている。
事業者 | 富士通 | 日立 |
サービス名称 | SaaSアプリケーションプラットフォームサービス | Harmonious Cloud PaaS |
利用開始までの時間 | ご相談 | ご相談 |
[参考資料]
・富士通 SaaSアプリケーションプラットフォームサービス
http://www.hitachi.co.jp/products/it/harmonious/cloud/solution/paas.html
2)米国
米国でもPaaSを提供している事業者は限られている。高い技術力と優秀なソフトウェアエンジニアを多数抱える企業ばかりである。利用開始までの時間をご覧いただきたい。どこかの事業者で「ご相談」している間に、アプリケーションのデプロイが完了してしまう。一方、最もエンタープライズに普及しているアプリケーションプラットフォーム「JBoss」を抱えるRed Hatは、Microsoftのように自社でPaaSを提供する気配はない。おそらくIaaSを提供するデータセンタ事業者とパートナーを組んで対抗する構えだが、同じ戦略のVMwareに一歩も二歩も出遅れている。
2)米国
米国でもPaaSを提供している事業者は限られている。高い技術力と優秀なソフトウェアエンジニアを多数抱える企業ばかりである。利用開始までの時間をご覧いただきたい。どこかの事業者で「ご相談」している間に、アプリケーションのデプロイが完了してしまう。一方、最もエンタープライズに普及しているアプリケーションプラットフォーム「JBoss」を抱えるRed Hatは、Microsoftのように自社でPaaSを提供する気配はない。おそらくIaaSを提供するデータセンタ事業者とパートナーを組んで対抗する構えだが、同じ戦略のVMwareに一歩も二歩も出遅れている。
事業者 | Google | Salesforce.com | VMware & Salesforce.com | Microsoft |
サービス名称 | Google App Engine | Force.com | VMforce *3 | Windows Azure |
利用開始までの時間 | 即時 | 即時 | 即時 | 即時 |
*3: 2010年秋にデベロッパプレビュー版公開予定。
[参考資料]
・Google Google App Engine
http://code.google.com/intl/ja/appengine/
・Salesforce.com Force.com
・Microsoft Windows Azure
まとめ
以上、「クラウドを名乗る条件」という視点から、日本国内および米国のクラウド事業者を調査、比較してきた。こうやって見てみると、IDCやForresterなどが公表している日本のクラウド市場規模の数字は、当てにならない気がしてくる。各事業者が、クラウドというキーワードでごちゃ混ぜにして数字を積み上げている可能性があるからだ。例えば、VMwareを使った顧客IT資産の仮想化統合のSE費やハードウェア費を「プライベートクラウド構築事業」としたり、あるいは従来のASPを「クラウド型サービス」や「SaaS」としたりして、国内クラウド市場規模の数字に組み込んでいるのではないだろうか。そうこうしているうちに、IaaSはともかく、PaaSも米国のサービス事業者にごっそり持って行かれる予感がしてならない。