予備のIntegrityブレード(2xTukwilaクアッドコア+ 16Gb RAM)を配置し、その周りにいくつかのLinuxVM用の仮想ホストを使用します。私は自分たちの状況に最適な解決策を見つけることにいくつかの懸念を抱いています(解決策が可能かどうか)。これが私が扱っているものです:
では、私の質問を要約すると、Itaniumサーバーでx86_64ゲストを仮想化するにはどうすればよいでしょうか。
既存のハイパーバイザーに満足するとは思いません。それらが機能する方法では、ゲストコードは、これが整合性を損なう特別な場合を除いて、ほとんどの場合ハードウェアプラットフォームでネイティブに実行されます。つまり、呼び出しが傍受されて書き換えられます。 x64バイナリをItaniumプラットフォームで実行するには、完全なバイナリ変換(エミュレーション)が必要になります。これは、パフォーマンス面で非常にコストがかかり、通常はハイパーバイザーに実装されていません。
Itaniumプラットフォーム用のx64エミュレーションを実行するソフトウェアがある可能性がありますが、おそらく問題の価値はありません。最初のItanium世代のIA-32エミュレーションレイヤーの場合のように、パフォーマンスは期待外れになります。
kvmソリューションのqemu側で完全にitaniumでx64をエミュレートできますが、かなり遅くなります(qemuはかなり最適化されているため、おそらくネイティブの10%)
Itaniumでx64(x86-64)ゲストを仮想化することはできません。
Itaniumサーバーを仮想化すると、Itanium仮想マシンが得られます。 HPには、Itaniumで仮想化できる Integrity VM というソフトウェアがあります。 XenはおそらくItaniumもサポートしています。その後、これらの仮想マシンでHP-UX、Linux、およびWindowsServerを実行できます。
ただし、x64エミュレーションの場合は、エミュレーションソフトウェアが必要です。そのようなソフトウェアが簡単に入手できるかどうかはわかりません。それは存在します、IBMの QuickTransit Itaniumでのx64エミュレーションをサポートしますが、IBMはそれをもう販売していません。
とにかくパフォーマンスはあまり良くありません。他のアーキテクチャを使用する必要がある場合、エミュレーションは互換性のために非常に役立ちます。したがって、アーキテクチャAのアプリケーションがあり、アーキテクチャBのアプリケーションを実行する必要がある場合は、AでBをエミュレートするか、その逆を行うのが理にかなっています。ただし、アーキテクチャBのサポートが必要な場合は、アーキテクチャAでエミュレータを実行することはお勧めできません。