メールアドレス(半角):

バックナンバーはこちら

Solution

製品紹介


清田陽司について


つづきはこちら infomation一覧へもどる

クラウドと仮想化は違う

さて、今日は「クラウド」といっしょくたに語られることの多い「仮想化」の話をしようと思います。

仮想化 (Virtualization)とは、多少の語弊はありますが、物理リソースの特質を隠蔽することを意味
すると思っています。

仮 想化とは、歴史的には、アーキテクチャの異なるCPUをターゲット環境としたOSやアプリケーションを動作させる
ために、アーキテクチャの異なる CPUや、ターゲットマシンが装備する各種デバイスをエミュレーションする用途で
一般化した技術です。記憶をたどると、1990年代には、 IBM PC(PC-AT規格)のPC DOSで動作する
アプリケーションをNEC PC-9800シリーズ上のMS-DOS上で動作させるためのSIMというプログラムが存在して
いました。コンシューマPCの領域では古株と思わ れます。

これも歴史的経緯があるのですが、コンシューマPCやローエンド、ミッドレンジのサーバにいたるまで、現在ではインテル
アー キテクチャ(x86)のCPUが市場を独占しています。そのため、1990年代終わり頃に需要のあった、
「異なるCPUアーキテクチャのOS環境 を使う」という目的の製品は影を潜めました。当時はConnectix社が
開発していたVirtualPCのMacOS版では、POWERアーキ テクチャのCPUでx86のOS環境を構築できるという
便利さが重宝されたものです。現在では、このようなCPU環境の違いを吸収する方法とし て、プログラムのソース
コードレベルでターゲット アーキテクチャを選択して実行ファイルを得る、「クロス コンパイル」が一般的(当時から
あっ た方法ですが)でしょう。

現在では、仮想化と言えば、以下のような製品がよく利用されています。
・ VMware(http://www.vmware.com/jp/products/player/)
・Virtual Server / VirtualPC(http://www.microsoft.com/japan/windowsserversystem /virtualserver/default.mspx)
・Fusion(http://store.apple.com/jp /product/TX501J/A)
・Sun VirtualBox(http://jp.sun.com/products/software/virtualbox/)
・ Xen(http://www.xen.org/)
・Hyper-V(http://www.microsoft.com/japan /windowsserver2008/technologies/hyperv.mspx)

上に挙げたような製品群では、CPUやバス を含む物理デバイスの抽象化といったニーズではなく、負荷の抽象化、
言い換えれば、物理デバイスの利用率の平準化を意図した製品へと変化しまし た。そのため、1台の物理サーバ
上で、物理デバイスを持たない複数のOS環境が実行できる、という機能がメインになっています。

アー キテクチャ的には、メモリ空間やレジスタ(データを一時的に格納するトランジスタ直結の低レベル変数だと
思ってください)を、CPUの基本機能の 範囲で抽象化する傾向です(これをVirtualization Supportと
呼ぶことがあります)。

このような現在の仮想 化により、あらゆる面でのコスト削減が起きています。つまり、
・デバイス負荷のオーバーヘッド削減
・フロアコストの低減
・メンテ ナンスコストの削減
・サービス開発における初期投資の低減
などです。

複数のサーバを運用している場合、物理サーバであれ ば、ほとんど負荷がかかっていなくても、各種デバイスに通電
しておくための電力が必要になります。これが仮想化された場合、仮想サーバの負荷に応 じた性能を物理サーバ
が供給することになるため、使用電力量が高い水準で平準化され、複数サーバが、ただデバイスに通電するため
だけに使 用していた電力量を削減できることになります。

さらに、複数サーバ(たとえば1Uラックマウント サーバが数台)という物理環境が、3Uラックマウントのサーバ1台に
集約されることで、ラックの中はスカスカになることでしょう。

サー バといえば、バックアップやメンテナンス時の再起動が運用では問題になります。物理サーバでの運用であれば、
電源再投入時にHDDやCPUファン が故障するリスクは付き物です。しかしそういった場合も、物理デバイスが停止
するわけではない仮想サーバの再起動であれば、トラブルのリスクが ヘッジされていると言えます。サービス開発に
おけるサーバ調達(本サービスとの同等OS環境構築)にかかるコストの削減も自明です。

仮 想化には、他にも
・リプレースできない古いシステムを、最新のハードウェア上で動作させられる
・すでに交換パーツがなくなったような古い ハードウェアを、サービス停止させずに新しいハードウェアに移行できる
といったメリットもあります(2000年代初期の仮想化はこちらが主軸でし た)。

「クラウド」と「仮想化」ですが、両者は密接に関係しています。それは、利用者から見れば、いずれもサービスの
抽象化、さ らには、利用したいサービスのシステム自体を所有することに対するコスト削減に結びつくからです。
とはいえ、「クラウド」に明確な定義が存在しな いまま「仮想化」と同化して捉えてよいわけではないことが、今日の
お話から分かっていただけると思います。

ページTOPへ

つづきはこちら infomation一覧へもどる