PR

Windows Azureコンピューティングサービス

2010年11月11日(木)
大和屋 貴仁

Windows Azureコンピューティング サービス

Windows Azureコンピューティング サービスは、アプリケーションを実行するサービスである。Windows Serverをベースに構築されているサービスなので、Windows Server上で動作するアプリケーションの多くが動作する。コンピューティング サービスの目的は、膨大な数のユーザーによる同時アクセスを実現することである。同時アクセスを実現する手段として利用されているのが、スケールアウトである。スケールアウトは、処理台数を増やし、処理できる同時アクセス数を増加させる方法である。

図4:スケールアウトとスケールアップ

独自アクセス数の大規模事例の参考情報として、マイクロソフトのWindows Azure採用事例を2つ紹介する。1つ目が、Internet Explorer 9 Betaの紹介サイト「Beauty of the Web」である。2つ目が、「Microsoft ITがmicrosoft.comのWindows Azure Platformへの移行開始(英語)」のドキュメントである。

Windows AzureコンピューティングサービスはRoleインスタンス上で動作する。Firewallとロードバランサーの背後に、Roleインスタンスが展開される。Roleインスタンスを展開する際に、インスタンスの役割(Role)と、インスタンスの性能(Size)を指定する。インスタンスの役割には、Web RoleとWorker Roleの2種類のRole(役割)がある。性能向上のために、Roleに特化した仮想マシンが展開される。

Web Role
HTTPとHTTPSリクエストを受け付け、IISでウェブアプリケーションをホストすることができる。
Worker Role
Web Roleとは違ってIISでホストされず、Windowsサービスやタスクを動作せることができる。JavaやPHP、MySQLなどのアプリケーションをホストしたり、非同期処理を行う。

図5:Windows Azure コンピューティング サービス(クリックで拡大)

インスタンスの性能は、仮想マシン(VMs)のスペックに当たる。アプリケーションが必要とする性能に応じて選択する。提供されている性能は、4種類でSmall、Medium、Large、Extra largeから選択する。それぞれの性能については、下記表を参照して欲しい。CPUコア数を選択するときには、複数コアを持つデスクトップ上で速く動作しないアプリケーションを、クラウド上で複数コア上で動作させても、速くなることはないっと言うことを思い出すと良い(インスタンスのSize選択については、TechDays 2010の「Windows Azure Platform 徹底検証」を参照)。

インスタンスの性能
インスタンスの性能(Size) CPU メモリ インスタンス 容量 I/O性能 ネットワーク コスト
Small 1.6 GHz 1.7 5GB 225 GB 普通 共有NW 1倍
Medium 2 x 1.6 GHz 3.5 GB 490 GB 高速 共有NW 2倍
Large 4 x 1.6 GHz 7GB 1,000 GB 高速 共有NW 4倍
Extra large 8 x 1.6 GHz 14GB 2,040 GB 高速 専用NW 8倍

Web Role概要

Web Roleは、(IIS 7ベースの)IISでアプリケーションをホストする。外部からの通信は、Firewallとロードバランサで、プロトコルとポート番号がフィルタリングされる。リクエストを受け付けるプロトコルはHTTPとHTTPSである。HTTPとHTTPSは、どちらか一方のみの使用、または両方を使用することができる。リクエストを受け付けるポート番号は、80番と443番ポートが一般的であるが、別の番号を指定することもできる。設定したプロトコルとポート番号以外は、Firewallとロードバランサでフィルタリングされ、ホストしているアプリケーションにリクエストが送信されない。セキュリティ上、DDOS対策となっている。

図6:エンドポイントイメージ図

Worker Role概要

WebアプリケーションをホストするWeb Roleに対して、Worker Roleは、非同期処理や長時間実行するタスクなどを実行する。Worker Roleは、IISにホストされないが、外部からリクエストを受け付けたり、Web Roleと連携することができる。Worker Rollでは、様々なアプリケーションを動作させることができ、JavA + TomcatやPHP、MySQLなどが動作する。Worker RoleでWebサーバーを動作させた人もいる。(参考:Tech Fielders コラム「Windows Azure の Worker Role で Web サーバーを実装する」)

Windows Azure 最新トピックス

Windows Azure platformは、クラウドサービスで提供されており、管理&運営をマイクロソフト自身が行っている。その為、オンプレミス製品に比べて、機能拡張が速く数か月単位で更新されている。またマイクロソフトも力を入れている為、次から次へと情報提供が行われている。それらを逐次連載内では紹介しきれないので、末尾でまとめて紹介していく。

Install Maniax 4 Azure祭り 碧空の勇者たち
参加受付が11/17までのインストールマニアックス4。優勝者は、マイクロソフト本社レッドモンドにてWindows Azure責任者とディスカッションの機会が与えられるそうです。
ゼロからはじめるWindows Azure
環境の準備から、Azureを利用するための申込み、アプリケーション(WordPress)のインストールまでを紹介する連載が開始しています。すでに第三回まで公開されています。
Windows Azure用アプリケーション開発 Step-by-Step チュートリアル ガイド
コンサルティング サービス提供のWindows Azureアプリケーション開発のチュートリアル。
Windows Azure上でのWebアプリケーション開発基礎
コンサルティング サービス提供のWindows Azure開発ノウハウ。実案件を通して蓄積されたノウハウを提供する有償サービスとして提供されてきた資料の一角が無償公開されています。
PDC 10
先日アメリカで実施された開発者向けイベント。Windows Azure Platformに関する新情報や今後リリースされる機能について紹介されています。英語セッションなのですが、今回は日本語同時通訳がキーノートや一部セッションで行われました。プレーヤーで切り替えられるので、確認してみてください。

Hyper-VやSQL Serverなどの技術に興味を持ってきた自称SE。最近は、SQL Serverをベースに開発されたクラウドデータベースのSQL Azureに熱中している。一方で、Windows Phone 7にも興味を惹かれており、妥協案としてWIndows Phone 7でSQL Azureと連携させようと企む日々。

連載バックナンバー

Think IT会員サービス無料登録受付中

Think ITでは、より付加価値の高いコンテンツを会員サービスとして提供しています。会員登録を済ませてThink ITのWebサイトにログインすることでさまざまな限定特典を入手できるようになります。

Think IT会員サービスの概要とメリットをチェック

他にもこの記事が読まれています