クラウド

クラウド・コンピューティングについて解説します。

クラウド(クラウド・コンピューティング)とは

クラウドの語源

クラウドは雲を意味し、もともとネットワーク図でインターネットなどの外部のネットワークを雲の絵やアイコンで表現していたことに由来します。

よってクラウド・コンピューティングとはネットワーク経由で提供されている(かつ、物理サーバーなどのハードウェアをほとんど意識せずに使える)コンピューティング資源のことを指します。

クラウドとは

クラウドの種類

クラウドには「コンピューティング資源をどの形で提供するのか」という観点での分類と、「どの環境にある資源を誰が使うのか」の観点での分類があります。前者の観点では主にSaaS (Software as a Service)、 PaaS (Platform as a Service)、 IaaS(Infrastructure as a Service)に分かれ、後者の観点ではパブリッククラウド、プライベートクラウド、ハイブリットクラウドの3種類があります。

どれもあくまでクラウドなのでネットワーク経由で、ハードウェアをほとんど意識せずに使えるという点は変わりません。

前者の観点について簡単に説明すると以下のようになります。

  • SaaS:パソコンやサーバーにインストールせずにネットワーク経由でソフトウェアを提供します。
  • PaaS:アプリケーション開発のための環境(サーバーやミドルウェアなど)を提供します。自前でサーバーをセットアップするのに比べて開発のための環境構築の手間が著しく下がるのが特徴です。
  • IaaS:インフラ環境そのものを提供します。サーバーの使用するCPUやメモリなど自由度高く設定が可能ですが、あくまでクラウドなので物理サーバーを意識することはあまりありません。

IaaS、PaaS、SaaSについて詳細はこちら

後者の観点について簡単に説明すると以下のようになります。

  • パブリッククラウド: クラウドベンダーがコンピューティング資源をインターネット経由で提供し、不特定多数のユーザーがそれにアクセスする形でのクラウド
  • プライベートクラウド:企業が自社のために独自に構築するクラウド
  • ハイブリットクラウド:パブリッククラウド、プライベートクラウド、オンプレミス環境が混在している状態

パブリッククラウド、プライベートクラウド、ハイブリッドクラウドについて詳細はこちら

クラウドの仕組み

上で説明した様々な種類のクラウドを提供するためには、クラウドベンダーはユーザーが希望するコンピューティング資源を過不足なく、またユーザーごとに独立した環境として提供する必要があります。それを支える重要な仕組みが「仮想化」です

ここで言う仮想化とは、物理サーバー1台の上に独立環境を複数作り出す技術です。これにより、例えば1台の高性能な物理サーバーの中に100台の小規模の仮想サーバーを立てることも可能です。また各仮想サーバーに全く別のOSをインストールして各自が別々の設定をすることも可能となります。

クラウドのメリット

サービス選択の柔軟性

上述した仮想化技術や様々な種類のクラウドが提供されているということから、クラウドではあらゆる要件に適したソリューションが見つかります。例えばサービス開発時に専属のインフラ担当がいない場合はPaaSを選んだり、逆にインフラの人的リソースはあるがセキュリティ要件が細かく厳しい場合はパブリックではなくプライベートクラウドを選択したりIaaSを使用したりすることも可能です。

物理サーバーとの比較

物理サーバーとの大きな違いはやはり仮想化です。クラウドではユーザーが希望したスペックの仮想サーバーを即座に準備できるのでハードウェアの調達を一切せずにスピーディに同じ設定のサーバーを複数用意し、冗長化構成にすることが可能です。

障害耐性

また、クラウドでは障害への耐性を高めることも容易にできます。障害耐性を高めるには別の地域にもサーバーを用意しアクセスの分散やデータのバックアップが必要ですが、物理サーバーでそれを実現するにはハードウェアの購入や設置から始まります。一方クラウドでは数クリックで別の国も含むあらゆる地域にデータのバックアップが取れたり、複数のデータセンターに配置されたサーバーにロードバランシングすることも可能です。

クラウドの歴史

1980年頃までは主にコンピュータ資源は「メインフレーム」という方法で提供されていました。「メインフレーム」では1つの大型コンピュータにつながった複数の端末(キーボードなどの入力処理と画面への出力処理のみを担当)でユーザーは作業をします。

その後1990年代はクライアント・サーバー方式に移行していきます。クライアント・サーバーでは、大型コンピュータだった部分がサーバーとして動き、クライアント(今でいうPC, スマホなど)がサーバーと通信することで資源を利用します。メインフレームとの大きな違いはクライアントにもOSが入っていて一部の処理を担当している点です。

古くはクライアントにはサーバー側が提供するソフトウェアをインストールするのが主流でしたが、webブラウザの台頭によりほとんどwebブラウザのみでクライアントの処理が完結する方式も出てきました。それがwebコンピューティングです。

webコンピューティングによりクライアント側の設定の負担は軽減されましたが、クラウド・コンピューティングの出現により今度はサーバー側の設定の負担が大きく軽減されました。このようにものすごい勢いで様々な方式がアップデートされ、コンピュータという資源が気軽に利用できる環境が整ってきました。

まとめ

クラウド・コンピューティングはインターネットの急速な発展を支える根幹技術とも言えるものです。当たり前のように使っているスマートフォンやデスクトップアプリケーションも、大半はクラウドを利用して作られています。自社でデータセンターを保有する企業も一定数あるものの、必要なリソースとサービスを必要な分だけ使えるクラウドは、ITに関わる多くの人にとって捨て難いほどに魅力的なものになります。