ついにマイクロソフトがクラウド世界に本格参入。 技術プレビュー版がリリースされた「Windows Azure」と 「Azure Services Platform」を概説。
●まだ知らない人のための最新Azure入門 - Build Insider
●ここまで進化した、Azure Webサイトの世界観(2014年7月版) - Build Insider
●連載:Windows Azureモバイルサービスで作る簡単スマートフォンアプリ - Build Insider
●Microsoft Azureプレビュー・ポータルの機能とは? - Build Insider
●特集:Windows Azureメディア・サービスを利用したストリーミング配信 - Build Insider
●連載:Microsoft技術におけるアイデンティティ連携開発のいま - Build Insider
●Vittorio Bertocci氏インタビュー: 開発者にとってのWindows Azure Active Directoryの役割と今後の展開 - Build Insider
先月(2008年10月)の最終週、マイクロソフトによる開発者向けカンファレンス「PDC(Professional Developers Conference) 2008」が開催され、クラウド・コンピューティングに関する新たな発表がなされた(ちなみに、このPDC 2008の内容を凝縮した国内向けカンファレンスとして「Tech・Days Japan 2009」が1月27日〜28日にパシフィコ横浜で開催予定)。「Windows Azure」と「Azure Services Platform」である(“Azure”は日本では「アジュール」と読む。英語読みは「アジュア」)。発表当時はさまざまなメディアで報道されたので、すでに認知している人は少なくないだろう。
本稿は、この2つを簡単に紹介する。およそ1カ月前のPDC開催直前に「マイクロソフトが本気モードで進めるクラウド戦略」という記事(以降、「前回の記事」と記述)を公開しているが、本稿で想定する読者像は、これを一読しておりクラウド関連の用語を一通り理解している、もしくはそれと同等のクラウド・コンピューティングに関する知識を持っている方で、これを前提に解説していく。なお、以下でいくつか外部サイトへのリンクも出てくるが、すべて英語で書かれたサイトである(現時点で、ほぼ英語の情報しかないため)。
まずはWindows Azureについて説明しよう。Windows Azureは「クラウドOS」と説明されているが、そもそもクラウドOSとは一体何なのだろうか?
これを理解するために、若干、回り道となってしまうが、オンプレミスの情報システムが動作するプラットフォーム/実行環境について考えてみよう。
●従来型コンピューティングにおける情報システムの実行環境
次の図を見てほしい。
説明するまでもないと思うが、誤解を防ぐため、図の意味について簡単に説明しておこう。「情報システム」を動作させるには、WindowsやLinuxなどの「OS」(オペレーティング・システム)が必要だ。さらに、情報システム(アプリケーション)とOSを繋ぐためのインターフェイスが必要で、これはWin32 APIや.NET Frameworkなどの「API」として提供される。
●クラウド・コンピューティングにおける情報システムの実行環境
従来型コンピューティングの場合は上のとおりだが、これがクラウド・コンピューティングではどうなるか。次のようになる(マイクロソフトの用語で記述している)。
「ビルディング・ブロック・サービス」という用語については前回の記事でも説明したが、クラウド版のAPIだと考えるとよい。だとすればクラウドOSは、クラウド版のOSである。
そして、図中のカッコ内に記述した具体的な製品技術が、PDC 2008で大々的に発表された。まさしくこれらは、マイクロソフトによるクラウド・コンピューティングの基盤技術(Foundation Services)である。クラウドOSの具体的な製品技術が「Windows Azure」で、クラウド上にサービスを構築するための基本機能を提供してくれる。そして、ビルディング・ブロック・サービスの具体的な製品技術が「.NET Services」「SQL Services」「Live Services」などで、これらのサービスは主に業務アプリケーションに役立つさまざまな機能を提供してくれる。
いずれも詳しくは後述するが、これらの基盤技術をまとめて「Azure Services Platform」とマイクロソフトは呼んでいる。この基盤技術のみを抜き出したのが、多くのメディアやマイクロソフトにより呈示されている次のAzure Services Platformの構成図である。
ここで勘違いしないように注意してほしいのは、これらすべてのサービスを活用して開発を行わなければならない、というわけではないことだ。従来の開発でも.NET Frameworkの全機能を使うわけではないように、Azure Services Platformでも必要な機能を必要な場面で使えばよい。従って、Windows Azureでのアプリケーション構築を試してみるなら、まずはWindows Azureの機能のみを使って始め、必要に応じて.NET ServicesやSQL Servicesを習得すればよいだろう。
●Azure Services Platformとソフトウェア+サービス戦略の関係
ここで気になるのが、1年前くらい前からマイクロソフトが推進しているソフトウェア+サービス戦略とAzure Services Platformの関係だ(ソフトウェア+サービスについては前回の記事で説明した)。
ソフトウェア+サービス戦略において、現時点でソフトウェア側は.NET Framework(すでにバージョン3.5 SP1)などにより非常に強力なプラットフォームを提供しているといえる。しかし、サービス側のプラットフォームは十分ではない。そこで、マイクロソフトはこのサービス側を強化するためのプラットフォームを提供することにした。これがAzure Services Platformなのである。
もちろん、「Azure Services Platformでは常にソフトウェア+サービス戦略にのっとったシステムを作らなければならない」という意味ではない。そうではなく、そういったシステム構成を選択可能にする機能と柔軟性を、Azure Services Platformが備えているというところが重要である。すべての機能をクラウド上に乗せた完成サービスを作成することも可能であるし、既存のオンプレミス・ソフトウェアから、クラウド化が可能なコモディティ(=差別化されていない共通的な機能)の部分のみを順次クラウドに移行していくようなこともAzure Services Platformなら可能であるだろう。
それでは次のページでは、マイクロソフトによるクラウド・コンピューティングで最も注目されているWindows Azureの機能概要について説明していこう。
なお、Windows AzureおよびAzure Services Platformは現時点でCTP(コミュニティ技術プレビュー)版のみが公開/提供されており、以降の記事内容はこのCTP版に基づいて執筆している。正式版のリリースは翌年(2009年)下半期を予定しているようだ。
Copyright© Digital Advantage Corp. All Rights Reserved.