ITに関わる方は最近クラウドという言葉を耳にされることが多いのではないかと思います。
クラウドといえば『特別な機器などがなくてもインターネットから何かしらのサービスを受けられる仕組み』とざっくり理解されている方は多いかと思います。
この記事では、クラウドのより正確な定義をはじめ、企業で利用される様々なクラウドの利用形態とその特徴、オンプレミスとの違いや導入のメリットなどを説明します。
網羅性を重要視したためかなりのボリュームとなっていますが、この記事一本でクラウドの概要を理解できるように構成していますので、お付き合いいただければ幸いです。
この記事はこんな人に向けて書いています。
- クラウドという言葉は聞いたことがあるが、詳しくはわからない
- クラウドが他のITサービスとどう違うのか、いまいち釈然としない
- 上司からクラウドを検討するように言われている
- 同業他社がクラウドを始めたというニュースを耳にしたので、検討してみたい
「クラウドコンピューティング」、って?
まずは、この記事の前提を押さえるためにも『クラウドとは何ぞや』というところから始めましょう。
簡単に言えば、クラウド コンピューティングとはコンピューティング サービス (サーバー、ストレージ、データベース、ネットワーク、ソフトウェア、分析、インテリジェンスなど) をインターネット (“クラウド”) 経由で配信して、迅速なイノベーション、柔軟なリソース、スケール メリットを提供することです。通常は使用するクラウド サービスに対してのみ支払い、運用コストを削減し、インフラストラクチャをより効率的に実行し、ビジネス ニーズの変化に合わせてスケーリングするのに役立てます。
https://azure.microsoft.com/ja-jp/overview/what-is-cloud-computing/
この引用によれば、クラウドとはサーバーのようなコンピューティングリソースをインターネット経由で配信するもの、と言えそうです。
しかし、ネットワーク経由でサービスを受けられるのがクラウドならホスティングやレンタルサーバーもクラウドなのか?はたまたDropboxやOffice365のようなサービスはクラウドなのか?と腹落ちされていない方もいらっしゃるかとも思います。
狭義のクラウドコンピューティングは、米NISTの定める定義に依拠します。この記事でも、特に注釈のない限り、「クラウド」はこの定義に則ることとします。

この文章から抜粋しますと、クラウドとは下の表のような特徴で定義づけられます。
※長いため、一部中略させていただきます。
特徴 | 内容 |
オンデマンド・ セルフサービス | ユーザは、各サービスの提供者と直接やりとりすることなく、(中略)コンピューティング能力を一方的に設定できる。 |
幅広いネットワークアクセス | コンピューティング能力は、ネットワークを通じて利用可能で、標準的な仕組みで接続可能であり、そのことにより、様々クライアントプラットフォームからの利用を可能とする。 |
リソースの共用 | サービスの提供者のコンピューティングリソースは集積され、複数のユーザにマルチテナントモデルを利用して提供される。(中略)リソースの例としては、ストレージ、処理能力、メモリ、およびネットワーク帯域が挙げられる。 |
スピーディな拡張性 | コンピューティング能力は、伸縮自在に、場合によっては自動で割当ておよび提供が可能で、需要に応じて即座にスケールアウト/スケールインできる。(略) |
サービスが 計測可能であること | クラウドシステムは、計測能力を利用して、サービスの種類(ストレージ、処理能力、帯域、実利用中のユーザアカウント数)に適した管理レベルでリソースの利用をコントロールし最適化する。(略) |
ざっくりとした理解
上の定義ですと少々文章も長くて分かりにくいかと思いますので、実例を踏まえて理解していきましょう。
たとえば、多くの企業で利用されているホスティングサービス。どこかのデータセンターにあるサーバを借りて使うもので、プライベートクラウドと呼ばれることもあります。
ホスティングサービスの多くは開始に際して業者と契約を結んだり、あるいは契約には期限が定まっていたりします。また、多くのリソースを調達したい時は都度人間の手を介する何らかの操作が必要です。
上記の表に照らし合わせると、これは「オンデマンド・セルフサービス」「スピーディな拡張性」に該当しません。よって、ホスティングサービスはクラウドではないと言う事ができます。
また、DropboxやEvernoteなどのいわゆるクラウドサービスは、この定義ともまた違う、SaaSという提供モデルになっていることが大半です(後述します)。
現在、最も厳密な意味でこの定義に沿うクラウドは世界で3つしかないと言われています。私も同じ考えです。
その3つとはすなわち、Microsoftの”Microsoft Azure”、Amazon Web Service、Googleの”Google Cloud Platform”です。これについては後ほど項を設けて説明しています。
なんでクラウド(雲)なの?
もうすでにクラウドという用語は一般的なものになりましたが、そもそもなぜこうしたサービスをクラウド(=雲)と呼ぶようになったか、その語源が気になる方もいらっしゃるかと思います。
用語の初出は1996年の米Compaq社の資料とのことですが、あまりはっきりとはしません。そもそもIT業界では古くからネットワークのイラストを雲のようなもくもくした形で書くことが多かったのです。
つまりはじめの意味では雲=ネットワークでそれがのちにインターネットと同一視されるようになりました。
今でいうクラウドはそのネットワークの雲の中にあらゆるコンピューティングリソースが存在することを説明したメタファーから来ているのではないかと思います。
クラウドの利用形態3パターン
以上がクラウドの定義と由来です。次にクラウドの提供パターンとそれぞれの特徴について説明します。
下のMicrosoft社の図が分かりやすいためお借りしています。

この図の一番左、On Premises(オンプレミス)と呼ばれるものがいわゆる普通の物理サーバで、青く塗られているところは所有者(ユーザ)の責任範囲を示しています。
オンプレミスから右に順番に、サーバのリソースと仮想化ソフトウェアまでを提供するInfrastructure as a Service(IaaS)、IaaSに加えてOSやフレームワークまでを提供するPlatform as a Service(PaaS)、あらかじめユーザが利用できるソフトウェアをセットアップした状態で提供されるSoftware as a Service(SaaS)の3つのモデルがあります。
基本的には右に行けば行くほどユーザが担当する(責任を持つ)領域が減るので管理運用が楽になる一方、構成等はベンダ側にゆだねる部分が出てくるので自由度が下がります。
ここから、それぞれのモデルと利用用途について説明します。
IaaS(Infrastructure as a Service、イァース)
IaaSとは、仮想化技術を利用してハードウェアリソース(vCPU,vRAM,ストレージ)などのITインフラを提供するモデルです。AWSのEC2やAzureのVirtual Machine(VM)などが代表的です。
空っぽのサーバを使うのに近いため、自由度はとても高いですが、あまりにバージョンの古いOSなどは立ち上げられません。この辺が物理サーバとは違うところです。
OSやDBMSなど必要なものをインストールしないと使えませんが、ベンダのコンソールでIaaSを立ち上げようとすると選択画面でOSを選んでインストールするくらいのところまでは完了します。
OSはWindowsとLinux(RHEL、Cent OS、Ubuntu、SUSE、など)を大抵サポートしています。
また、オンプレミスで有名なVMWareの仮想化基盤で動いているリソースをまるっとAWSのEC2上に引っ越せるVMWare on AWSなどのサービスもあります。
PaaS(Platform as a Service、パース)
PaaSとは、IaaSに加えてアプリケーションを実行するための環境までを提供するモデルです。Azure AppserviceやSQL Database、GCP Big Queryなどがあります。個人的には最も各社の戦略や考え方が反映されるサービスレイヤだと思っています。
IaaSは空っぽのサーバに近く、自分で構成して好きに使うと説明しましたが、PaaSの多くは特定の用途やユースケースに合うようにチューニングされています。
例えば上記のAzure Appserviceは、同じMicrosoftの.NETフレームワークやPHP、Ruby、Pythonなどのアプリケーションをホストでき、簡単にWebアプリケーションをデプロイして運用することを目的に作られています。
GCPのBig Queryはデータウェアハウスのサービスで、数億~数十億レコードもあるような巨大な構造化データの分析に向いています。一方で、数万~数十万程度のオーダーであればBig QueryよりもAWSのRedshiftの方が動作が早い、などとも言われています。
このように、PaaSはIaaSでもできることをより簡単にしてくれたり、特定の条件下で最大のパフォーマンスを発揮するように作られているサービスです。
当然ながらベンダ側が想定していない使い方をするとカタログどおりのパフォーマンスがでなかったり、様々な条件でユーザ側が折れなければいけないケースもあります。
しかし、逆に言えば正しい用途で使えば非常に効果を発揮してくれますし、OSやミドルウェアまでがベンダの責任範囲に入ってきますので自社で運用すべき項目が削減できます。
このように、オンプレミスであれば自分で管理せざるを得なかった領域までをベンダ側に任せられ、SLAや可用性が担保されている機能を『マネージド』といい、クラウドのメリットを検討する上で非常に大きな要素になってきます。
SaaS(Software as a Service、サース)
SaaSはソフトウェアまですべてをベンダ側で構築して提供するモデルです。前述のDropboxやOffice365、Boxなど数多くのSaaS製品が存在します。また、意識しづらいですがGmailやYouTubeもクラウドベースのSaaSと言えます。
SaaSでは完成品のソフトウェアまでが提供されるので、ユーザは使うだけ、あるいはソフトウェアの機能で設定できる範囲までがコントロール可能です。
我々ユーザ側から見ると、SaaSはただ使うだけの感覚なので見落としがちですが、SaaSの多くは何かしらのクラウドにデプロイされていることが多いです。なので実は多くの企業は間接的にクラウドを使い始めていると言えます。
クラウドの特徴
クラウドの提供モデルについて説明したところで、次はクラウドに共通する特徴を学びましょう。
このセクションをご覧いただければ、クラウドとオンプレミスとの大きな違いや、クラウドを利用すべきユースケースについてご理解いただけるかと思います。
5つの特徴
クラウドとオンプレミスとの大きな違いを、5つの特徴から見てみましょう。
初期費用が不要
まず、最も大きな特徴はクラウドではオンプレミスと違って初期費用が掛かりません。
オンプレミスではどうしてもサーバ本体の購入費用や場合によってはデータセンターの費用などが掛かってしまいますが、ハードウェアを購入しないクラウドではこういった料金はかかりません。
また、企業会計的なことをお話すると、クラウドの利用料金は「費用」として計上することが一般的です。
普通のオンプレミスサーバは企業ごとに購入するものなので当然貸借対照表に載り、数年間で償却しますが、クラウドは費用すなわちPLに載ります。従って、クラウドを利用することでバランスシートを小さくするという効果も図ることができます。
(クラウド上に構築したアプリケーション資産や購入済みのライセンスはその限りではありません)

従量課金
初期費用の掛からないクラウドですが、その費用のほとんどすべては利用したサービスの単価と台数、使った時間の掛け算で算出することが可能です。
例えばEC2やVMのような仮想サーバですとインスタンスタイプごとに時間当たり単価が決まっており、それを月に何時間稼働させたかで決まってきます。
ですので、無駄なリソースを使わないようにすればそれだけでコスト削減になりますし、逆に言えば利用料が上がるのはアプリケーションそのものが多くのユーザに利用されていることを意味しますので、ビジネスが伸びていないのにコストばかりかかる、という状況を回避できます。
簡単に調達できるインフラ
クラウドの最大の特徴は、インフラをコードすなわちソフトウェアで制御できる点です(Infrastructure as Codeといいます)。
従来ではサーバを設定するインフラエンジニア、アプリケーションを作るアプリケーションエンジニア、稼働後のサービスを運用するオペレーションエンジニアは明確に区別されていましたが、クラウドでは共通言語(ソフトウェア)でインフラを説明することができますので各ロールの距離がぐっと縮まりました。
Webコンソールまたはコマンドラインインタフェースからインフラを立ち上げることができますので、従来よりも調達の手間とコストがぐっと少なくなったのです。
スケーラビリティ
インフラをソフトウェアで制御できるという事は、明示的に『インフラを状況に合わせ最適化するようなコードが書ける』ことを意味します。
この機能を使うことにより、例えば突然サービスに対し大量のトラフィックがかかった時に自動的にサーバ台数を増やしたり、トラフィックが収まった後は台数を減らしたりすることが可能になります。
この特徴のことを、伸縮自在性という意味のスケーラビリティと一般に呼びます。
余談ですが、AWSにはElastic(=弾力的な)と名前につくサービスが数多くあり、これはクラウドの伸縮自在性によるものです。
開発と市場投入の速度向上
調達の手間が減りエンジニアの協業生産性が上昇するという事は、理論的にアプリケーションのローンチまでの時間が短縮されるという事です。
近年の市場ではサービスの代謝がとても速くなっているため、いいサービスであっても投入時期を逃すと思ったような利益を生みません。一方、旬を過ぎたサービスは早めにクローズしないと不要なコストがかかり続けます。
クラウドを使って開発期間を短縮するという事は、単に人的コストを削減することに留まりません。変化の激しい昨今のビジネスにおいて、機会損失を最小化する能動的なメリットがあります。
クラウドコンピューティングを手掛ける企業
ここまででクラウドの概論と利用形態、共通する特徴について説明しました。このセクションでは、クラウドを手掛ける企業について説明します。
各社の説明に入る前にまず、クラウドプロバイダとしてのビジネスモデルを考えてみましょう。
クラウドというのは大原則として規模の経済が活きるビジネスです。

クラウドは世界中のどこかにある巨大なインフラを仮想化し、仮想ネットワークで区切ってみんなで使う共有モデルです。
クラウドを利用するユーザが増えるとベンダはデータセンター機能を増強する必要がありますが、マルチテナンシーによりインフラが大きくなればなるほど一人当たり原価は下げることができます。
また、仮想化やセキュリティ、第三者機関からの認証などの共通部分はユーザの数にも比例しませんので利用者が多ければ一人当たりの負担額は小さくなっていきます。
一人当たりの原価が下がれば当然利ざやを多くとることができますし、サービスの値下げを行う余裕も出てきます。
実際、ここに登場するような大手ベンダは十数年のクラウドの歴史ですでに数十回にも及ぶ値下げを敢行しています。
サービスが値下がりすると当然競合に対し優位性が生まれますので、より多くのユーザを獲得することが見込めます。
こうした好循環を回すため、各クラウドベンダは毎年巨額の投資も行っています。
また、裏を返せばこれは巨額の投資に耐えユーザを獲得する力を持った企業しかクラウド市場で生き残るポテンシャルを持たないことを意味します。
しかも、クラウドは最先端のハードウェアとソフトウェアで作られますので、自然とクラウドプロバイダになり得るのは世界的に大きなテックカンパニーに限定されます。
3大メガクラウド
上記のビジネスモデルも踏まえ、特に大きな3つのクラウドプロバイダと、各社が手掛けるクラウドの特徴について説明します。
今のところ、世界で最も大きいクラウドプロバイダはMicrosoft、Amazon Web Services、Googleの3社で、言うまでもないですがすべて米国籍の企業です。
Microsoft Azure(マイクロソフトアジュール)
Microsoft Azure(以下、単にAzure)はMicrosoft社のクラウドサービスです。
2009年にβ公開され、翌2010年に正式にサービスインしました。日本でも東京エリアと大阪エリアの2か所にリージョンを持ちます(リージョンの意味については後述します)。
旧名はWindows Azureといい、Microsoft前社長のスティーブ・バルマー時代に開始されていますが、一気に勢力を拡大したのは2014年にサティア・ナデラがCEOになった前後からです。
後述するAWSやGoogleのような「クラウドネイティブ」な企業とは違い、クラウドよりはるかに以前からITで圧倒的に強いビジネスを展開しています。
それゆえに、他の二社とはクラウド移行へのアプローチも異なります。
既存のオンプレミスに多くのMicrosoft系ワークロード(たとえば、Windows ServerやSQL ServerやIISや.NETアプリケーション)が動いていますので、まずはそれらをAzureへ引っ越すことを第一歩として位置付けています。
また、多くの企業でOffice365やActive Directoryが動いていますので、それらのサービスを相互に認証させることで社内システムや基幹システムでの導入を促進させています。
さらに、これらのライセンスを所有する企業であることも大きな強みで、オンプレミスのWindows ServerやSQL ServerをAzureへ移行することでライセンス的に大きな割引を行うようなプログラムも展開しています。
Amazon Web Services(アマゾンウェブサービス)
Amazon Web Serviceは、Amazon.comのグループであるAmazon Web Services.comが運営するクラウドサービスです。長いので単純にAWSとよく呼ばれます。本稿でも、以下AWSと併せて表記します。
AWSはもともとAmazonのITインフラ部門がスピンアウトして立ち上がったビジネスです。Amazonの巨大なシステムを支えるITを他社に対しても提供し始めたことに端を発します。
クラウドサービスとしては最も歴史が長く、2004年にサービスが開始しています。日本でも2011年に東京リージョンがローンチされています。
オリジンがAmazonであることから、Amazonと同様に『徹底的に顧客中心であること』をスローガンとして掲げています。クラウド移行の戦略としては、顧客目線でのビジネストランスフォームを達成するための手段としてAWSを位置付けています。
また、クラウド黎明期の日本国内にあっては大企業よりもスタートアップが好んでクラウドを使い始めたことから、テック系のスタートアップ企業で大きなコミュニティを築いています。
Google Cloud Platform(グーグルクラウド)
Google Cloud Platformはその名の通り、Googleが運営するクラウドサービスです。
2008年にApp EngineというAzureのWebappsのようなWebアプリケーションをホストするためのPaaSをリリースしたのが始まりです。
今ではAzureと同様に東京エリアと大阪エリアの2拠点を持っています。
またややこしいのですが、単にGoogle Cloudと呼ぶ場合は、G SuiteのようなSaaSも含みます。Google Cloudの中で、Google Cloud PlatformがIaaSおよびPaaSのいわゆるクラウドサービスの名称となっています。
AWSとAzureに比べると後発で、世界規模やシェアについても追いかけている立場のGCPですが、先行する2社よりも際立って有名な特徴があります。
それが先ほども出てきたBig Queryに代表されるようなビッグデータの処理と分析に関する機能です。実質世界で最も多くのユーザデータを持つGoogleらしく、ビッグデータの取り回しに関しては一日の長がある印象です。
ユーザデータという点ではAmazonも十分にビッグですが、あちらは基本的にAmazon内での購買にまつわるデータに留まるため、やはりデータの量的にはGoogleが世界最大でしょう。
メガクラウド以外のクラウド
以上の3社が一般にメガクラウドと呼ばれる、フルラインナップのサービスをもつクラウドプロバイダです。
ITの調査で有名なGartnerによれば、この3社は市場のリーダーとして位置付けられています。
一方でこの3社を追う、あるいは絞り込んだ機能でサービスを展開するクラウドプロバイダ3社を次に説明します。

Alibaba Cloud(アリババクラウド)
Alibaba Cloudは中国の阿里巴巴集団が提供するクラウドサービスです。日本国内では、AlibabaとSoftbankの合弁会社であるSBクラウドが代理店業を行っています。
どの業界でも言えることかもしれませんが、世界において中国という市場はかなり他と毛色が異なります。
社会主義国家である中国では、他の先進国のように自由にインターネットを使う環境がありません。様々な法律や条例が存在し、上記の3メガクラウドは他の地域に比べれば使いづらくなっています。
一方で、近年の中国にはファーウェイやテンセント、バイドゥといった世界的なIT企業が多く生まれています。そういった企業にクラウドサービスを提供することで、Alibaba Cloudは大きく成長してきました。
IBM Cloud(アイビーエムクラウド)
IBM Cloudは米IBMのクラウドサービスで、2017年まではBluemix(ブルーミックス)という名称でした。
大きな特徴としては、IaaSの一つの選択肢としてベアメタルサーバが利用できる点です。
ベアメタルとは、(この文脈においては)仮想化されていない物理サーバのことです。
クラウドの通常のIaaSは、ひとつのインスタンスであたかも1台のサーバが提供されているように見えますが、厳密には違います。大きな物理サーバを仮想のサーバとして小さく切り出しているだけで、実際の物理層は他のユーザと共有しています。
ですので、万が一にもパフォーマンス劣化を許せないアプリケーションや、サーバの物理層と連携するようなアプリケーションは仮想化されたIaaSにホストできません。
ニッチなサービスではありますが、底堅い需要のある機能と言えます。
また、有名なAIサービスであるWatsonをAPIで利用することが可能な点も大きな特徴です。
Oracle Cloud(オラクルクラウド)
Oracle Cloudは、商用DBMSで有名なOracleが提供するクラウドです。
最大の特徴は同社の主力製品であるデータベースをIaaS/PaaSでホストできるサービスです。また、通常の手段だと移行のハードルが高いExadate(エクサデータ)のような製品もクラウドサービスとして実行できます。
最近ではAzureとの相互接続を可能にするなど、ラインナップの選択と集中の傾向が見て取れるかと思います。
これは例えば、アプリケーション部分はAzureにホストしておいて、DB部分はオンプレからリフトしたOracle Cloudと接続するような運用を可能にするからです。

インフラストラクチャ
ここまでで何度も「インフラ」あるいは「インフラストラクチャ」という言葉を使いましたが、クラウドにおけるサーバインフラとはどのようなものでしょうか。
クラウドの「リージョン」とは
まず、クラウドのインフラは「リージョン」と呼ばれる単位に分解できます。
リージョンとは世界中に点在するクラウドサービスのデータセンターのひとつひとつの集合体です。各リージョンは数百キロメートルくらいは離れており、例えば北米にいくつ、アジアにいくつ、といった形で存在しています。
メガクラウドであれば全世界で合計数十程度リージョンを有しています。世界中のリージョンを高速な物理回線で繋いだものがクラウドの正体です。
では、なぜリージョンという単位が存在するのでしょうか。インターネットでアクセスできるのであればデータセンターは世界でひとつしか無くても良さそうなものです。その方が管理もしやすいし回線も不要なはず。
ですが、もちろんリージョンがあることにより、複数のメリットがあります。
- 各リージョンは十分離れていて、コントロール系統が別なので何らかの理由で一つのリージョンが停止してもほかのリージョンでサービス継続ができる
- いくら回線が高速とは言え、数千数万キロも離れたデータセンターまで通信しに行くとレイテンシー(遅延)が大きすぎる
- 一つのリージョンしかないと、万が一世界中のトラフィックが集中した際に分散できない
基本的にはクラウドのリージョンは地域ごとに見込める利用者数の多いところから優先して建設される傾向にあるので、北米や西欧に多く存在しています。
地球規模で見ればごくごく小さな面積しかない日本(しかも災害は多く土地代も電気代も高い)に3メガクラウドすべてのリージョンが揃っているのは、ひとえに経済規模から考えてそれだけの利用料が見込めるからに他なりません。
アベイラビリティゾーンとは
1つのリージョンの中をさらに複数の区画に分割したものを「アベイラビリティゾーン(GCPの場合、単にゾーン)」と呼びます。
アベイラビリティゾーンが複数あるのはリージョンが複数あるのと基本的には同じ理由です。すなわち、いざというときもサービスが継続できることを担保し、かつリージョンよりも近距離同士に配置されているので実用レベルでもレイテンシが気になりません。
クラウド上でアプリケーションを作るベストプラクティスとしては、こうした複数のリージョンあるいはアベイラビリティゾーンをまたぐ構成(マルチリージョン、マルチAZなどと呼びます)が一般的です。
もちろん、複数構成にすればコストは多くかかりますが、業務インパクトを考えればこうした災害対策の構成をとる方が安全と言えるでしょう。
その他のインフラ
基本的にはリージョンとアベイラビリティゾーンでほぼすべてのインフラは説明がつくのですが、中には変わり種もありますのでご紹介しておきます。
下のリンクはMicrosoftのProject Natick(ナティック)と呼ばれるもので、これは何とサーバの入った筐体を海に沈めています。
サーバというのは常時計算が走っていてそのため熱を放出するのですが、海に沈めてしまえば放熱のための仕組みを省くことができるそうです。
また、波や潮の満ち引きによる物理エネルギーを利用して発電の一部を賄うことができるらしく、よりサステナブルなサーバが実現できるとのこと。
まだ検証段階で実用化はされていませんが、なんともすごい話です。

もう一つは一転、現実的なインフラです。同じくMicrosoftのAzure Stack(スタック)というサービスになります。
これは企業で導入できるくらいの規模のサーバラックにAzureと同じ仮想化技術を搭載し、クラウドのAzureと同期して使うことができるサービスです。
自社のデータセンタにAzureの出張所ができるイメージと言えばわかりやすいでしょうか。
ユースケースとしては、レイテンシ要件が非常に厳しいアプリケーションを作る場合、最寄りのアベイラビリティゾーンでも実現が難しいことがあります。そんな時は至近にAzure Stackを置くことでレイテンシ問題を回避することができます。
また、通信が限定的な場所での利用も候補の一つで、私も聞いた話ですがタンカー船などにAzure Stackを置いて航海中もクラウドが使えるようにしている企業もあるらしいです。

物理サーバより安全?セキュリティについて
企業においては、「クラウドはセキュリティが不安」という話をよく耳にします。
そのココロは色々ありますが、集約すると下記のパターンが代表的かと思います。
- 自社所有でないサーバにデータを預けるとコントロールが聞かなくなるのでは
- クラウドベンダからデータの中身を見られてしまうのでは
- インフラを共有するのでいざという時にパフォーマンスが出ないのでは
- セキュリティを担保するための仕組みを自社でコントロールできない
- 各種業界団体の認証に適合しているか不安
結論から申しますと、最近のクラウドサービスはこれらの疑問を大抵解決しています。
ここからは、セキュリティに関する代表的な疑問点に対し、クラウドプロバイダが実行している施策について解説をしていきます。
クラウド内部のデータの統制について
まず、明確に申し上げておく必要のあることとしては、『クラウドプロバイダは内部のデータについて関与しない』ということです。
これはルールやポリシーとしてそうしているわけではなく、純粋にクラウドプロバイダであっても内部のデータを見る機能が存在しないという意味です。
これはベンダの自称ではなく、SOC(ソック、エスオーシー)と呼ばれる、監査を必要とする公正中立な基準に明記されていることです。
例えばAWSにデータを預けるとAmazonのビジネスに流用されるのでは、といった懸念をよく聞きますが、前述の通りそもそもAWSもAmazonもクラウドの中のデータや個人情報にアクセスする術を持ちませんので物理的に不可能と断言できます。
クラウド内部のデータにアクセスできるのはあくまでデータの所有権と適当な権限を有するユーザのみで、これらの権限が不正利用されない限り、クラウド内のデータが外部に漏れることはありえません。
インフラのパフォーマンスについて
先述のように、クラウドのインフラは大勢のユーザが共有することが前提のモデルです。
また、クラウドといえどどこかに物理インフラは存在するわけで、理論的に障害やダウンタイムは発生し得ます。
しかし、現在はクラウドサービスの多くでSLAが定義されており、例えばIaaSサービスのAWS EC2やAzure VM、GCP VMインスタンスでのSLAは99.99%で、これは月あたり4.3分以下のダウンタイムに抑えるための最大限の努力をすること、それを守れない場合は返金などの措置があることを意味します。
こういった説明を聞くと、オンプレミスの可用性は100%だ、ホスティングではもっと高いSLAのサービスがある、といった反論もあるかと思います。
ただ、ここでご理解いただきたいのは、そもそも『クラウドは落ちない』という前提のもとサービスを構築すべきでないということです。
先程述べたように、クラウドにはリージョンやアベイラビリティゾーンが存在します。それらを複数使うことで冗長化ができ、例えばどこか一箇所で障害が起きてもシステム全体は稼働を続けることができます。
こうした、障害を前提とした設計思想をDesign for Failureといいます。この考え方を更に発展させたことで有名なのはNetflixのChaos Monkeyです。これはなんと意図的にサーバに障害を起こすことでシステムの冗長性を試験するというもので、予期せぬ状況にも耐えるシステムを作ることを目的としています。

各種の認証について
多くのクラウドはインフラとしてメジャーな第三者認証のほぼ全てを取得しています。
例えば、GDPR、HIPAA、SOC1~3、FISC、などなど。各社が自前で認証を取得維持するのは結構な重労働です。このあたりの個人的な苦労話は別の記事にも書かせていただきました。
また、多くのクラウドではデータセンターへの立ち入り監査というものを許可していないか、許可までにかなり厳しいチェックを設けています。
これはセキュリティ上の理由で、データセンターの場所や中の設備を公開するとその分リスクになるという考え方からの措置です。
ではどうやって監査対応するのかと言うと、クラウドプロバイダ側が出しているレポートを監査会社に提出します。第三者がOKを出したレポートを精査することで立ち入り監査に代えることが出来ますので、データセンターへの入室も必ずしも必要ではありません。
セキュリティツールの導入について
クラウドのセキュリティ担保はオンプレミスで使っていたツールが使えなくなると思っていらっしゃる方が時折おられます。
しかし、メガクラウドなどでは各社がマーケットプレイスを持っていて、そこで様々なサードパーティのソフトウェアを入手することが可能です。
有名なところで言えばAkamaiのWAFやTrendmicroのセキュリティソフトはIaaSでも問題なく使うことが出来ます。
また、各社通信やデータを暗号化する仕組みがありますので、そちらを使えば内部のデータも保護することが可能です。
もともと技術的な観点ではクラウドだからセキュリティレベルが劣るということは必ずしも言えず、どちらかと言うと市場の不安は「クラウド上で自分たちのデータやアプリケーションを守るやり方がわからない」というニュアンスに近かったと思います。
しかし、近年では大きく状況も変わり、もっともITセキュリティに厳しい金融業界のガイドラインを制定するFISCをしてリスクを見極めた上で適切に利用せよと言わしめるようになってきています。


まとめ:企業で導入が進むクラウドの特徴とは
以上、クラウドについての定義からその特徴、クラウドサービスを提供する各社など、クラウドにまつわる基礎的な部分に関してお話をさせていただきました。
クラウドは単にサーバの時間貸しサービスではありませんし、従来型のホスティングサービスとも明確に区別されます。
全てのインフラリソースはAPIでアクセス可能で、ソフトウェアによる柔軟で伸縮性のある制御が可能です。これは、従来のインフラには持ち得なかった大きな特徴です。
また、際立った特徴はシステムの開発や運用の概念すらも変えています。実際のところ、『クラウドネイティブ』とはこうしたクラウドがもたらすITの常識の変化を指すと私は考えます。
クラウドが変えたITの常識とは例えばこういったものです。
- インフラは調達して変更しない→即座に調達でき、変更可能
- インフラの可用性は100%を目指す→障害を前提とし、冗長性を持たせた設計をする
- インフラとアプリケーション、運用の分業→DevOps
- ITとは資産の所有である→ITとはリソースの利用である
- リスクは0になるまで潰す→リスクとリターンを天秤にかけ、適切に利用する
- 開発とローンチに失敗は許されない→素早くリリースし、継続的に改善する
これ以外にも大小様々あるかと思いますが、これまで当たり前だった多くのことを変えてしまうインパクトについて、この記事を読んでご理解いただけたのでは無いでしょうか。
クラウドは最近の大きなブームとして、ITでは聞かない日はないようになりましたが、実際は膨大なIT投資額のごく一部で利用されているにすぎません。
しかし、前述のように潮目は変わりつつあり、そのリスクよりも得られるリターンの方により注目が集まりつつあります。クラウドの力で企業の基幹業務が変わってしまう、そんな日も遠くないのかもしれません。
今回は以上です。お読みいただきありがとうございました。

コメント