近年、クラウドサービスを利用する企業や組織が増えています。ユーザーは多くの恩恵を受けられますが、クラウドサービスの種類によってできることの違いや、管理負担についても知っておく必要があります。そこで、ここではクラウドサービスの種類について解説していきます。
クラウドサービスの主な種類
従来、パソコンを用いて事業を運営していた企業は、ハードウェアやOS、アプリケーション、データなど、すべてを自社において管理する必要がありました。これらを一つひとつ管理していくことはそれほど大変なことではありませんが、規模が大きくなるにつれ、そのすべてを管理しようとすると、時間的、人的問わず、さまざまなコストがかかってきます。
そんなときに現れたのが、クラウドサービスです。クラウドサービスを利用すれば、事業に必要なシステム環境を自社で保有することなく、インターネットを介して整えられます。有名なサービスにMicrosoft AzureやAWS(Amazon Web Services)があります。Microsoft Azureで受けられるサービスの一覧を見ると分かるように、ストレージに関することから人工知能や機械学習、IoTに関わる機能まで、会社を運営していくにあたって必要なサービスが豊富に提供されています。
しかし、ユーザーごとにクラウド提供してほしいサービス範囲は異なるもの。ソフトウェアの利用さえできればいいというケースもあれば、アプリケーション開発のための環境を提供してほしいというケース、また、クラウド環境でサーバー構築したいというケース、Webサイトをホスティングしたいというケースもあるでしょう。こうした需要に応じ、クラウドサービスを提供するベンダーはインフラ提供、プラットフォーム提供というようにサービスにカテゴリーを設けて提供するようになったのです。主なカテゴリーには「SaaS」「PaaS」「IaaS」の3つがあります。それらに加え、近年、「サーバーレス」という提供形態も注目され始めてきました。
SaaS(Software as a Service)
SaaSはSoftware as a Serviceの略で、「サース」と読みます。「サービスとしてのソフトウェア」と訳されるように、パッケージソフトウェアが提供するためのクラウドサービスです。ベンダがソフトウェアアプリケーションとインフラ等の管理を行い、セキュリティパッチの適用やバージョン管理といった広範な保守作業を担います。そのため、ユーザーは必要なソフトウェアを選択するだけで簡単にサービスを利用できます。インターネット環境さえあれば、自身のPCやスマホ、タブレット等のWebブラウザを使って接続することができます。
PaaS(Platform as a Service)
PaaSはPlatform as a Serviceの略で、「パース」と読みます。「サービスとしてのプラットフォーム」と訳され、ユーザーはアプリケーションの実行環境を提供されることで自身のアプリケーションを構築できるようになります。アプリのテスト・配信・管理環境まではサービスは多岐にわたりますが、アプリについては自ら設計するため、この点、すでに存在しているソフトウェアを利用するSaaSとは性質が異なります。PaaSでは、開発のために本来準備しなくてはならないサーバーやストレージ、データベース、ネットワーク等基盤となる部分について管理する必要がありません。そのおかげで、Webアプリやモバイルアプリ等の作成に専念できるようになります。
IaaS(Infrastructure as a Service)
IaaSはInfrastructure as a Serviceの略で、「アイアース」または「イァース」などと読みます。「サービスとしてのインフラストラクチャ」と訳され、CPUやストレージ等のインフラがサービスとして提供されるようになります。ユーザーはOSやミドルウェア、ストレージ容量などを選ぶ形でサーバー環境を構築していきます。
サーバーレス
PaaSに近いタイプのクラウドサービス。アプリの機能のビルドに重点が置かれ、ベンダがサーバーやインフラストラクチャの管理、セットアップ、キャパシティプランニング等を行います。ユーザーがサーバー管理をしなくていいため、サーバーレスと呼ばれます。
PaaSとの相違点はリソースの使用の方法・タイミングなどにあります。PaaSの場合、基本的にはリクエストリプライ方式でリソースを使用するため、ユーザーからの要望があるたびにアプリケーション全体が起動されます。これに対しサーバーレスでは、イベントドリブン方式が採られているので、設定されたイベントが発生したときに限ってアプリケーションが起動、反応します。これによって、柔軟なスケーリングが実現できるというわけです。これらの違いはコストに影響してくるため、サーバーレスはサービスの利用量の変動が激しいなど、短期間に集中するタスクや不定期に起こるタスクへの対応に適しています。例えば、不定期にタスクが集中しやすいECサイトなどでは、ぜひ利用したいサービスとなるでしょう。
PaaSはサーバーレスに比べて常時起動させる必要性が高く、規模の大きなサービスでの利用に適しています。長時間動かし続けたい場合や、コストの変動を小さくしたいときにもうってつけです。
クラウドサービス利用による管理負担
企業等が自社サービスを一般に公開し運用していく場合、従来のオンプレミス環境であれば、ハードからアプリの管理まですべてを社内で行う必要がありました。大別すると、「ハードウェアおよび仮想化環境のネットワーク管理」「OSやミドルウェアの管理」「アプリケーションの管理」、さらに実際の運用の際にはセキュリティ面にも配慮が必要ですので「マルウェア対策および迷惑メール対策の管理」も行うことになります。クラウドサービスを利用しなければ、これだけの負担を負うことになるのです。当然、これらの管理を行う専用の担当者を置く必要性も生まれ、全体としての管理工数も膨れ上がっていきます。
しかし、クラウドサービスを利用することで、管理負担は軽減されます。では、各クラウドサービスの種類に応じて、ユーザーはどこまで負担をすることになるのでしょうか。
SaaS利用でかかる管理負担
SaaSは最も管理負担の小さいクラウドサービスです。ユーザーは使いたいソフトウェアを選択するだけなので、ほぼすべての管理をベンダに任せることができます。既存の機能を利用するだけでよく、自社のサービス提供に専念できるでしょう。一方でハードに関すること、OS等に関する管理についてユーザーは手が届かなくなります。その分、自由度は高いとはいえず、提供されるサービスの範囲内でしか活用できません。ただし、ベンダやサービスの内容によってはマルウェア対策および迷惑メール対策の管理をユーザー側が行えるケースもあります。
PaaS・サーバーレス利用でかかる管理負担
PaaSを利用する場合、SaaSに比べてユーザーができることが増える一方、その分、管理負担は増します。ハードやOS等に関することはノータッチでも、アプリ開発のプラットフォームが提供されることになるため、アプリケーションの管理についてはユーザー側が管理しなくてはなりません。マルウェア・迷惑メール等の対策管理についてはベンダによっても変わってきます。サーバーレスについてもほぼ共通しており、サーバー環境の管理負担はありませんが、アプリケーションについてはユーザーが管理することになります。
IaaS利用でかかる管理負担
IaaS利用では、SaaS・PaaSよりさらに管理負担は増えます。といってもオンプレミス環境などに比べるとハードウェアおよび仮想化環境のネットワーク管理はユーザーがする必要はありません。管理工数も抑えることができます。PaaSと比べると、OSやミドルウェアの管理主体がベンダからユーザーに移るという違いがありますが、その分だけユーザーは自由な設計できるようになるでしょう。
まとめ
クラウドサービスでは、どこまでの範囲でベンダから提供を受けるのかによって種類分けがなされています。SaaSではソフトウェアの提供を受けるのみ、PaaSではアプリ開発環境が提供され、IaaSではOS等のインフラが提供されるようになるという違いがあります。クラウドサービスを利用したい場合には、どこまでを自社で管理する必要があるのか確認したうえで選択していくといいでしょう。