Cerca nel blog

giovedì 23 dicembre 2010


Lo staff VM User Group Italia augura a voi tutti Buone Feste.
Invito chi non l'avesse fatto a segnalare il proprio interesse tramite l'apposita pagina di VMware:

Vi segnaliamo inoltre che anche su LinkedIn è presente un nuovo VMUGIT:

domenica 19 dicembre 2010

Problemi di compatibilità CPU tra esx apparentemente identici

Recentemente ho installato 12 server Dell PowerEdge R710, 2 CPU esacore e 128 Gb di RAM ciascuno, assolutamente identici.

Al termine dell'installazione dell'esxi (4.1) su tutti e 12 i server, ho riscontrato un problema alquanto curioso, che vorrei condividere con voi.

Installati gli hosts esx e costruito il mio cluster (con HA e DRS abilitati), ho iniziato a fare delle prove di VMotion per verificarne il corretto funzionamento; nella migrazione tra 2 host però mi si presenta un problema: ricevo questo errore:

Host CPU is incompatible with the virtual machine's requirements at cupid level 0x1 register'ecx'

Host bits: 0000:0100:0000:1000:0010:0010:0000:0001

Required: 1000:0100:0000:100x:xxx0:0x1x:xxx0:x001

Mismatch detected for these features.

Rimango molto stupito in quanto i sever dovrebbero essere assolutamente identici. Eseguite alcune verifiche di base sulle impostazioni del BIOS, non riscontro alcuA questo punto non ho altre alternative se non quella di lanciare la CPU indentification Utility, reperibile a questo indirizzo CPUID.

Per eseguire il tool non è necessario riavviare l'esx, basta creare una macchina virtuale vuota ed utilizzare l'iso scaricata per fare il boot.

Su 11 dei 12 esx la schermata si presentava come di seguito:


Mentre su di un unica macchina risultava così:


Come si può vedere le CPU sembrano assolutamente identiche: supporto alle stesse istruzioni, stessa CPU etc etc, però analizzando più in dettaglio i dati rilevati possiamo notare che i campi ID1ECX non sono identici.

In 11 dei 12 esx il campo riporta il valore

0x82982203

mentre in un unico esx riporta un valore diverso (che è la causa del NON funzionamento del VMotion):

0x80982201

Identificato il possibile problema, cerchiamo di interpretare il significato di quei valori.

Viene in nostro aiuto questo documento http://www.intel.com/Assets/PDF/appnote/241618.pdf

e precisamente a pagina 26, in cui vengono descritti tutti i valori del registro ECX; nel documento vengono indicati i valori di ogni singolo bit del registro ECX (0 mancante 1 presente).

I valori sono in notazione esadecimale, mentre il documento fa riferimento ai valori binari, quindi dobbiamo semplicemente trasformare i valori trovati in binari (la calcolatrice di default del nostro sistema operativo sarà più che sufficiente):

esx(dall' 1 all'11) (0x82982203) 1000 0010 1001 1000 0010 0010 0000 0011
esx(il 12) (0x80982201) 1000 0000 1001 1000 0010 0010 0000 0001

i bit dal 28 al 31 sono riservati, mentre si può notare che il valore del bit numero 6 (quello in grassetto, il primo bit è il numero 0, quindi il settimo numero nel nostro caso) è diverso rispetto a tutti gli altri host esx.
Guardando la tabella di pagina 26 del documento di cui abbiamo parlato precedentemente, risulta disabilitato l'SMX Safe Mode Extension.

Questa situazione può essere riconducibile sia a un'errata configurazione del BIOS sia ad un difetto di fabbricazione;

Una possibile soluzione da provare subito potrebbe essere quella di provare a rimettere a default tutti i valori del BIOS.

Nel caso vi si presenti lo stesso problema, dopo aver verificato che i valori del BIOS siano identici tra i vari hosts esx, aprite una chiamata con il vostro fornitore di hardware.

Ciao alla prossima