目次
kvm の仮想マシンの CPU コアが 1 より大きい場合、仮想マシンは起動できません。仮想マシンは 1 に設定されている場合にのみ起動できます。理由は何ですか?
仮想マシンホストのCPUがハードウェア仮想化をサポートしているかどうかを確認する方法
ホスト マシンは仮想化をサポートしていますが、関連する設定を有効にする必要がありますか?
仮想マシンにインストールされている仮想マシンはシングルコア仮想マシンのみですか?
kvm と vmware はどのタイプの仮想化に属しますか?
kvm の仮想マシンの CPU コアが 1 より大きい場合、仮想マシンは起動できません。仮想マシンは 1 に設定されている場合にのみ起動できます。理由は何ですか?
-
仮想マシン ホストの CPU はハードウェア仮想化をサポートしません。KVM はハードウェア仮想化に基づく仮想化テクノロジであり、ホストの CPU が仮想化拡張機能 (Intel の VT-x や AMD の AMD-V など) をサポートする必要があります。ホスト マシンの CPU がハードウェア仮想化をサポートしていない場合、KVM は適切に動作できず、シングルコアの仮想マシンのみを作成できます。
-
ホストの CPU が他の仮想マシンまたはプロセスに割り当てられている: ホストの CPU リソースが実行中の他の仮想マシンまたはプロセスに割り当てられている場合、残りの CPU コアではマルチコア仮想マシンの起動をサポートできない可能性があります。この場合、仮想マシンの CPU コア数を 1 に設定することが唯一の選択肢となる可能性があります。
-
構成ファイルの設定が正しくない: KVM 仮想マシンの構成ファイル (通常は XML 形式) の CPU 構成が正しくない可能性があります。構成ファイル内の仮想マシンの CPU 設定を確認して、必要なコア数とその他の CPU パラメータが正しく指定されていることを確認します。
-
リソース制限または構成の問題: ホスト リソース制限 (メモリやストレージなど) により、マルチコア仮想マシンが起動できない場合があります。必要な数の CPU コアとその他の構成パラメータをサポートするのに十分なリソースがホスト マシンにあることを確認してください。
仮想マシンを起動できないという問題が発生した場合は、ホストのハードウェア サポート、リソース構成、仮想マシン構成ファイルを確認して問題のトラブルシューティングを行い、特定の状況に応じて調整および修復できます。問題が解決しない場合は、さらなる調査またはテクニカル サポートへの相談が必要になる場合があります。
仮想マシンホストのCPUがハードウェア仮想化をサポートしているかどうかを確認する方法
仮想マシン ホストの CPU がハードウェア仮想化をサポートしているかどうかを確認するには、次の手順に従います。
-
ホストの CPU モデルを確認します。ターミナルまたはコマンド プロンプトを開き、ホスト上で次のコマンドを実行して CPU 情報を表示します。
- Linux システムでコマンドを実行します。
cat /proc/cpuinfo
- Windows システムでコマンドを実行します。
wmic cpu get name
上記のコマンドを実行すると、CPU モデルと関連情報を取得できます。
- Linux システムでコマンドを実行します。
-
CPU モデルのサポート リストを検索する: 取得した CPU モデルに応じて、メーカーの公式 Web サイトまたは検索エンジンで CPU モデルのサポート リストを検索します。たとえば、Intel CPU を使用している場合は、Intel の公式 Web サイトで関連するサポート ドキュメントやマニュアルを見つけることができます。
-
ハードウェア仮想化のサポートを確認する: CPU サポート リストでハードウェア仮想化に関する情報を見つけます。通常、次の 2 つの兆候があります。
- Intel CPU: Intel のハードウェア仮想化拡張機能は Intel VT-x と呼ばれ、CPU モデルが Intel VT-x をサポートしているかどうかを確認できます。
- AMD CPU: AMD のハードウェア仮想化拡張機能は AMD-V と呼ばれ、CPU モデルが AMD-V をサポートしているかどうかを確認できます。
サポート リストの情報に従って、ホスト マシンの CPU がハードウェア仮想化をサポートしているかどうかを判断します。
正確な手順はオペレーティング システムと CPU モデルによって異なる場合があることに注意してください。上記の手順を実行する際に問題が発生した場合は、ホストおよび CPU のドキュメントを参照するか、関連するテクニカル サポートに問い合わせることをお勧めします。
ホスト マシンは仮想化をサポートしていますが、関連する設定を有効にする必要がありますか?
はい、ホストが仮想化をサポートしているという事実は、CPU 自体がハードウェア仮想化拡張機能 (Intel VT-x や AMD-V など) をサポートしていることを意味するだけではありません。場合によっては、ホストの BIOS または UEFI 設定で仮想化を有効にする必要がある場合があります。通常実行する必要がある手順は次のとおりです。
-
ホスト コンピュータを再起動し、BIOS または UEFI 設定に入ります。通常、ホストの電源を入れるときに特定のキー (Del、F2、または F10 など) を押すと、BIOS または UEFI 設定インターフェイスに入ることができます。正確なキーはコンピューターのメーカーやモデルによって異なる場合があります。コンピュータの起動時に、対応するプロンプト情報が画面に表示されます。
-
仮想化関連の設定を探します。BIOS または UEFI 設定で、仮想化に関連するオプションを探します。これらのオプションは通常、[詳細設定]、[CPU 構成]、[仮想化]、または同様のメニューにあります。正確なラベルと位置はメーカーによって異なる場合があります。
-
仮想化を有効にする: [仮想化] オプションを見つけたら、それを [有効] に設定します。オプションは、「仮想化テクノロジー」、「インテル仮想化テクノロジー」、「AMD SVM」などです。適切なオプションを選択し、設定を保存します。
-
設定を保存して終了: 仮想化オプションが有効になっていることを確認した後、変更を保存して BIOS または UEFI セットアップを終了します。通常は、F10 などの指定したキーで保存して終了できます。
-
ホストを再起動する: 上記の手順を完了した後、ホストを再起動して、仮想化設定が有効になっていることを確認します。
特定の手順とオプションは、コンピューターのメーカー、モデル、BIOS/UEFI バージョンによって異なる場合があることに注意してください。上記の手順を実行するのが難しい場合は、コンピュータのマニュアルを参照するか、製造元のテクニカル サポートに詳細な手順を問い合わせることをお勧めします。
仮想マシンにインストールされている仮想マシンはシングルコア仮想マシンのみですか?
KVM などの一部の仮想化プラットフォームでは、仮想マシンにインストールされた仮想マシン (ネストされた仮想化とも呼ばれます) は通常、シングルコアの仮想マシンのみをサポートします。これは、ネストされた仮想化シナリオでは、仮想マシンの CPU 命令を 2 つのレベルで仮想化する必要があり、仮想化の複雑さとパフォーマンスのオーバーヘッドが増加するためです。
一部の仮想化プラットフォームでは、特定の構成と調整を行って複数のコアのネストされた仮想化をサポートできますが、この設定はあまり一般的ではなく、パフォーマンスの低下または不安定になる可能性があります。
したがって、仮想マシンで別の仮想化ソフトウェアを実行している場合 (KVM 仮想マシンで VMware または VirtualBox を実行している場合など)、一般に、ネストされた仮想マシンの CPU コア数をシングル コアに設定することをお勧めします。これにより、パフォーマンスと安定性が向上し、潜在的な互換性の問題を回避できます。
仮想化プラットフォームとネストされた仮想化のサポートは、ベンダー、バージョン、構成によって異なる場合があることに注意してください。仮想マシンで別の仮想化ソフトウェアを実行する予定がある場合は、プラットフォーム固有のベスト プラクティスと推奨事項についてドキュメントまたはテクニカル サポートを参照してください。
完全仮想化と準仮想化の違いは何ですか
完全仮想化と準仮想化は 2 つの異なる仮想化テクノロジであり、仮想化の実装とパフォーマンスにいくつかの違いがあります。
- 完全仮想化: 完全仮想化は、ハードウェア プラットフォーム全体 (CPU、メモリ、ストレージなどを含む) を仮想化するテクノロジーです。完全仮想化では、仮想マシン モニター (ハイパーバイザー) が実際のハードウェアの動作をシミュレートするため、仮想マシン (ゲスト VM) は、仮想マシンのオペレーティング システムを変更することなく仮想環境で実行できます。完全仮想化では、仮想マシンは通常のオペレーティング システムを変更せずに実行できます。
完全仮想化の主な機能は次のとおりです。
- 仮想マシンは、変更されていないオペレーティング システムを実行できます。
- 仮想マシンの実ハードウェアへのアクセスは、仮想化層によって傍受され、リダイレクトされます。
- 仮想マシンのパフォーマンスの分離とリソースの割り当ては、ハードウェアをシミュレートすることによって実現する必要があります。
- 準仮想化 (準仮想化): 準仮想化は、オペレーティング システムの一部を変更する仮想化テクノロジです。準仮想化では、仮想化層と通信して連携するようにゲスト オペレーティング システムを変更する必要があります。仮想マシンは、仮想化インターフェイスを呼び出して基盤となるハードウェア リソースにアクセスし、仮想化の効果を実現します。
準仮想化の主な機能は次のとおりです。
- 仮想化インターフェイスを使用して通信するには、ゲスト オペレーティング システムを変更する必要があります。
- 仮想マシンは、ハードウェア エミュレーションを介してアクセスする代わりに、仮想化層によって提供されるインターフェイスに直接アクセスできます。
- 準仮想化では、仮想マシンが仮想化レイヤーと直接通信するため、一般にパフォーマンスが向上します。
全体として、完全仮想化では互換性が向上し、変更されていないオペレーティング システムを実行できる機能が提供されますが、ハードウェアをエミュレートする必要があるため、パフォーマンスのオーバーヘッドが発生する可能性があります。一方、準仮想化では、より直接的な通信を可能にしてパフォーマンスを向上させるためにオペレーティング システムを変更する必要がありますが、仮想化インターフェイスをサポートするにはオペレーティング システムを変更する必要があります。完全仮想化または準仮想化の選択は、特定のアプリケーションのシナリオと要件によって異なります。
kvm と vmware はどのタイプの仮想化に属しますか?
KVM (カーネルベースの仮想マシン) と VMware は両方とも完全仮想化テクノロジです。
-
KVM: KVM は、Linux カーネルに組み込まれたオープンソースの完全仮想化ソリューションです。Linuxカーネルの仮想化機能を最大限に活用し、仮想マシンモニター(ハイパーバイザー)を通じてハードウェアプラットフォーム全体を仮想化し、同一物理ホスト上で複数の仮想マシンを並列実行できます。KVM は、仮想マシンのゲスト オペレーティング システムとして複数のオペレーティング システムをサポートし、幅広い管理ツールとインターフェイスを提供します。
-
VMware: VMware は、仮想化テクノロジーに重点を置き、さまざまな仮想化製品とソリューションを提供する会社です。中でもヴイエムウェアの主力製品には、完全仮想化技術を採用したVMware ESXiとVMware Workstationが挙げられます。
- VMware ESXi は、vSphere Hypervisor としても知られるベア メタル ベースの仮想化プラットフォームです。物理サーバーに直接インストールでき、仮想マシンモニターを通じてハードウェアリソースを複数の仮想マシンに仮想化できます。
- VMware Workstation は、パーソナル コンピュータ上に複数の仮想マシンを作成して実行するデスクトップ仮想化ソフトウェアです。完全仮想化テクノロジーを使用して、ホスト コンピューターのハードウェア リソースを仮想マシンに仮想化します。
つまり、KVM と VMware は両方とも完全仮想化テクノロジーであり、どちらも仮想マシン モニターを通じてハードウェア プラットフォーム全体の仮想化を実現し、それによって物理ホスト上で同時に実行される複数の仮想マシンをサポートします。
準仮想化に利用できるソフトウェアは何ですか
準仮想化テクノロジはこれまで広く採用されてきましたが、現在では比較的あまり使用されていません。準仮想化では、仮想化層と通信して連携するようにゲスト オペレーティング システムを変更する必要があります。準仮想化をサポートするソフトウェアとテクノロジーをいくつか紹介します。
-
Xen: Xen は、最もよく知られ、広く採用されているオープンソースの準仮想化ソフトウェアです。仮想マシン モニター (ハイパーバイザー) を提供するため、複数の仮想マシンを同じ物理ホスト上で並行して実行できます。Xen では、Xen が提供する特定のインターフェイスを使用して通信および連携できるように、ゲスト オペレーティング システムを変更する必要があります。
-
Linux コンテナ (LXC): LXC は、Linux カーネルの機能に基づいてリソース分離とプロセス分離を実装する軽量の仮想化テクノロジです。LXC は、複数のコンテナを同じホスト上で実行できるようにするコンテナ化された環境を提供し、各コンテナは独立したファイル システム、ネットワーク、およびプロセス スペースを持ちます。LXC は従来の仮想化ではなく、オペレーティング システム レベルの仮想化に近いものです。
-
Parallels Virtuozzo Containers: Virtuozzo Containers は、コンテナ テクノロジーに基づく商用準仮想化ソリューションです。これにより、単一の物理ホスト上に、それぞれが独立したファイル システムと環境を持つ複数のコンテナを作成できます。Virtuozzo Containers は、Linux カーネルの機能を活用して、コンテナ間の分離とリソース管理を実現します。
完全仮想化にはパフォーマンスと互換性の点でより多くの利点があるため、準仮想化テクノロジーは完全仮想化テクノロジーよりも使用されていないことに注意してください。現在、KVM や VMware などの完全仮想化テクノロジが仮想化ソリューションの主流になっています。