XenServer 6の異種プロセッサプール

少し前まで、顧客は仮想マシンのプールを構築する必要がありました。仮想マシンはHP ProLiant 6および5世代のサーバーで構成されていました。 これらのサーバーのプロセッサー:Xeon E5502およびX3353 。 バージョン5.5以降、Xenは異種プロセッサプールをサポートしています。

4つのタイプの異種プールについて説明します。
  1. 生産性の低いホストに生産性の高いホストを追加します。
  2. 生産性の低いホストを生産性の高いホストに追加します。
  3. プール内の異なる相互に排他的なホストの組み合わせ。
  4. 同じ機能を持つ異なるCPUの組み合わせ。




タイプ1は、マスクされていない既存のプールとの互換性を確保するために、接続されたCPUにマスクを適用することを意味します。このオプションはXenServerに自動的に含まれます。 タイプ2は、既存のプールにマスクを適用することを意味し、追加されるサーバーはマスクされないままです。 タイプ3は、既存のプールとホストに共通のマスクを適用して互換性を持たせることを意味します。 タイプ2およびタイプ3は、XenAPIおよびXe CLIを介してサポートされます。 タイプ4は、マーケティング名は異なるがフラグと機能のセットが同じモデルに適しています。

ブログの1つで、マスクを手動で変更せずに2つのサーバーをプールに追加するビデオに出会いました。 残念ながら、私の場合、どの組み合わせでも、XenServerは「このサーバーのハードウェアはマスターのハードウェアと互換性がありません」と返しました。 マスクを適用しようとするだけでした。

既存のプールにマスクを適用すると、稼働中の仮想マシンに影響するため、ホストを再起動してマスクを適用する時間を選択する必要があります。

追加のニュアンスは、新しいプロセッサーと古いプロセッサーを、より生産的で生産的でないとは必ずしも言えないことです。 多くの場合、新しいプロセッサモデルは古いプロセッサにある機能を使用しないため、互換性が失われる可能性があります。 したがって、最新のプロセッサでホストマスクを使用する場合、古いプロセッサモデルを含むプールにホストマスクを接続するだけで十分であるという保証はありません。

サポートされているプロセッサの組み合わせは、 ハードウェア互換性リストに記載されています。

マスキングオプションの選択を取得します。

Citrix Xen Serverでは 、ホストで使用するプロセッサーを決定する必要があります。

私たちの場合、これらはX3353 (4コア2.66GHz)とE5502 (2コア1.86GHz)でした。

Citrix XenServerでxe host-cpu-info



コマンドを使用してプロセッサー属性を検討します。

 [host_a] # xe host-cpu-info cpu_count : 4 vendor: GenuineIntel speed: 1866.734 modelname: Intel(R) Xeon(R) CPU E5502 @ 1.87GHz family: 6 model: 26 stepping: 5 flags: fpu de tsc msr pae mce cx8 apic sep mtrr mca cmov pat clflush acpi mmx fxsr sse sse2 ss ht nx constant_tsc pni vmx est ssse3 sse4_1 sse4_2 popcnt features: 009ce3bd-bfebfbff-00000001-28100800 features_after_reboot: 009ce3bd-bfebfbff-00000001-28100800 physical_features: 009ce3bd-bfebfbff-00000001-28100800 maskable: full
      
      





 [host_b] # xe host-cpu-info cpu_count : 4 vendor: GenuineIntel speed: 2666.668 modelname: Intel(R) Xeon(R) CPU X3353 @ 2.66GHz family: 6 model: 23 stepping: 6 flags: fpu de tsc msr pae mce cx8 apic sep mtrr mca cmov pat clflush acpi mmx fxsr sse sse2 ss ht constant_tsc pni vmx est ssse3 sse4_1 features: 000ce3bd-bfebfbff-00000001-20000800 features_after_reboot: 000ce3bd-bfebfbff-00000001-20000800 physical_features: 000ce3bd-bfebfbff-00000001-20000800 maskable: base
      
      





結果をE5502.txtおよびX3353.txtに保存します。

XenServer 5.5では、ベンダー、モデル、ファミリ、およびフラグの値が同じ場合にのみ、プロセッサをプールに追加できるという条件があります。

バージョン5.6以降、異種プールを作成するには、サーバープールと接続ホストのフラグ値のみが同一である必要があります。

Heterogeneous CPU Pool Self-Test Kitを使用して、マスクの互換性を確認します。

 # ./compare-cpu E5502.txt X3353.txt -v file1: E5502.txt file2: X3353.txt pool_mask: ffffff7f-ffffffff-ffffffff-ffffffff CPU 1: model name: Intel(R) Xeon(R) CPU E5502 @ 1.87GHz features: 009ce3bd-bfebfbff-00000001-28100800 masking level: full CPU 2: model name: Intel(R) Xeon(R) CPU X3353 @ 2.66GHz features: 000ce3bd-bfebfbff-00000001-20000800 masking level: base Result: CPU 1 and CPU 2 are compatible for masking Mask type: 1 CPU 1 has a superset of features to CPU 2 Mask: 000ce3bd-bfebfbff-00000001-20000800
      
      





また、逆に、X3353がE5502プロセッサを備えたプールに追加された場合:

 # ./compare-cpu X3353.txt E5502.txt -v file1: X3353.txt file2: E5502.txt pool_mask: ffffff7f-ffffffff-ffffffff-ffffffff CPU 1: model name: Intel(R) Xeon(R) CPU X3353 @ 2.66GHz features: 000ce3bd-bfebfbff-00000001-20000800 masking level: base CPU 2: model name: Intel(R) Xeon(R) CPU E5502 @ 1.87GHz features: 009ce3bd-bfebfbff-00000001-28100800 masking level: full Result: CPU 1 and CPU 2 are compatible for masking Mask type: 2 CPU 1 has a subset of features to CPU 2 Mask: 000ce3bd-bfebfbff-00000001-20000800
      
      





マスクは同じですが、アクションのタイプは異なります。

比較するプロセッサー機能 プロセッサ機能には、基本と高度の2つのセットがあります。 両方のタイプは、 ECXEDXとして知られる2つの半分に分けられます。 特定のプロセッサペアのマスキングオプションを決定するには、これらのプロセッサのマスキングレベルと組み合わせて関数の値を比較する必要があります。 簡潔にするために、XenServerは関数値を16進数で保存します。

E5502およびX3353プロセッサーの機能を検討してください。

 || CPU model || base_ecx || base_edx || ext_ecx || ext_edx || Masking level || | E5502 | 009ce3bd | bfebfbff | 00000001 | 28100800 | full | | X3353 | 000ce3bd | bfebfbff | 00000001 | 20000800 | base |
      
      





Base_ecxとExt_edxには違いがあります。関数をバイナリコードに変換して、関数ビットの特定の違いを確認します。

  || CPU model || base_ecx (bin) || ext_edx (bin) || | E5502 | 000100111001110001110111101 |101000000100000000100000000000 | | X3353 | 000000011001110001110111101 |100000000000000000100000000000 | | | xx | xx | | | 24 21 0 | 28 21 0 |
      
      





E5502プロセッサでは、ビット21と24がbase_ecxにありますが、X3353プロセッサにはありません。 E5502プロセッサのext_edx関数にはビット21と28が含まれていますが、これらはX3353にはありません。 なぜなら E5502プロセッサはマスキングレベル(フル)を完全にサポートし、X3353プロセッサは基本レベル(マスキングレベル:ベース)でマスキングをサポートするため、統合マスクが可能です。 マスクはビット単位のANDを計算することで計算できます。相互排他的なプロセッサ機能は無効になります。

 || CPU model || base_ecx (bin) || ext_edx (bin) || | E5502 | 000100111001110001110111101 |101000000100000000100000000000 | | X3353 | 000000011001110001110111101 |100000000000000000100000000000 | | | xx | xx | | Joint | 000000011001110001110111101 | 100000000000000000100000000000 |
      
      





16進形式で変換します。

 || base_ecx || ext_edx || | 000ce3bd | 20000800|
      
      





ext_ecxとbase_edxを変更せずにこれらの値を追加し、ユニオンマスクを取得します。

000ce3bd-bfebfbff-00000001-20000800





ハードウェア互換性リストを調べたところ、マスクが正しいと確信しています。

E5502プロセッサを搭載したホストにマスクを適用することは残ります。

 xe host-set-cpu-features features=000ce3bd-bfebfbff-00000001-20000800 uuid=<host_uuid>
      
      





ホストの再起動後、E5502プロセッサにはX3353と同じ機能があります。

 # xe host-cpu-info cpu_count : 4 vendor: GenuineIntel speed: 1866.734 modelname: Intel(R) Xeon(R) CPU E5502 @ 1.87GHz family: 6 model: 26 stepping: 5 flags: fpu de tsc msr pae mce cx8 apic sep mtrr mca cmov pat clflush acpi mmx fxsr sse sse2 ss ht nx constant_tsc pni vmx est ssse3 sse4_1 sse4_2 popcnt features: 000ce3bd-bfebfbff-00000001-20000800 features_after_reboot: 000ce3bd-bfebfbff-00000001-20000800 physical_features: 009ce3bd-bfebfbff-00000001-28100800 maskable: full
      
      





物理的機能は変更されません。

現在、互換性マトリックスには新しいE5-2400およびE5-2600プロセッサーはありません。HPProLiantサーバーの次のBIOSアップデートのリリース後、Gen8世代の新しいプロセッサーのマスキングはサポートされます。

 # xe host-cpu-info cpu_count : 32 vendor: GenuineIntel speed: 2700.068 modelname: Intel(R) Xeon(R) CPU E5-2680 0 @ 2.70GHz family: 6 model: 45 stepping: 7 flags: fpu de tsc msr pae mce cx8 apic sep mtrr mca cmov pat clflush acpi mmx fxsr sse sse2 ss ht nx constant_tsc nonstop_tsc aperfmperf pni pclmulqdq vmx est ssse3 sse4_1 sse4_2 x2apic popcnt aes hypervisor ida arat tpr_shadow vnmi flexpriority ept vpid features: 17bee3ff-bfebfbff-00000001-2c100800 features_after_reboot: 17bee3ff-bfebfbff-00000001-2c100800 physical_features: 17bee3ff-bfebfbff-00000001-2c100800 maskable: no
      
      





E5-2680プロセッサの機能はbase_ecxのみでE5502の機能と異なり、新しいプロセッサはFlex移行機能をサポートしていることがわかります(必要に応じて)、マスクは次のようになります。

009ce3bd-bfebfbff-00000001-2c100800



ですが、更新されたBIOSバージョンのみです。 CPUマトリックスによる 、E5-2600プロセッサーはサポートされており、XenServer 6.0で使用できますが、これまでは同種のプールでのみ使用できます。



All Articles