ハイパーバイザー
ハイパーバイザーは仮想化テクノロジーを可能にします。ハイパーバイザーは、1 台のホストマシンで複数の仮想マシンをホストできるようにするソフトウェアレイヤーです。ハイパーバイザーの機能をより明確に理解するために、仮想化の定義を見てみましょう。
A ハイパーバイザー ホストハードウェアの個別の仮想マシンへのパーティショニングを管理し、これらの仮想マシンを実行します。ハイパーバイザーの別名は、バーチャルマシンモニター (VMM) です。
ほとんどのオペレーティングシステムは、ハードウェア上で直接実行されます。通常、別のオペレーティングシステムにアクセスするには、そのオペレーティングシステムをインストールするハードウェアが増えるか、ハードドライブを新しいオペレーティングシステムでパーティション分割して起動する必要があります。それでも、マシンで同時に実行できるオペレーティングシステムは 1 つだけです。仮想化により、仮想リソースを作成できます。オペレーティングシステム、サーバー、およびデスクトップは、同じ物理ハードウェアを同時に共有できます。ハードウェア内の各パーティションは、分離された仮想マシンを実行できます。これを可能にしているのがハイパーバイザーです。
ハイパーバイザーが使用する物理ハードウェアはホストマシンと呼ばれ、ハイパーバイザーはこれを分割して複数のゲストオペレーティングシステムで使用できます。ハイパーバイザーは、管理する物理リソースをプールとして扱います。この CPU、メモリ、ストレージのプールは、必要に応じて既存のゲストまたは新しい仮想マシンに割り当てることができます。
ハイパーバイザーのタイプ
タイプ 1 ハイパーバイザー
タイプ 1 ハイパーバイザーは、ホストマシンのハードウェア上で直接実行されるため、ベアメタルハイパーバイザーとも呼ばれます。このタイプのハイパーバイザーは、通常はハードウェアにインストールされている標準のオペレーティングシステムに代わるもので、複数のオペレーティングシステムをホストできます。
このタイプのハイパーバイザーは通常、企業のデータセンターやクラウドコンピューティングプロバイダーによって使用されます。特定の環境でタイプ 1 のハイパーバイザーがタイプ 2 のハイパーバイザーよりもうまく機能する理由はいくつかあります。
- 追加のオペレーティングシステム層を介さずにハードウェアと直接やり取りするため、リソースをより効率的に使用できます。
- 物理リソースの過剰割り当てが可能になり、ゲストマシンに実際に使用できるリソースよりも多くのリソースを割り当てることができますが、ゲストが実際に使用できるものだけが割り当てられます。
- 1台のマシンに障害が発生しても、ゲストをすぐに動作中のハードウェアに移動できるため、災害復旧が容易になります。
タイプ 1 ハイパーバイザーソフトウェアには、KVM、Microsoft Hyper-V、および VMware vSphere が含まれます。2007 年以降のすべての Linux カーネルには KVM が含まれています。つまり、最新の Linux ディストリビューションにはタイプ 1 ハイパーバイザーが組み込まれています。
タイプ 2 ハイパーバイザー
このタイプのハイパーバイザーは、オペレーティングシステム上でアプリケーションとして動作し、ホスト型ハイパーバイザーとも呼ばれます。ゲストオペレーティングシステムをホストオペレーティングシステムから抽象化し、ゲストが直接ではなくオペレーティングシステムを介してマシン上のリソースにアクセスできるようにします。
タイプ 2 のハイパーバイザーは通常、タイプ 1 のハイパーバイザーほど効率的ではないため、必要な仮想マシンの数が少ない環境で使用されます。タイプ 1 のハイパーバイザーの代わりにタイプ 2 のハイパーバイザーを使用する理由は次のとおりです。
- オペレーティングシステム上の他のアプリケーションと同じように動作するため、セットアップと管理がはるかに簡単です。
- これらはオペレーティングシステムを介して動作するため、さまざまなハードウェアと互換性があります
- 管理者に管理してもらう必要はありません
タイプ 2 ハイパーバイザーソフトウェアには、VMware ワークステーション、パラレルスデスクトップ、Oracle VirtualBox が含まれます。
ハイパーバイザーのメリット
どちらのタイプのハイパーバイザーからでも仮想マシンを実行することには、かなりのメリットがあります。
- ゲスト仮想マシンはハイパーバイザーによって分離されているため、負荷が軽減されます アタックサーフェス。1 台の仮想マシンがマルウェアに感染したりクラッシュしたりしても、ハードウェアや、そのハードウェア上で実行されている他の仮想マシンには影響しません。
- 新しい仮想マシンは、物理ソフトウェアを構成するよりもはるかに迅速に作成できます
- ハイパーバイザーはゲストオペレーティングシステムを物理ハードウェアから切り離すため、ゲストオペレーティングシステムはさまざまなハードウェアで実行できます。
- ハイパーバイザーは、複数の仮想マシンを同じ物理マシン上で実行できるようにすることで、ハードウェアリソースをより効率的に使用できます。
- 仮想マシンはポータブルであり、環境間を移動しても同じように機能することが期待できます。
ハイパーバイザーとコンテナ
ハイパーバイザーはコンテナと混同されることがあります。実行する機能は似ているものの、異なるものもあります。
ハイパーバイザーを使用すると、オペレーティングシステムをハードウェアの上または別のオペレーティングシステム内の分離された環境で実行できます。ハイパーバイザーはコンピューティング、ストレージ、メモリのリソースを共有します。
コンテナはこれをさらに一歩進めて、オペレーティングシステム上の他のアプリケーションから隔離された環境でアプリケーションを実行し、コンテナエンジンを使用してこれらのアプリケーションをホストできるようにします。
ハイパーバイザーの選択
ハイパーバイザーを選択する際に留意すべき点がいくつかあります。
- ニーズ。影響を受けるすべての人のニーズを理解してください。ソリューションのスケーラビリティ、使いやすさ、信頼性を考慮してください。製品が貴社にとって十分なパフォーマンスを発揮することを確認してください。
- 費用。ハイパーバイザーはより大規模なソリューションに組み込まれていますか、それともライセンス料がかかりますか?何を、どのくらいのコストで入手できるかを正確に把握しておいてください。
- エコシステム。このソリューションは使用しているゲストオペレーティングシステムをサポートしていますか?製品の保守とトラブルシューティングには専門家が必要ですか?資料やサポートは十分ですか?
結論
ハイパーバイザーは、仮想化を可能にするソフトウェアです。そのためには、オペレーティングシステムを置き換えてハードウェアを分割し、分離された仮想マシンで使用できるようにするか、標準アプリケーションのようにホストオペレーティングシステム内で実行します。ハイパーバイザーの使用には、リソースのより効率的な使用、より迅速なディザスタリカバリ、移植性など、多くの利点があります。