私たちユーザーが利用するアプリケーション、例えば、Amazonのようなショッピングサイト、TwitterやFacebookなどのSNSなどでは普段はあまり意識しませんがその裏側にはサービスを支える基盤(インフラストラクチャ)やソフトウェア群があります。
まず次の図を見てください。
オンプレミス/IaaS/PaaS/SaaSごとにどこまでがクラウド事業者から提供され、どの部分を利用者が管理すべきかを表しています。
管理範囲 | オンプレミス | IaaS | PaaS | SaaS |
データ | o | o | o | o |
アプリケーション | o | o | o | x |
ランタイム | o | o | x | x |
ミドルウェア | o | o | x | x |
OS | o | o | x | x |
仮想マシン | o | x | x | x |
物理サーバ | o | x | x | x |
ネットワーク | o | x | x | x |
ストレージ | o | x | x | x |
WindowsServerやLinuxなどOSを動かすための仮想マシン、ネットワーク、ストレージなど
基本的な基盤部分に加えて、ミドルウェア、ランタイム、アプリケーション、データなど
レイヤー構造(層)で表現される点をイメージしておくと読み進めやすいと思います。
IaaSは、イアース/アイアースと読みます。
サーバやストレージ、ネットワークなどの物理的なハードウェア資源や仮想化を提供するサービスです。
例えば、仮想サーバやコンテナなどのコンピューティング機能、ディスクや共有サーバなどのストレージ機能、ルータやファイアウォールなどのネットワーク機能が提供されます。
また、仮想サーバではWindowsまたはLinuxのどちらかのOSを選択することができます。利用者がOSをインストールするのは煩わしいため、OSイメージもクラウド事業者から提供されます。
Azureには次のようなIaaSのサービスがあります。
PaaSは、パースと読みます。
IaaSで提供されるインフラ部分に加えて、アプリケーションを動かすためのプラットフォーム一式を提供するサービスです。
例えば、ブラウザからのHTTPリクエストに応答するIISなどのWebサーバ機能、構造化されたデータを保存するSQLServerなどの
データベース機能、Javaなどのプログラムを動かすソフトウェア機能が提供されます。
これらアプリケーションを動かすために必要でOSの機能にないものを「OSとアプリケーションの中間」という意味でミドルウェアと呼びます。
(補助的なソフトウェアをランタイムと呼ぶこともあります)
SaaSは、サース/サーズと読みます。
アプリケーションそのものを提供するサービスです。
新たにアプリケーションを開発することなく、契約すれば使いたい機能をすぐに使い始めることができる点がメリットです。
身近なものだと、SaaSには次のようなサービスがあります。
AzureブランドとしてのSaaSの提供はありませんが、特徴についてはAZ-900試験で問われます。