Windows enmascarado con XEN

Descripción

El proposito es convertir un equipo en una estación de Windows, pero virtualizado con XEN. Optimizando al maximo inclusive usando paravirtualizacion y PCI Passthrought

Este howto debe leerse con cuidado. Hay muchas cosas que son producto de las necesidades particulares del proyecto que generó este documento, pero la idea esta clara.

Prerequistos

Un equipo disponible y los medios para instalar un linux livianito. Mucho de lo que haces es con XEN 4.3 porque hay ciertas cosas que no soporta los anteriores.

Instalación

1. Instalación del sistema base

En principio buscamos originalmente un sistema operativo lo mas minimo posible aun menos que Instalación Minima o como el de kuine .

Lo mas cercano a lo que se quiere esta en las siguientes referencias

sigalas hasta que vaya a crear un DomU o sea un cliente. En general son muy parecidos pero hay ciertas consideraciones en las que divergemos

  • Antes de instalar XEN .. configure el video .. es saludable.
  • En nuestro proyecto el particionamiento no estamos usando LVM sino que estamos partiendo natural con

- 50G sistema  /,  sda1
- swap de 8G , sda2
- resto para /virtual sda3

  • La interfaz de red en bridge no tiene DHCP sino es estatica y ademas adicional una virtual. Tambien es bueno poner los tiempos de espera a cero.
  • Para equipos sin muchos CPUs, preferimos no limitar el numero de CPUs del DomO y dejarlo en el default (dom0-cpus 0) pero la memoria si es bueno limitarla  (512 o 2

(dom0-min-mem 512)
(enable-dom0-ballooning no)

  • Ignore la consola serial
  • Cambie el sitio  de las imagenes /etc/xen-tools/xen-tools.conf  y ponga “dir = /virtual”
  • Si instala un XEN nuevo (4.3) ya no existe xen-qemu-dm y se prefiere que el “toolstack” no sea xm sino xl (ver adelante)

Los archivos de configuración que estamos usando son

2. Instalar el Host

El secreto de todo esta en el archivo de configuración /etc/xen/W2012.cfg  y dependiendo de este funciona o no.  ** solo valido para xen-4.3
** OJO no coma entero .. lea el archivo y entienda para que sirve cada cosa y si toca ajustarlo HAGALO !!!

No estamos usando particiones como disco duro, aun cuando puede ser una buena idea. Cree los discos duros a mano en /virtual/domains/W2012/.

dd if=/dev/zero of=W2012.img bs=1024k seek=40000 count=0dd if=/dev/zero of=W2012-DATA.img bs=1024k seek=300000 count=0

Estamos usando uno para el sistema y el resto para datos.

Una vez tiene esto puede arrancarlo con

 >> xl create W2012.cfg

Y ya puede verlo andando con un vncviewer, ya sea local o remoto

 >> vncviewer localhost:0 o vncviewer servidor:0

Ya tiene un Xen andando. con virtual andando

OJO: Para windows instale los drives GLPPV lo que hace que se convierta en una full virtualizado en Paravirtualizado (http://wiki.xen.org/wiki/Xen_Windows_GplPv y http://wiki.univention.de/index.php?title=Installing-signed-GPLPV-drivers)

3. Despliegue del video local

Iniciando con el proposito de este howto es desplegar localmente, se tienen tres opciones en orden de dificultad y desempeño, de facil a dificil y de peor a mejor.

  • VNC
  • SDL
  • VGA Passthrought

Los dos primeros requieren que tenga un X-Windows operativo y el segundo bastante truculento

3.1 Despliegue local VNC

El truco que estamos usando ahora esta en cambiar el /etc/X11/xinit/xinitrc, comentar todo y solo pedirle que arranque

vncviewer -fullscreen localhost:0

Y en consola como root, una vez tiene la maquina corriendo, puede lanzar startx y listo tiene despliegue

3.2 Despliegue local SDL

El despliegue por SDL es local, lo que mejora el desempeño. Funciona como un aplicativo local, lo que mejora considerablemente.

Como tambien esta sobre X, se puede usar el mismo truco del punto anterior, pero la ventana es parte de la maquina virtual. Si se mata la ventana, el cliente tambien muere

Se necesita que sobre X se levante la maquina virtual  (xl create W2012.cfg)

3.3 Despliegue local con VGA  Passthrought

Ya quisieramos .. OJO .. si no hay IOMMU no anda .. siga los pasos para ver si anda el IOMMU

http://wiki.xen.org/wiki/Xen_PCI_Passthrough#How_can_I_check_if_PCI_device_supports_FLR_.28Function_Level_Reset.29_.3F –
 
Sin IOMMU para un hvm no hay forma !!! Para un PV se puede pasar a mano.

4. Uso de dispositivos USB

Solo xm soporta el pasthrought .. no entiendo

Configuración

1. Cambiar el toolstack de xm a xl (recomendado en 4.3)

Cambie en /etc/default/xen .. el valor del toolstack de vacio a xl … y reinicie

2. Arranque automatico con el sistema

  • Cree el directorio /etc/xen/auto
  • en ese directorio ponga un link al archivo de configuracion  ln -s ../W2012.cfg
  • Y yap

3. Quiero despliegue con SDL

  • Ponga en el archivo de configuracion de la maquina sdl=1 
  • y posible agregue tambien opengl=1
  • Y ahora arranquelo despues de arrancar la capa de X.


** Solo me funciona llamandolo desde un X

 

Trucos

Problemas

1. No logro buen video

La recomendacion dice agregue en la configuracion

stdvga=1videomem=16

Mejora un resto, pero resoluciones no estandares como 1366×768 no lo he logrado

-

Referencias

-

FIN


Advertencia

Este documento es privado y es de u so exclusivo de sus autores y de SKINA TECH. Cualquier uso sin una autorización escrita es contra la ley de derechos de autor y de propiedad intelectual, y será motivo de una acción legal.


 

15-Marzo-2006 J.E.Gomez v1.0 Primera version

Volver arriba