Datos personales

Mi foto
BARCELONA, Barcelona
VCP310, VCP410, DCIE, ITIL Foundation

jueves, 13 de mayo de 2010

La máscara EAX

Hola que tal? Soy José Mª Gris y como cada semana vengo a comentaros alguna cosa sobre el ecosistema de Virtualización con VMware.

Días atrás, nuestro amigo jnavapal nos preguntaba lo siguiente:

“Te explico mi actual situación he configurado mis servidores para poder realizar vmotion y drs pero me he encontrado con al sorpresa que no me deja uno de ello por problemas con la mascara “eax” me gustaría, si pudieras, q me explicaras un poco como solucionar ese problema y que implicaciones tiene”

Como comenté en su día, no está soportado por VMware, pero lo he visto funcionar y evidentemente lo desaconsejo para producción. Quede claro que lo que aquí comento es a efectos formativos y no significa para nada ninguna recomendación.

Dicho esto, esto ocurre cuando tenemos procesadores distintos con niveles distintos. Es importante que tengamos a mano la herramienta de run virtual VMware CPU Host Info. Nos la descargamos y la ejecutamos desde un entorno windows que tenga acceso a nuestro vCenter (Vicente para los amigos) y a nuestros hosts.

image

Lo ejecutamos con la opción debug (importante) para que nos muestre los binary directamente.

La primera pantalla nos mostrará nuestros ESX, cuantas CPU tienen, si soportan FT, VT, etc., información interesante. Para el caso que nos ocupa, mal vamos, las CPUs parecen iguales.

image

Pero lo que nos interesa de verdad viene en la ventana de atrás….

image

Aqui vemos los registros EAX, EBX, etc de nuestas CPUs. Pues sí son iguales, podremos hacer vmotion sin problemas. Pero esto no es lo que nos preguntan. Si no falla Vmotion por este concepto, nos aparecerá un mensaje que nos dirá algo como “Hay un problema con el registro EAX”. Bien, entonces tendremos que hacerlos iguales.

imaginemos una máscara y la “distinta”

0000 1110 0000 0000 0000 0000 0000 1000

0000 0000 0000 0000 0000 0000 0000 1011

Nos vamos a una VM, “Edit Setting”, “Options”, “CPUID Mask” y ahí en “Advanced”, nos aparecen nuestros registros de las CPUs y si hacemos click sobre uno veremos las máscaras (ya llegamos…. ). Las máscaras nos interesan las X (Unused), 1 (enable feature), 0 (Hide feature) y la H (Allow Guest software to see actual feature value.) Con ello si tenemos

XXXX HHHH XXXX XXXX XXXX XXXX XXXX HHHH

Querrá decir que el segundo y el cuarto cuarteto son los que “permiten”, con ello lo que deberíamos modificar es lo siguiente

---- 000- ---- ---- ---- ---- ---- 0-00

y quedaría como final mask:

XXXX 000H  XXXX XXXX XXXX XXXX XXXX 0H00

Y esto hacerlo a las VM que queremos hacer vMotion. Reitero, no lo uséis en producción.

Aprovecho para indicar las opciones “Hide the NX flag from Guest” (Con lo que podemos ganar compatibilidad en vMotion pero podemos perder algúna feature de seguridad de nuestra CPU. “Expose th NX flag to guest” Mantendrá todas las features de seguridad activas.

Cuidado con usar la máscara porque podemos estar desabilitando alguna feature importante y podemos tener problemas. hay que mirar las documentaciones de los procesadores y perdonad si soy pesado, nunca en producción.

Hasta la semana que viene.

Cuidaros.

No hay comentarios: