最近の仮想化についてなぜそんなに誇大宣伝されているのですか?


34

仮想マシン、仮想サーバー、仮想ディスクなど......

基本的にすべてに別のレイヤーを追加するときに、誰かが自分の物を「仮想」にしたい理由は、私にはあまり意味がありません(ほとんどの場合、実行が遅くなります)。

上記の複数のケースで仮想化の目的は何ですか?


15
マウスをクリックするだけで、たとえばダウンタイムなしで仮想サーバー全体を物理コンピューター間で移動できるためです。
AndrejaKo

8
「ほとんどの場合、実行が遅くなります」-私はその声明に同意しません。
EJB

4
-1理由:「この質問は研究努力を示さない。それは不明瞭または役に立たない(もう一度クリックして元に戻す)」
wizlog

3
「この質問は用量 LOL:任意の研究努力を表示しません」!
-bwDraco

回答:


67

簡単に言えば、仮想化はすべてに対する答えではありませんが、素晴らしいことです!

別のレイヤーを追加したり、実行速度を遅くしたりすると言いますが、現代のシステムでは、これはそれほど多くありません。現在、この「レイヤー」を最小限にする多くの技術と機能が存在します(Intel VT-x、AMD-Vなど)。ハイパーバイザーベースの仮想化を使用している場合、このレイヤーはさらに小さくなります。

ただし、ディスクとメモリの使用方法に基づいて、状況によっては速度が向上することがあります。

さて、いくつかの混乱があるため、仮想化製品の簡単な要約。4つのカテゴリがあり、ほとんどが大きく異なります。

ハイパーバイザー -最小のオーバーヘッドで、通常は堅実な、24時間365日の仮想化向けに設計されています。(たとえば、Microsoft Hyper VVMware ESXiなど

デスクトップ(ソフトウェアベース)仮想化 -一般的にプログラマ、テスター、ITプロフェッショナル向けに設計-速度は現在のマシンでは依然として非常に高速/ネイティブに近いですが、それが実行されているゲストオペレーティングシステムに左右されるため、3を実行している間さまざまなタスクのための私のマシン上の24時間365日のVM、これは実際には「設計」されていません(Microsoft Virtual PCVMware WorkstationSun(Oracle?)Virtual Boxなど)。これらは、仮想コンピューター全体をエミュレートします。

サーバー(ソフトウェアベース)の仮想化 -これはしばらくの間、非常に大きな市場でしたが、ハイパーバイザーよりも能力が低く、現在は一般的に死んだ市場です。基本的に、サーバー環境に最適化されているのはデスクトップ仮想化です(Microsoft Virtual ServerVMware Serverなど)

ソフトウェアの仮想化 -コメント通り、私はこれを省きました。これは、通常、単一のプログラム(Microsoft App-VVMware ThinAppなど)を仮想化するための専門市場です。これにより、コンピューターとソフトウェアの間に薄い「レイヤー」が作成されます。基本的に、ファイル/レジストリの書き込みをリダイレクトし、基本的にアプリケーションをサンドボックス化するために、プログラムによって行われたすべての呼び出しをインターセプトします。これには、いくつかの複雑なアプリケーションの複数のバージョンを実行できるなど、いくつかの利点があり、展開が非常に簡単になります(ただし、理解/取得が難しい領域になる可能性があります)。

なぜ彼らが今とても人気があるのか​​-それはすべてコストと管理時間に帰着します。

たとえば、私の会社では、使用するさまざまなシステムの多くの「システム」を実行する必要があります... SQL Server、イントラネットシステム、課金システム、電子メールシステム、VOIP、いくつかの古いソフトウェアのレガシーシステムクライアントといくつか-これらのいくつかは同じボックスから実行できることを認めましたが、退屈な理由の長いリストのために、それらを分割したいと思います。

2004/5のこの選択は、ここに24時間365日稼働する6台のサーバーがあったことを意味しました-それは素晴らしく機能しましたが、各マシンには2GBのメモリ(高価な場合)と、卵を調理できるP4時代のプロセッサがありました。すべてのシステムのプロセッサが5%を超えることはほとんどありませんでした。10〜15%のピークかもしれませんが、マシンのほぼ寿命の間、大半は0%でアイドル状態でした。

電気については、本当に思い出せませんが、1台のマシンにつき年間100ポンドほどかかると思います。

今では、代わりにこの環境を仮想化した場合(最終的にはそうしました)、これらすべてのシステムを単一のマシンに移動し、オーバーサブスクライブメモリなどの多くの機能を活用することができました。

つまり、6台のマシンにはそれぞれ2GBのメモリがありましたが、平均してすべてがその約1/4を使用していました。この新しいマシンでは、8GBを、シームレスなP2V(物理から仮想 -マシンの移行プロセス)移動、すべてのマシンをこれまでと同じ速度で実行しています...実際、それらはより高速です(CPUが高速であるため)。

これに加えて、マイグレーション(V-Motion)や高可用性など、仮想化を素晴らしい選択肢にする多くの利点があります。

また、多くのホーム/非ビジネスユーザーが考えていない余分なものがあることを言っておく必要があります-私はネットワーク機器のいくつかを取り除くことができ、ケーブルの負荷を緩め、私の高価なKVMを必要としません... 5台のUPSとPDUを落とすことができます...そして何よりも、換気ラックのうっとうしいうなり音の代わりに、1つの戸棚に収まるようになっています!...そして、夏にはエアコンをそれほど高くする必要はありません(上記の電気料金は考慮しませんでした)。

私は小さいかもしれませんが、大企業が大規模にこれを行うと考えています-私はかつて大企業が仮想化環境に移行するのを助けました-彼らは予算を持っていなかったので、私の契約条件は私は1年間コストを削減し、次の3年間で20%のコスト削減を実現しました...それは私に非常に良い支払いをし、彼らは最初の年に管理上の利点を享受しました。

これがあなたの質問に答えることを願っています!フォローアップの質問があれば、喜んでお答えします。


2
非常に良い答えです。移植性を向上させるJava VM、Perl、V8、CLIなどのソフトウェアVM(主にプログラミング用)を追加します。
シュナダー

4
おそらくあなたはそれについてのブログ記事を書くべきです@Wil ;-)
Ivo

4
VMがどのように高い可用性に貢献しているかはわかりません。先日、VMサーバーハードウェアにハードウェアボールトがありました。すぐに8つのサーバーがネットワークから切断されました。私が理解したところから、移動したいホストが実行中でない限り、VMotionは動作しません。
アンディ

2
@Andy-vmware.com/products/ high - availability/ overview.html-これをクライアントに使用しました。VMは2つの場所で実行され、1つがダウンした場合、もう1つは1つのpingを失うことなく即座に取得します。クラスタリングやソフトウェア内の何かを設定することなく、本当に驚くべき技術です-これは純粋にハイパーバイザーの機能です。
ウィリアムヒルサム

1
@IvoFlipse Deal!....時間があれば!来週新しい仕事を始めるべきであり(すべて1か月の契約であるべきです)、物事は今少し忙しいです。
ウィリアムヒルサム

22

ウィリアムの答えに追加するには

オペレーティングシステムに対するソフトウェアのテストソフトウェアの 新しいバージョンが構築されると、さまざまなオペレーティングシステムの仮想マシンを自動的に起動し、新しいソフトウェアをインストールしてから、すべてが正常に動作することを確認するユニットテストを実行するプログラミングスクリプトを見ましたその後、仮想マシンをシャットダウンします。この特定のケースでは、各オペレーティングシステムに対して1つのVMのみでしたが、これをより多くのシーンに拡張することは可能です。たとえば、Windows 7 32ビット用のVm、Windows 7 64ビット用のVm。別のW7 32ビットService Pack 1、W7 64ビットSP1、vms IE IE 9、vms IEと。これらのvmsは一度に1つしか実行されないため、使用しているのはディスク領域のみであるため、通常のサーバーに数十個のvmsを配置することができます。

ディスク領域の節約: すべて同じオペレーティングシステムを実行している10台の仮想コンピューターがある場合、同じベース仮想ハードディスクを共有して、変更を独自の仮想ハードディスクに書き込むことができます。

スペースの割り当て/再割り当て。 異なる物理サーバーでは、ディスク領域が不足している1台のマシンと、負荷のない他のサーバーがよく見られます。残念ながら、あるサーバーからディスクの半分(またはアレイの半分)を別のサーバーに固定することはできません。しかし、仮想サーバーでは、1つのサーバーの割り当てを減らして、他のサーバーを増やすことができます(または動的に拡張するディスクを使用するだけです)。

スナップショット。 これにより、ほぼ瞬時の完全バックアップのように、ある時点でサーバーのスナップショットを取得できます。これは、スナップショットを作成したり、サーバーをシャットダウンしたりすることができることを意味します。先週のスナップショットをマウントし、いくつかのことを確認してから、サーバーのバックアップと復元に何時間も費やすことなく、シャットダウンして最新のスナップショットをマウントして続行します。もう少し作業を行うと、古いスナップショットを別の仮想マシンとしてマウントし、古いコピーと新しいコピーを並べて実行できます)

仮想サーバーの移動。 たとえば、2つのホストサーバーがあり、host1が過負荷であるがhost2が過負荷ではないことがわかった場合、ゲストをシャットダウンするのと同じくらい簡単に、host1からhost2にクエストの1つを移動することができますファイル。(通常は追加オプションがあり、ゲストをシャットダウンせずにホスト間でゲストを移動するなどの素晴らしいことを実行できるため、ユーザーは気付きません。)

そして、仮想化が有益なのはサーバー/ビジネスだけではありません。

古いバージョンのQuickenと、本当に古いバージョンのExcelと、他のいくつかの小さなプログラムを使用して、個人アカウントを作成します。このセットアップはVista / W7では正しく機能せず、64ビットウィンドウではまったく機能しません。以前は信頼性が低くなり始めた古いコンピューターでこれを実行していました。これは現在、仮想XPハードディスクにあり、新しいマシンを入手したら、Virtual PCをインストールし、仮想マシンをコピーして仮想マシンを起動するだけで、すべてがセットアップされ、より速く動作します。QuickenとExcelをインストールする必要も、Excelに付属しているフロッピーディスクを見つける必要もありません(本当に古いバージョンだと言いました)。

自宅の窓でこれを行うことのマイナス面は、追加のライセンス費用です。AaronMが指摘したように、ビジネスには大幅なコスト削減がありますが、自宅ではそうではありません。


3
スナップショットは見た目ほど素晴らしいものではありません-パフォーマンスに大きな打撃を与えます。スナップショットを作成するたびに仮想マシンの速度が低下し、複数のブランチでスナップショットを作成し続けると、VMが停止してしまいます。バックアップが必要な場合は、スナップショットを撮るよりも、VMの内容を他の場所にコピーした方が良いでしょう。スナップショットは、あまり多く撮らず、ソフトウェアのインストールやウイルスの動作のテストなど、「迅速な」バックアップおよび復元メカニズムが必要な場合に理想的です。
カバ

@sgmooreは奇妙です。32ビットWindows Officeのインストールは、新しい64ビットマシンで完全に機能したからです。これらのマシンはすべて下位互換性があるはずではありませんか?
ダークテンプラー

スナップショットの場合は+1。テスト対象が機能しない場合は元に戻し、機能する場合はスナップショットを削除します。
Bratch

@JacobHayden。互換性は完全ではありません。これがXPモードの目的です。しかし、実際には64ビットウィンドウでExcelのコピーをテストすることはできませんでした(ただし、仕事で64ビットW7の下で32ビットバージョンのOffice 2007を実行しています)。Quickenセットアップがクラッシュし、次にODBCに問題があったため、私の問題は他のプログラムに関連していた。問題を回避し、仮想マシンでXPを使い続ける方が簡単でした。
sgmoore

私はノートブック上でLinuxですべてを行います(エンタープライズではありません)が、XPまたは7でも時々必要なことがあります。以前はデュアルブートマシンを2回再起動するという深刻な悪化を経験していました。 XPと1回戻ってきます。これで、VMでXPを実行できるようになり、Linuxの別のアプリケーションのように感じられます。これは大きな改善です。さらに、1つの(巨大な)ファイルをコピーしてWindowsを完全にバックアップするだけで済みます。すべての設定をそのまま使用してすぐに実行できます。すばらしい!
ジョー

5

大企業では、ライセンス要件を大幅に削減することもできます。IE Microsoft Server 2008 Datacentre 2 CPUライセンスを使用すると、OSごとのライセンスの追加オーバーヘッドなしに、仮想ボックス上で処理できる限り多くのServer 2008 R2のコピーを実行できます。同様に、Microsoft SQL ServerはCPUごとにライセンスされます。

2つのCPUを備えた単一の物理サーバーで複数のゲストOSを実行し、それぞれがSQLサーバーのインスタンスを実行できます。これらはすべて単一の物理サーバーライセンスでカバーされ、大幅なコスト削減が可能です。

このいくつかの例については、http://www.bythebell.com/2010/05/virtualization-licensing-savings-for-microsoft-windows-and-sql-server-products.htmlを参照してください

上記のウィリアムのコメントもすべて有効です。


5

私がそれがとても人気があると思うもう一つの重要な理由は、それがより少ない電力を使用する可能性があるので、それがあなたのデータセンターを運営する「グリーン」な方法と考えられることです。そして、グリーンウォッシングは、後半のように、企業のPR部門にとって大きなものです。

典型的な非仮想化環境では、ピーク負荷を処理するために過剰な能力を備えた各サーバーを構築します。つまり、誰もが高価なリクエストを開始する必要があると判断した場合に備えて、コンセントで大量の余分な馬力を吸うことを意味します同時に。

仮想化環境では、複数の論理サーバーが、物理マシン上に共存する論理サーバーがすべて同時に最大限に使用されるわけではないという前提の下で、その余剰容量を共有できます。

注目を集めている2番目の理由は、クラウドコンピューティングの真似をしていることです。仮想化サーバーは、クラウドコンピューティングの多くの機能を提供することを可能にするコアテクノロジーであり、仮想化の機能を偶然に反映したものではありません。クラウドコンピューティングは現在注目されている傾向であり、可能性としては、サーバーをクラウドに配置する場合、それらは仮想化されたサーバーになります。


こんにちはJohnFX、クラウドコンピューティングと仮想化がどのように似ているか、または関連しているのかを少し説明していただけますか おかげで:)
ダークテンプラー

1
私は主に、サーバープラットフォームを外部委託し、インターネット経由でアクセスする、Hardware-As-A-Serviceタイプのクラウドコンピューティングについて言及していました。Rackspaceのような仮想化企業は、文字通り各顧客専用の物理コンピューターを所有していました。今では仮想化を使用してリソースを割り当てるだけで、かなりのコストを節約できます。
JohnFx

0

前の回答で言及したことはすべて正しいですが、大企業で早い段階で非常に人気を得た本当の理由は、コールセンターの仕事を発展途上国に移す際にベンダーソフトウェアライセンスと暗号化の輸出制限のすべてを回避したことです。


-3

Mrmのコメントは、金銭的権利です。ソフトウェアを多くの場合、購入したライセンスの数よりも多く使用できるようにすることに加えて(ソフトウェアが技術的に1つのシステムにのみインストールされ、複数のシステムが仮想化により、怠zyなIT部門が古いバージョンのソフトウェアを展開できるようになります。これにより、アップグレード、ユーザーの再トレーニング、およびアップグレードによる問題への対処にかかる費用と工数を節約できます


4
私はこれがまったく正確だとは言いません-私の答えを読んでください-私は自分自身を怠け者とは呼ばず、レガシーアプリケーションを実行します。その理由は、仮想化されたクライアントのシステムでWindows NT 4を実行できるからです。どこで、そのような古いハードウェアのサポートを見つけることができるのでしょうか。そして、何かが壊れた場合、私は深刻なトラブルに陥ります... VM内で問題なく動作します。これに加えて、すべてのVMにはBIOS ID、NIC MACなどがあります。したがって、それらはすべて完全に別のマシンのように見え、違いを見分けるのは非常に簡単です。
ウィリアムヒルサム
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.