既に1960年代には、仮想化の概念や元になる技術は既にあり、内部的に利用されてきたものの、仮想化ソフトウェア製品、プロプライエタリ製品の無償版・評価版、オープンソース、フリーソフトウェアについては、その認知度が高まり、浸透・普及し始めたのは、少なくとも日本では、2008年辺りからと言えるのではないでしょうか。
尚、ここでは、仮想化ソリューションの概要と主にサーバ仮想化について、デスクトップ仮想化については、別のページ(仮想化ソフトウェア比較)で記します。
こうした仮想化ソリューションのベースの1つには、動的に柔軟に資源配分できることが挙げられ、仮想化とクラウドはイコールではないものの、往々にしてクラウドの基本もこれによるところが大きなサービスとなっています。
つまり、単一のサーバ資源やネットワーク資源、ストレージ資源などを複数あるかのように、逆に複数の資源がより少数や1つであるかのように見せたりといった抽象化・仮想化により、システム稼働中であっても既存データに影響を与えることなく、パーティション領域を拡大縮小したり、物理的なハードディスクドライブを増減することで仮想ディスク容量を増減できたりと、従来困難だった動的な資源配分が可能となります。
また、仮想化された環境は、ソフトウェアで処理可能なファイルとして保存することができる為、システムを物理マシン間で移行したり、バックアップもファイルの移動やコピーと同様にディスクやパーティションを丸ごと移行することができますし、対応さえしていれば、1台の物理マシン上のOSと同じOSはもちろん、異なるバージョンや全く異なるOSを並行して同時に実行することも可能です。
仮想マシン上のOSやアプリケーションであれば、同一のOSやアプリケーションから成るマシン環境を複数必要とするような場合でもテンプレートファイルを1つ用意しておけば、コピーするだけで展開できるので各PCごとのOSやアプリケーションのインストールやアンインストール作業が不要になり、マシンの数が多ければ多いほど、利便性向上かつ大幅な時間短縮につながります。
個々のPC上で複数の仮想マシンを実行、他のマシンから全PC上の仮想マシンを一括管理したり、サーバや共有ストレージ上に全ての仮想マシンを配置し、各PCに環境を転送することでメンテナンス含む全てをサーバや共有ストレージ上で行うこともできますし、仮想マシンが共有ストレージ上に一括して配置される場合、いわゆるライブマイグレーション機能でサービスを停止することなく、物理マシン間の移行を行うことでダウンタイムなくマシンのメンテナンスを行うこともできますし、バックアップを行うこともできます。
スナップショット機能を利用すれば、ファイルを選ぶ感覚で簡単にある時点の状態にシステムを復元出来る為、例えば、万一、ウイルス感染した場合でも復元すれば、データの差分以外は、何事もなかったかのように継続して利用するといったことも可能です。
OpenFlowなどの標準プロトコルを使ってネットワークを仮想化(SDN/Software-Defined Network)すれば、物理的なルータやスイッチ以外にソフトウェアでルータやスイッチを実現できるのでより柔軟なネットワーク構成を構築することも可能です。
こうしたメリットを活かした仮想化ソフトウェア市場における主なビジネスソリューションとしては、以下4通りが挙げられるでしょう。
1つは、サーバ資源の仮想化によるサーバ仮想化、更に主にシンクライアント用にサーバで管理するデスクトップ環境をクライアントに転送するデスクトップ仮想化やアプリケーション環境を転送するアプリケーション仮想化、これに加え、ストレージ仮想化、ネットワーク仮想化といったC/Sシステム環境を仮想化し、同時に実行する複数のマシン上の複数の仮想マシン全てをリモート管理用端末から完全に制御可能とするものでシステム利用ユーザーである法人・団体の社内システム向けであり、フレームワークを含めソリューションとしては、VMware vSphere(vSphere 4はVMware Infrastructure 3の後継)、Hyper-V、Citrix XenServer/Citrix XenDesktop、KVM/QEMU、Oracle VM Serverなどがあります。
もう1つは、1台のPCで同系、異系に関わらず、複数のOSやそれぞれの当該OS専用アプリケーションを同時に起動可能にするソリューションであり、商用有償製品としては、VMware Workstationなどがあります。
クラサバ仮想化製品群は主にデータセンターを対象としており、後者は、IT/ICT部門、システム管理者、インストラクター、ソフトウェアのサプライヤ、開発者、品質保証エンジニア、システムエンジニア、IT管理者、テクニカルサポート担当者、トレーナーといった職域の人々を対象としています。
もう1つは、レンタルサーバ事業者が展開するVPS/Virtual Private Serverといわれるサービスで、レンタルサーバなどにおける仮想化で従来とは異なり、仮想マシンごと貸し出すことができる為、安定した柔軟な運用が可能、復旧も容易になり、例えば、SSLに関しても専用SSLの提供を容易に行うことができるようになっています。
もう1つは、少し毛色の違う形で提供されるサービスとしてWindows SteadyState、Returnil、SandBoxie、COMODO DiskShieldなどハードディスクドライブを丸ごと仮想化するかしないかをON/OFFで選択でき、仮想化した場合、そのドライブへのダウンロードなども含め、システムへの変更全てが再起動後にはリセットされるというソリューションがあり、この場合、仮にウイルスが侵入しても再起動後は、リセットされる為、そういう意味ではウイルス対策にもなります。
こうした仮想化製品は、例えば、図書館、パソコン教室、ネットカフェ、空港ロビーやホテルのPC共有スペース、PC販売店店頭等々のマシンに有効で、こうしたシチュエーションにマッチする市場が対象となっています。
こうした仮想化の入り口としてその一部を体験できるソフトウェアがオープンソースソフトウェアやプロプライエタリ製品の無償版などが各社から公開されており、VMware社ならVMware ESXi(VMware ESX本来の機能にスリム化、単体利用可能にしたバージョン)/VMware Server(製品版VMware GSX Serverの無償版)/VMware Player/VMware vCenter Converter等、Microsoft社ならHyper-V/Windows Virtual PC(旧Virtual PC 2004/2007)、Oracle社ならOracle VM Server/Oracle VM VirtualBoxなどがこれにあたります。
尚、VMware vCenter Converterは、仮想化への移行を円滑に行う為のP2V(Physical to Virtual)ツールであり、これを使うと物理マシンから仮想マシンファイルを作成することができ、Oracle VMなど他の仮想化ソリューションでも提供されています。
この内、Oracle VM Server/Oracle VM VirtualBoxは、オープンソースソフトウェアであり、サポートを有償にしているものの、それ以外は基本的に全ての機能を無償で利用できます。
一方、これら無償のVMware社製品やMicrosoft社製品はプロプライエタリ製品であり、無償提供されるものは、ソリューション全体の一部を切り出したものであり、これらMicrosoft社の仮想化製品については、Windows Server 2008(x64)含む以降のサーバ用Hyper-VとWindows 8(x64)からクライアント用Hyper-Vとして、Windows Virtual PCは、Windows 7の一部エディションにおいてOS仕様の1つとして搭載されており、これら当該Windows利用者・ライセンス保有者だけが無償で利用することが可能(除:Microsoft Virtual Server/Virtual PC 2004/Virtual PC 2007)となっています。
また、一個人が開発、その後プロジェクト化したフリーソフトウェアでCPU環境を含めて仮想化でき、あるCPU上で異なるCPU環境を実行可能なQEMUやx86CPU環境の実行に特化したBochsがあり、XenServerについては、商用とは別にオープンソース版もあります。
このようなオープンソースソフトウェアやプロプライエタリの商用ソフトウェアであっても評価版や個人利用に限定して無償化することで、より速く、より広く多くの人々に具体的な商品価値が伝わる可能性が高く、ひいては利用人口が増え、認知度向上というCM効果からもビジネスとしてニーズの掘り起こし、企業・団体が採用するに当たっての障壁も低くなる等々から有効という点は現実を見ても疑念の余地はないと言えるでしょう。
また、Windowsユーザーにも訴求するなら、やはりGUI操作(も)可能であることは、前提条件と言えるでしょう。
ここまでくると先の各種担当者といった人々に加え、IT業界に興味を持つ、または、IT業界を目指す学生や個人、転職を目指す社会人、サポート期限切れに追われるのを嫌い他のOSへの乗り換えを考えるに当たり、各種OSの検証をしたい、旧OSや旧OS上で動作するアプリケーションを利用したい、同じOSの異なるバージョンを比較・検証したいといった個人や団体・法人、ITリテラシの高い非エンジニア、ホームページ作成においてOSやブラウザ間のクロス環境検証をしたい人々、予算が限られるIT関連記事を執筆するライターやプライベートサイト管理者、LAMPP/XAMPPを含むWebアプリケーションやスマートフォン開発環境などを自宅でも構築したいエンジニアや非エンジニア、サーバ仮想化に触れてみたいエンジニアや非エンジニア等々、より多くの人々にとってもためらうことなく即利用できる魅力的なものになってきます。
下記のように仮想化ソフトウェア分野では、買収を含め、企業の参入も相次いでいますが、前述の条件に加え、実質、より認知度が高く、資金力、影響力のある企業(群)の参入が、少なくとも仮想化ソフトウェアの普及拡大期においては大きく影響しているように見えます。
ただ、この場合、Microsoft社の参入を意味するのではなく、2008年のSun Microsystems社によるInnotek社買収辺りが、更にセンセーショナルだった2009年のOracle社によるSun Microsystems社買収劇が、VirtualBoxの、VM Serverの認知度をも押し上げ、それに引っ張られてその他仮想化ソフトウェアも遡って注目されるに至り、そのタイミングで仮想化ソフトウェア市場のパイオニアとも言えるVMware社によって仮想マシンの実行だけでなく、単体で作成も可能となったVMware Player 3.0(無償版)がリリースされたことは、この流れを強く後押しした恰好となったと言えると思います。
なんと言ってもVirtualBoxとVMware Player 3.0は、ホストOS・ゲストOS共に多彩であり、手持ちのPC1台で複数のOSを使えることで活用範囲がグッと広がる点が、先行して無償化されたVirtual Server/Virtual PC 2004/Virtual PC 2007と大きく異なる最大の魅力であり、多くのユーザーを惹きつけたと言えるのではないでしょうか。
その上、XPのセキュリティサポート期限切れとPC-UNIX/Linuxのデスクトップ環境や対応ソフトウェアの充実、Mac OS XのUNIX認定など、従来Windowsユーザーだった人々のOS選択の幅が一気に広がったことと相まってWindowsはもちろん、その他OSや専用アプリケーションの操作性確認のためにもVirtualBoxやVMware Playerを使うことができるわけですから、この現状は、エンドユーザーとしては大歓迎と言えるでしょう。
こうした仮想化ソフトウェアを利用するのに十分なスペックの(CPUやメモリ、ハードディスク容量等といった)ハードウェアも徐々に手ごろになり始めたことも仮想化ソフトウェアが普及し始める大きな要因の1つでしょう。
Microsoft社の参入が起爆剤と成り得なかったと思われる理由は、Mac OS Xを対応ホストOSから外したことは、致し方なしとしてもゲストOSとしてPC-UNIX/Linuxを敢えてサポートせず、Windows専用にしてしまったことが大きな原因であると共にXP、Vista、7とスムースにユーザーを誘導できなかったことなど他にもいろいろあります。
ただ、VistaというOS自体が失敗だったというのは、単なる印象の話であったと言えるでしょう。
メモリ最小要件がVistaは512MB、推奨1GB以上、Windows 7が1GB、推奨2GB以上、Vistaリリース時には、Vistaのシステム要件を満たすマシンが比較的高額だったこと、7リリース時には、CPUやメモリ共にVistaはもちろん7が要求する以上の高スペックマシンが低価格化していたということだけとってもOSの出来以前の話と言えます。
実情としては、まず、
という状況で著しい技術革新、64ビットの普及とアプリケーション市場における64ビット対応の動きが鈍かったという背景の中、
これにより、尚のこと法人・団体や個人共にVistaへの移行が進まなかったと言えます。
これに起因してXPのセキュリティサポート期限の延長を行うに至り、これがXPに留まることを後押しした感もありますが、逆にそうしていかなったら、今まで以上にMS社への反感が大きくなり、より早い段階で苦境に立たされていたことでしょう。
この事態を打開できないまま、Vistaリリースの3年後の2009年10月、実質マイナーバージョンアップとなるWindows 7がリリースされます。
Windows 7では、XPからの移行を促す目的で7を起動したまま、仮想マシン上でライセンス付きWindows XPの実行を可能とするXPモードを利用できるようにしたものの、以下の点で躓きました。
当初、XPモード利用条件として求められた要件が下記です。
ところが、ここでCPUベンダやPCベンダとの連携がうまくいかず、初期リリース時には、
このように足並みがそろわなかったことから、Windows 7の購入を検討する人やWindows 7所有者でも、そのPCが、XPモードを利用できるのか否かすら不明瞭という事態になり、CPUベンダが対応リストを公表したり、Microsoft社が、XPモード対応チェックサービスを提供するなどドタバタ劇がありました。
ここまでの利用確認ができた数少ないユーザーは、以下の段取りでXPモードを利用することができました。
ただ、XPモードを利用できるユーザーが、極々限定されてしまうのでは、XPユーザーにWindows 7への移行を促すという目的に沿わない結果となってしまいます。
そこでWindows 7リリースから半年程経った2010年3月から"XP Mode update"という更新プログラムを併せてダウンロードすることでハードウェア仮想化支援機能に未対応のCPU及びBIOSでもXPモードが利用できるように改善されるに至りました。
が、こうした対応自体も十分に周知できず、"XP Mode update"公開後もハードウェア仮想化支援機能がないと利用できないと思い込む人々も多かったことでしょう。
これにより、対象となる7(Professional/Ultimate/Enterprise)を持つユーザーが広く利用できる環境にはなったものの、Windows 7にメモリ2GB、XP Modeにメモリ1GBが要求され、それでもXPが軽快に動作するというわけでもなく、一方、32ビットでは認識可能なメモリ領域は4GB(実質3.2~3.7GB程度)であることから、よりスムースに利用する為には、64ビット版のOSが必要となることで32ビットユーザーには、さほど印象はよくなかったようです。
むしろ、XPモードではなく、VMware Server/PlayerやVirtualBox等で仮想マシンを作成し、別途用意したライセンス付きXPをインストールした方が、7のエディションにも左右されず、XPに512MBなど、より少ないメモリでも軽快に動作する印象がありますし、そもそも7がXPやVistaのようにメモリ1GB以下で軽快に動けば、32ビットユーザでももっとXPモードを積極的に利用したかもしれません。
何れにしろ、動作が軽快でも、XPモードは仮想マシン(仮想PC)上にインストールされたXPなので物理的なXP搭載マシンとは異なることから
ということで結局、XPユーザーの7への移行促進策としては、グダグダになってしまい、それでもVistaを見送った一定の層などが7に移行したものの、XPセキュリティサポートの期限を切ったことで今尚、XPを利用中のユーザーを苦しめる結果になっているだけでなく、仮想化含め、OSの選択肢の幅が広がった近年、タブレットブームとはいえ、7からのスムースな移行を考えると無理のあるWindows 8のリリースと、ことごとくかみ合わず、MS社自身をも苦しめる結果となっているように見えるのは気のせいではないでしょう。
このようにVistaに対する負のイメージの多くは、実は、Vista自身によるものではなく、不遇な時代背景によるところが大きいといえるでしょう。
ところで、このように、その仮想化ソフトウェアを駆使するに当たっても、やはり、処理能力の向上という点から32ビットから64ビットへの移行という話が絡んできます。
現実には、当初、16ビット版だったWindows 95も後に32ビット対応となり、Windows 98/98SE/MEと32ビット版OSがリリースされましたが、2000/XPから32ビット版と64ビット版がリリースされ、Windows 8/8.1に至るまで、両方ともにリリースされ、完全に64ビットへ移行していません。
ただ、32ビットでは、例えば、メモリを4GB、実際には、3.2~3.7GB程度までしか認識できず、他方、64ビットでは、4GB以上を認識できる為、より高性能な処理を実装できるようになります。
例えば、XPモードのようなホストOS上でゲストOSを実行するホスト型では、ホストOSのCPUやメモリといった物理的資源からゲストOSへ資源配分しますし、ハイパーバイザ型でも複数の仮想マシンに資源配分することになりますが、何れにしてもCPUのコア数やスレッド数、特にメモリ量は多いに越したことはありません。
つまり、メモリが4GB未満の32ビットよりも4GB以上を認識できる64ビット(、CPUも相応に高速且つマルチコア)の方が、よりメモリを多く使う仮想マシンをより多く同時に実行することができます。
今このタイミングで必要か否かに関わらず、64ビット化は既定路線であり、新たにPCを購入する場合もメモリ6GBや8GBとなれば、必然的に64ビットが必要となり、既に32ビットマシンの方が少なくなってきています。
さて、話を戻すと往々にして先述のような前提でソフトウェアが急速に普及すると考えるならば、ビジネスベースはさておき、個人利用ベースにおいてVMwareは有償でしたし、Xenはオープンソース版もあり、Bochs、QEMUは、フリーソフトウェアでしたが、早々にオープンソースであるPC-UNIX/Linuxに浸透したこともあり、当初Windows版はリリースされておらず、(後のCygwin対応含め、)しばらくCUI環境だけだったことから、まだWindowsユーザーを惹きつけられる環境にはなかったこと、Microsoft社からリリースされたWindows用とはいえ、Virtual Server/Virtual PCはホスト・ゲスト共にWindowsに実質特化した(PC-UNIX/Linuxを正式サポートしなかった)ことで用途がさっぱり思いつかず、Microsoft社自身も早々に有償から無償にシフトしていることからも、当時は全く魅力がなかったことの表れと言えるでしょう。
それも合点のいく話でWindows XPに至るまでは、ハードウェアの進歩も著しく、Windowsの機能も多彩になると同時により高スペックなハードウェアを求めることになり、バージョンアップしたWindowsを欲すれば、PCを買い替える以外の手はほぼなく、必要であれば、旧マシンもサブマシンとして持っているという状況だったことを考えれば、MS-DOSやWindows 3.x系、安心してインターネットに接続できないサポート期限切れになるME含む9x系しか仮想マシンで利用できないとなれば、Virtual Server/Virtual PCに魅力を感じるどころか、その存在を知っても尚、たいていの人々が興味すらわかず、関心を持つこともないのは、当然と言えるでしょう。
尚、VMware Player、Oracle VM VirtualBox、Windows Virtual PC(旧Virtual PC 2004/2007)も、いろいろな使い方はできますが、基本的に擬似開発環境構築や検証・テストを目的とした仮想マシンの実行を行えるように一定の制約を受けて機能的に切り出され、コンパクトに集約された(無償)製品であり、サーバ仮想化など会社や部署、チームなど組織だった利用においては、これら製品(名)がそのまま利用されるわけではありません。
サーバ仮想化ソリューションについては、例えば、VMware社製品では、ホスト型VMware Playerにはない商用のみに制限されているスナップショット機能含め、VMware Playerの機能をも包含する一方、x86コンピュータの仮想化に特化したハイパーバイザ型のVMware ESX/ESXiを個々のPCに搭載し、各PC内で複数の仮想マシンを管理することになります。
更にこれら全てのPCに搭載されたVMware ESX/ESXiサーバ(及びそれらが管理する大量の仮想マシン)や仮想インフラの管理、最適化を自動化するVMware vCenter Server(旧VMware VirtualCenter Server)を別途、任意のPCにインストールされたVMware vSphere Client(旧VMware Infrastructure Client)からGUI環境で遠隔操作・一元管理することができます。
また、サービスを停止することなくシステム環境を異なる物理マシンにシームレスに移動できるVMware vMotion(Oracle VMではSun xVMで既に導入済みのテレポート(テレポーティング)、KVM、XenServer、Hyper-Vなど他の仮想化製品ではライブマイグレーションと呼ばれる)、VMware ESX/ESXiサーバによる個々の仮想マシンへのリソース配分(ワークロード)の状況をリアルタイムに収集、負荷状況に合わせて自動的にvMotionを実行するVMware DRS、物理マシンの故障からサービスを短時間で回復させる機能VMware HA(共有ディスク上への全仮想マシン配置必須)などから成っているようです。
Microsoft社製品では、仮想化ソリューション全体もHyper-Vと呼んでいるようで少しわかりにくいですが、別途有償の仮想化ソリューションがあり、Citrix XenServerも同様に有償ソリューションが、Oracle VMにおいては、企業向け有償サポートがあります。