タブの始まり
上記リンクをクリックすると、ページ内の該当箇所に移動します
この記事は、「羅針盤—官公庁IBM通信」第4号(2009年6月号)に掲載された記事を転載したものです。
日本アイ・ビー・エム株式会社 技術理事 公共事業 官公庁担当CTO 長島 哲也
ネットワークのどこかに浮かぶ雲(=クラウド)から、IT資源を必要なときに必要なだけ使用することができる新たなITの仕組み「クラウド・コンピューティング」への関心が急速に高まっています。民間では、すでにクラウド専用サービスが実用化され、実業務で利用されています。
クラウド・コンピューティングは従来のコンピューターやシステムに置き換わり、課題を解消する万能の存在となり得るのでしょうか?
ここでは、クラウド・コンピューティングの技術的な特性に注目し、官公庁におけるクラウド・コンピューティングの活用について考えます。
すべては雲の向こうに?─2~5年後のシステムの行方
現在、クラウド・コンピューティングという言葉の定義や解釈はさまざまですが、大まかに次のようなイメージを持たれているようです。
「ネットワーク上のサイバー空間に存在する巨大なコンピューター(クラウド=雲)にPCや携帯情報端末等のデバイスから接続し、アプリケーションもデータもすべて利用できる環境」
長期的な視点で展望するならば、クラウド・コンピューティングは、ITの業界構造および技術やアーキテクチャーを大きく変える一つの潮流となりつつありますが、この先2~5年後、世の中に存在するすべてのコンピューターや情報システムはどのようになっているでしょうか? 一部では、「クラウド・コンピューティングを利用すれば、近い将来、自前
でITシステムを持つ必要がなくなる」、あるいは「インターネット上のサービスを利用するだけですべての業務ができるようになる」といった声もあります。
![[図1]クラウド・コンピューティングの種類](i/kancho_cloud200907_1.jpg)
[図1] クラウド・コンピューティングの種類
しかし、それは現実的でしょうか? インターネット上のクラウド(一般的に「パブリック・クラウド」と呼ばれる)を使って運用した方が都合の良い業務、個別データセンター(「エンタープライズ・プライベート・クラウド」 以下、プライベート・クラウドと呼ぶ)で運用すべき業務、および、それらをハイブリッドで使うことで最適化できる業務、の3つを使い分けるのが最適だと考えます。[図1]
クラウド・コンピューティングの得手、不得手
では、パブリック・クラウドとプライベート・クラウドをどのように使い分ければよいでしょうか。
クラウド・コンピューティングの実態は、全世界の業務処理を一手に担えるような巨大なコンピューターではありません。実は、数万台から数十万台といった膨大な数のサーバーやストレージを仮想化してプール化し、あたかも1台のコンピューターのように見せかけているに過ぎません。すなわち、雲の向こう側では超並列の分散データ処理が行われているのです。このような超並列の分散データ処理の世界では、データの一貫性を保つ、すなわちトランザクション処理における情報の整合性(ACID特性*)を確保しづらい状態にあります。
これは一般に「CAP定理*」と呼ばれ、パブリック・クラウドの特徴(この特性をACID特性に対してBASE特性*と呼ぶ)を示すものです。(*注:技術解説コラム参照)
パブリック・クラウドにはこのような特徴があるため、トランザクション処理における情報の整合性を確保することが必要なアプリケーションに適用するには、アプリケーションの構造やデータ処理方式などを根本的に作り替える必要が生じます。それには多大な工数と時間を要するため、従来の処理方式のまま運用した方がよいシステムが存在することは明らかです。もちろん、パブリック・クラウドにも多くのメリットがあります。すなわちトランザクション処理における情報の整合性確保をあまり必要としない業務(追加、変更は特定の一人が行い、他の多くの人は参照のみ)に対しては、パブリッ
ク・クラウドが有益でしょう。例えば、メールやスケジュール管理、ファイル共有などは、この範疇のアプリケーション群と呼んでもよいのではないでしょうか。インターネットにつながる環境さえあれば、自前でサーバーやストレージなどの設備を用意することなく、低コストでそれに見合ったサービス・レベルのサービスを受けることができます。
エンドユーザーの課題はクラウドですべて解決?
ここで少し視点を変えて、クラウド・コンピューティングへのニーズを掘り下げてみたいと思います。
お客様のデータセンターでは、業務ごとにアプリケーションを稼働させるサーバー群を調達してきた結果、1,000台規模のサーバーが導入されています。しかし、サーバー利用の共通化・平準化があまり進んでいないため、個々のサーバーの利用率は良くて50%、悪くて10%以下というのが実態です。IT部門では、このような状況を打破すべく、サーバー有効利用の方策を模索してきました。
一方、エンドユーザーはIT部門に業務アプリケーションの開発や機能拡張を依頼しますが、IT部門は数多くのバックログを抱え、十分な予算を確保することも困難な状況にあるため、その要求に十分に応えることができません。そこで普及したのがエンドユーザー・コンピューティングでした。このコンピューティング・モデルは、情報の管理や業務に合わせた処理の修正をエンドユーザー自身が行わなければならないという制約を抱えていたため、便利な反面、急速にレガシー化(※その仕組みは必要だが、処理も管理も行き届かない状態)してしまいました。一方、90年代初頭から徐々に普及してきたインターネット技術を用いたコンピューティング・モデルは95年~2005年にかけたe -ビジネスからWeb1.0の時代、さらに使いやすさを飛躍的に高めたクライアント環境(SNS、ブログ、Ajaxなど)が用いられるようになったWeb2.0へ進化してきました。
こうした中で登場してきたのが、クラウド・コンピューティングです。パブリック・クラウドとして提供されたSaaS(Software as a Service)、PaaS(Platform as a Service)やIaaS(Infrastructure as a Service)といったサービスを導入し、エンドユーザーが求めるシステムをインターネット上のサイバー空間から短期間で安価に構築/運用しようという動きです。
とはいえ、そこには全く問題がないわけではありません。パブリック・クラウドでは、一時的なアクセスの跳ね上がりなどに合わせて、柔軟かつスケーラブルにIT資源を増減できるといったメリットを享受できる反面、実際にどこのコンピューター上にデータが置かれているのかという物理的な運用形態は隠蔽されています。これをお客様のセキュリティーやコンプライアンスのガイドラインに照らし合わせたとき、定められたルールから逸脱してしまうケースも少なくないのが現状です。
それでは、外部のベンダーからパブリック・クラウドでサービスを導入するのではなく、IT部門が自社のデータセンターに設置されたサーバーやストレージなどのIT資源を仮想化し、エンドユーザーに対してパブリック・クラウドと同等のサービスを提供できればどうでしょうか。おそらく、ほとんどの問題は解消されるはずです。
