クラウドコンピューティングと仮想化

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

従来のコンピュータシステムは、手元にあるコンピュータで実行・保存していました。しかし最近はアプリケーションやデータを個々のコンピュータで実行・保存するのではなく、すべてインターネットなどネットワーク接続されたサーバー上でアプリケーションの実行やデータの保存などを行う「クラウドコンピューティング」という方式が一般的になりました。

クラウドコンピューティングによってアプリケーションやデータの処理が、個々のコンピュータでの処理から、サーバーに集約することができます。そのためCPUやHDDなどのコンピュータ資源の有効活用と集中管理による運用負荷の軽減やセキュリティの確保などの削減が可能になりました。クラウドコンピューティングでは、サーバーに接続するコンピュータをクライアントと呼び、接続するための最低限の機能だけを持っていれば良く、利用者ごとの環境や設定内容はすべてサーバー側に集約されています。そのためクライアントが故障してもデータが失われることはなく、代替機に交換するだけですぐに利用を再開できるというメリットがあります。

クラウドコンピューティングが注目されている理由

クラウドコンピューティングがここまで注目された理由は、なんと言ってもインターネットの高速化と接続料金の低下です。インターネットが高速になり、インターネットを介したデータのやり取りにストレスが無くなりました。さらにそれに反比例するように、インターネットの接続料金が安くなりました。

自社でサーバーを購入し運用した場合、サーバーの購入費と構築費がかかりますし、構築が完了するまで数ヶ月の期間が必要になります。またユーザーが増えるとCPUやHDD、メモリなどの容量が不足し、そのたびに追加の購入が必要になります。このような問題もクラウドコンピューティングを活用すれば、サーバーが必要なときに必要なだけすぐに使用することができます。コストに関してもOPEXとCAPEXを考慮すると、利用の仕方によっては自社でサーバーを運用するよりも安く済みます。自社で運用していると、障害時の交換や、ソフトウェアの入れ替えなどの運用費用、サーバーが古くなったときの更改費用が発生しますが、クラウドコンピューティングの場合はそれがありません。

また、クラウドコンピューティングをインターネット上に置くことで、仕事のスケジュールなどを会社でも自宅でも確認することができるようになります。もちろんパソコンやスマートフォンなどのさまざまなデバイスからアクセスしても同じ情報を確認することもできます。このような様々なメリットから、クラウドコンピューティングが爆発的に普及してきています。

クラウドコンピューティングのサービス形態

クラウドコンピューティングはサービス形態で大きく3つに分類することができます。

パブリッククラウド(public cloud)

不特定多数の利用者を対象に提供しているクラウドコンピューティングサービスで、Amazon Web Serviceなどのクラウドプロバイダーが提供しています。ユーザはハードウェアや通信回線などを自分では所有せず、クラウドプロバイダーが提供するパッケージされたクラウド環境を共有しながら使用します。

プライベートクラウド(private cloud)

企業内または共通の目的を有する企業群を対象に提供しているクラウドコンピューティングサービスです。プライベートクラウドには、サーバを企業が所持し、クラウドの技術を活用して現在のコンピュータリソースの最適化を行うオンプレミス型と、サーバはクラウドプロバイダーが提供し、システムの一部分を企業が占有し利用するホスティング型の2種類があります。

ハイブリッドクラウド(hybrid cloud)

ハイブリッドクラウドは、パブリッククラウドとプライベートクラウドを組み合わせて利用するクラウドコンピューティングサービスです。ハイブリッドクラウドはシステムの特性に応じて、個人情報などを扱うシステムはプライベートクラウドで運用し、データの処理を頻繁に行ったり一時的に大量のリソースが必要になるシステムをパブリッククラウドで運用することで、それぞれのメリットを最大限に活かすことを目的とした方法です。

クラウドコンピューティングの定義

クラウドコンピューティングは、コンピュータリソースを提供するものもあれば、OSまで提供するもの、あるいはアプリケーションまで提供するものなど利用者のニーズによって、様々なものを提供しています。そのためクラウドコンピューティングがどこまでをサービスとして提供するのかを大きく3つの定義で分類しています。

【9章図 スライド4】

IaaS(Infrastructure as a Service)

IaaSは「イアース」や「アイアース」と呼び、ネットワークとハードウエア(CPU・メモリー・ハードディスク)、OSまでを提供するサービスです。ユーザーはOSがインストールされたサーバー環境を提供され、その上にユーザーが必要とするアプリケーションなどをインストールして利用します。通常のレンタルサーバーと提供形態は変わらないように見えますが、大きな違いはレンタルサーバーは物理的なサーバーを提供するのに対し、IaaSは後述する仮想化技術を使ってユーザーが必要とするリソースを提供することができるという点になります。AmazonのEC2などがIaaSに当てはまります。

PaaS(Platform as a Service)

PaaSは「パース」と呼び、IaaSの構成に加えてWebサーバーやWebサーバーなどのミドルウェアを提供するサービスです。PaaSはOSを直接操作することはなく、ミドルウェアのみを操作することになるため、OSの各種設定や運用作業が不要になります。Google App EngineやWindows AzureなどがPaaSに当てはまります。

SaaS(Software as a Service)

SaaSは「サース」と呼び、PaaSの構成に加えてメールやスケジュール管理などのアプリケーションまでを提供するサービスです。Gmailに代表されるGoogle AppsやSalesforceなどがSaaSに当てはまります。

仮想化とは

仮想化とは、サーバやストレージ、ネットワーク機器などの物理的な構成にしばられずに、論理的な構成でシステムを使うことが出来る技術です。「物理的には1台のサーバを、あたかも複数のサーバに見せる」、「複数台のサーバをあたかも1台のサーバのように見せる」といったことを可能にする技術を仮想化と呼びます。

仮想化することのメリット

仮想化を使うことで、発生するメリットには以下のようなものがあります。

  • 資源の有効活用
  • 柔軟な拡張性
  • 可用性の向上
  • 運用管理の簡略化

資源の有効活用

通常、サーバやネットワーク機器を選定する際、将来の拡張性を考慮して余裕を見込んでシステムを導入します。そのため普段はほとんどリソースを使用することなく運用することになるため、「ムダ」が発生してしまいます。仮想化を活用することで、1台の機器を複数の機器として利用することが出来るため、全体の利用効率を向上させることが可能になります。

例えば昼間だけリソースを使用するシステムと、夜だけリソースを使用するシステムを1台の機器で仮想化してあげることで、資源の有効活用が可能です。また機器の台数が削減できるため消費電力も削減できます。

柔軟な拡張性

通常のサーバやネットワーク機器を拡張する場合、一度機器を停止させてから作業する必要がありました。しかし仮想化を利用することにより、システムを停止させることなく拡張させることが可能になります。

可用性の向上

仮想化技術を利用すれば、機器に障害が発生しても、他の機器で処理を引き継ぐことができ、サービスを止めることなく提供し続けることが可能になります。

運用管理の簡略化

仮想化を利用すると、物理的な機器の台数が削減出来るため、管理する手間も当然減ります。また、仮想化することで、簡単にバックアップや復元、移行を行うことが出来るのも、運用管理の簡略化に一役買っています。

クラウドコンピューティングと仮想化

クラウドコンピューティングと仮想化は非常に相性が良いです。アプリケーションやデータを個々のコンピュータではなく、ネットワーク上あるいはインターネット上に集約して設置するクラウドコンピューティングに仮想化を組み合わせると、さらにメリットがあります。クラウドコンピューティングによって機器コストや運用コストを削減し、さらに仮想化を組み合わせることで、さらなる資源の有効活用や柔軟な拡張性が期待出来ます。

仮想サーバーとは

仮想サーバーは1台の物理的なサーバー上に、論理的に複数のサーバー環境を構築したものを言います。ユーザーはその他のシステムからは、論理的に1台のサーバーを独立したサーバーとして認識しますので、通常の物理サーバーと同じように扱われます。仮想サーバーは、それごとに個別のシステムやアプリケーションを稼働させることができます。

詳しくは、「仮想化が進むデータセンター」参照。

ネットワークの仮想化

現在、ネットワークの仮想化技術が使われているのは、データセンターがほとんどです。理由は、データセンターのネットワークが抱えている課題に対して、現在の仮想化技術で解決出来ることが多いからです。

仮想化技術を使ったネットワークをSDN(Software Defined Network)といいます。サーバーの仮想化で物理サーバーの集約にとどまらず、CPUやメモリー、ディスクなどのコンピュータリソースを自由に増減したり移動したりすることができるようになりました。さらに自動化も進んでいて、簡単な命令だけで自由に仮想サーバーを用意したり、数を増やしたりできるようになりました。サーバー側はこのように仮想化技術が先行して進歩していましたが、ネットワークは従来の手動による設定変更が中心になっていました。これではせっかくサーバー側が自動化しても十分な効果を発揮できないという問題がありました。この課題に対応するため、SDNという考え方が生まれ、ネットワーク機器も仮想サーバーに連動して自動的に設定の変更ができるようになりました。

詳しくは、「データセンター領域でのSDN活用」参照。

関連記事

メールマガジン

ネットワ-ク初心者のみなさま。
ネットワークの基礎知識を疎かにすることは
大変危険です!!

「初心者にも理解できるネットワーク技術」

これを読めばネットワークの基礎が分かる!!
ネットワーク関連の仕事に就きたいとお考えの学生の方や、ネットワークに興味があって転職を考えている社会人の方、まずは登録してみてください。

もちろん無料です!!

↓メールマガジン購読はこちら↓

メールアドレス: