ログイン / 登録 アカウント

仮想化

ハイパーバイザーとは

Jump to section

ハイパーバイザーは、仮想マシン (VM) を作成および実行するソフトウェアです。仮想マシンモニター (VMM) とも呼ばれるハイパーバイザーは、ハイパーバイザーのオペレーティングシステムとリソースを仮想マシンから分離し、その VM の作成と管理を可能にします。

ハイパーバイザーを使用する物理ハードウェアはホストと呼ばれます。一方、そのリソースを使用する多くの VM がゲストです。

ハイパーバイザーは、CPU、メモリー、ストレージなどのリソースを、容易に再配置可能なプールとして扱います。

すべてのハイパーバイザーには、VM を稼働するために、メモリーマネージャー、プロセス・スケジューラー、入出力 (I/O) スタック、デバイスドライバー、セキュリティ・マネージャー、ネットワークスタックなど、OS レベルのコンポーネントが必要です。

ハイパーバイザーは各仮想マシンに割り当てられたリソースを提供し、物理リソースに対する VM リソースのスケジューリングを管理します。処理は物理ハードウェアで行われるため、例えば、ハイパーバイザーがスケジュールを管理している間も、CPU は VM の要求どおりに CPU 命令を実行しています。

複数の異なるオペレーティングシステムを同時に稼働させ、同じ仮想化ハードウェアリソースをハイパーバイザーと共有できます。これは主要な仮想化のメリットです。仮想化を行わない場合、ハードウェア上で稼働できるオペレーティングシステムは 1 つだけです。 

ハイパーバイザーには、従来のベンダーやオープンソースで提供される多くの選択肢があります。VMware は仮想化の選択肢として一般的で、ESXi ハイパーバイザーと vSphere 仮想化プラットフォームを提供しています。

Kernel-based Virtual Machine (KVM) はオープンソースの選択肢で Linux® カーネル に組み込まれています。その他の選択肢には、オープンソースの Xen や Microsoft Hyper-V があります。  


ハイパーバイザーの種類

仮想化に使用できるハイパーバイザーには Type 1 と Type 2 の 2 種類があります。

Type 1

Type 1 ハイパーバイザーは、ネイティブ・ハイパーバイザーまたはベアメタル・ハイパーバイザーとも呼ばれ、ホストのハードウェア上で直接稼働し、ゲスト・オペレーティングシステムを管理します。ホスト・オペレーティングシステムの代わりになり、VM リソースはそれによって直接ハードウェアにスケジューリングされます。 

このタイプのハイパーバイザーは、エンタープライズ・データセンターをはじめとするサーバーベースの環境において最も一般的です。

Type 1 ハイパーバイザーの例には、KVM、Microsoft Hyper-V、VMware vSphere があります。KVM は 2007 年に Linux カーネルに統合されたため、最新バージョンの Linux を使用していれば、 KVM も使用できます。 

Type 2

Type 2 ハイパーバイザーは、ホスト型ハイパーバイザーとも呼ばれ、従来のオペレーティングシステム上で、ソフトウェアレイヤーまたはアプリケーションとして実行されます。

ホスト・オペレーティングシステムからゲスト・オペレーティングシステムを抽象化することで機能します。VM リソースはホスト・オペレーティングシステムに対してスケジューリングされ、ハードウェアで実行されます。 

Type 2 ハイパーバイザーは、パーソナルコンピュータで複数のオペレーティングシステムを実行する個人ユーザーに適しています。 

VMware Workstation と Oracle VirtualBox は Type 2 ハイパーバイザーの例です。 


コンテナと VM の違い

コンテナと VM は、大枠としては似た特徴を持っています。コンテナと VM はどちらも、さまざまな IT コンポーネントを組み合わせてシステムの残りの部分から分離する、パッケージ化されたコンピューティング環境です。この 2 つの大きな違いは、拡張性可搬性です。

コンテナの特徴

コンテナとは、システムの他の部分とは分離された一連のプロセスです。コンテナでは、プロセスは指定されたリソース要求にしかアクセスできません。これらのリソース制限があるため、コンテナは十分な容量があればどのノードでも稼働できます。

VM の特徴

VM は独自のオペレーティングシステム (OS) を持つため、リソースを集中的に使用する複数の機能を一度に実行できます。VM で利用できるリソースが増えることで、サーバー、OS、デスクトップ、データベース、およびネットワーク全体の抽象化、分割、複製、エミュレートが可能になります。 

ハイパーバイザーを使用した場合

ハイパーバイザーを使用すると VM で複数の OS を実行できますが、コンテナは 1 種類の OS しか実行できません。たとえば、Linux サーバーで稼働しているコンテナは、Linux のみ実行できます。 

コンテナはハイパーバイザーの代替とみなされることもありますが、コンテナと仮想化は異なるニーズを満たすものなので、この考え方は正確ではありません。


ハイパーバイザーのセキュリティに関する考慮事項

VM は、残りのシステムから分離された環境を提供するので、VM 内部で何が実行されていても、ホストハードウェア上で実行されるものには影響しません。

VM はそれぞれが分離されているため、1 つの VM で防御が突破されても、システム全体に影響はありません。 

ただし、ハイパーバイザー自体がハッキングされると、ハイパーバイザーが管理するすべての VM に問題が発生し、各 VM のデータが危険にさらされます。 

セキュリティプロトコルと要件は、ハイパーバイザーの種類によって異なる場合があります。


仮想化に Red Hat を選ぶ理由

ハイパーバイザーは仮想化プラットフォームの基盤となります。Red Hat は、KVM と oVirt のコミュニティにおける設立以来のコントリビューターとして KVM ハイパーバイザーの改良に携わり、長期にわたり仮想化開発を支えてきました。

Red Hat® Virtualization は、Linux および Microsoft Windows のワークロードを仮想化する、オープンソースのソフトウェア・デファインド・プラットフォームです。 

Red Hat Enterprise Linux および KVM をベースとして構築されており、リソース、プロセス、アプリケーションを仮想化する管理ツールを備え、クラウドネイティブとコンテナ化の未来に対応する安定した基盤を提供します。

Red Hat による迅速でコスト効果の高い仮想化は、今日の課題を克服し、将来のテクノロジーに向けた基盤の構築に役立ちます。

仮想化を活用するためのソリューション

Red Hat Virtualization logo

仮想化を行うために必要なすべてを備えたソリューション。このソリューションさえあれば、仮想化をはじめられます。ベアメタル・ハードウェアから、オープンソース・システム、プロプライエタリー・システムに至るまで、あらゆる環境へインストールできます。数十ないし数百の VM (仮想マシン) のデプロイに対応できるハイパーバイザーと、その操作を簡単に行える運用管理プラットフォームを提供します。

Red Hat Hyperconverged Infrastructure logo

リソースが限られている場合でも、ストレージと仮想化を一緒にデプロイ可能です。同一のサーバーハードウェアをハイパーバイザーとコントローラーの両方として使用するので、統合されたコンピューティング・リソースとストレージリソースのクラスタ化されたプールを利用できます。

ハイパーバイザーや仮想化についてさらに詳しく