Mostrando entradas con la etiqueta Virtualización. Mostrar todas las entradas
Mostrando entradas con la etiqueta Virtualización. Mostrar todas las entradas

martes, mayo 24, 2011

Virtualización con Kernel-based Virtual Machine KVM

KVM es una solución de virtualización que se apoya en Qemu como software de virtualización y en unos módulos del kernel para aprovechar los registro VT en procesadores Intel y SVM en los AMD.

Lo primero que haremos será configurar estos módulos en nuestro kernel:
Virtualization --> Kernel-based Virtual Machine (KVM) support --> KVM for Intel processors support

NOTA: En mi caso se trata de un microprocesador de Intel.

Instalamos las aplicaciones a nivel de usuario, para que la gestión de las máquinas virtuales sea mas cómoda también vamos a instalar una utilidad de gestión:
apt-get install qemu-kvm aqemu

Desde aqemu debe ser posible acceder a diferentes funcionalidades de Linux que solo es posible acceder con permisos de root, se pueden cambiar los permisos de diferentes dispositivos pero los mas fácil es editar los comandos permitidos por sudo:
visudo
"usuario" ALL=(root)NOPASSWD: /usr/bin/aqemu

KVM tiene el tema de gestión de red un poco verde, si tenemos una tarjeta de red ethernet no hay problema, tan solo habrá que generar un bridge de la tarjeta cableada pero si la tarjeta de red es inalámbrica en principio esto no es posible, a continuación explicaré como resolver cada uno de los escenarios.

Instalamos el software necesario:
apt-get install uml-utilities parprouted bcrelay

Red cableada:

Para que las máquinas virtuales puedan integrarse en nuestra red cableada es necesario crear un bridge entre nuestra tarjeta de red ethernet y una interfaz tap.

Generamos la interfaz y la levantamos:

tunctl -t tap0
ifconfig tap0 up

Creamos el bridge y le añadimos la interfaz ethernet y la virtual:
brctl addbr br0
brctl addif br0 eth0
brctl addif br0 tap0

Reconfiguramos la interfaz ethernet para que no posea ninguna dirección IP y le asignamos una al bridge:

ifconfig eth0 0.0.0.0
dhclient br0


Ahora asociamos nuestra tap0 a la máquina virtual:
Connection mode: Open a TUN/TAP interface
TUN/TAP Script Deshabilitado
Interface name: tap0

Nuestra máquina virtual ya se comportará como si se tratase de un equipo físico conectado a la red ;)

Red wireless:

En la red wireless debemos hacer dos distinciones según el método de asignación de direcciones IP a las máquinas virtualizadas:

IP estática:

Habilitamos el enrutado en el kernel:
echo 1 > /proc/sys/net/ipv4/ip_forward

Generamos una interfaz TAP:
tunctl -t tap0
ifconfig tap0 up

Le asignamos una ip de nuestra red:
ifconfig tap0 192.168.1.100

Con Parprouted conseguiremos hacer magia, se trata de un proxy ARP a nivel 3 ;))
parprouted wlan0 tap0

Añadimos una ruta estática para la máquina virtual:
route add -host 192.168.1.200 dev tap0

Ahora configuramos la máquina virtual en qemu:
Connection mode: Open a TUN/TAP interface
TUN/TAP Script Deshabilitado
Interface name: tap0

Dentro de la máquina virtual se configurará la direcciín IP de forma estática indicandole la IP: 192.168.1.200

Con esto la máquina virtual se podrá comunicar con Internet y con la máquina anfitrión.


IP dinámica:

Habilitamos el enrutado en el kernel:
echo 1 > /proc/sys/net/ipv4/ip_forward

Generamos una interfaz TAP:
tunctl -t tap0
ifconfig tap0 up

Le asignamos una ip de nuestra red:
ifconfig tap0 192.168.1.100

Habilitamos el proxy ARP de capa3:
parprouted wlan0 tap0

Parprouted tiene un inconveniente y es que solo permite el paso de tráfico unicast por el bridge, por lo tanto las peticiones DHCP serán capadas, pero existe la herramienta bcrelay que solventa este problema:
bcrelay -i tap0 -o wlan0 &

Ahora configuramos la máquina virtual en qemu:
Connection mode: Open a TUN/TAP interface
TUN/TAP Script Deshabilitado
Interface name: tap0

Dentro de la máquina virtual se configurará la dirección IP de forma dinámica.


NOTA: Las direcciones IP para las interfaces TAP he decidido que empiezen por la 100 y las IPs de las máquinas virtuales a partir de la 200, estos rangos son totalmente arbitrarios, yo los elegí porque son rangos libre de mi direccionamiento

Para cada máquina virtual habrá que añadir una interfaz tap distinta ocupando una ip de nuestra red :(
Si queremos que las máquinas virtuales puedan comunicarse entre ellas habrá que "bridgearlas" entre ellas:
parprouted tap0 tap1

De este modo nos podremos olvidar de los tediosos problemas que dan Vmware y VirtualBox cuando recompilamos el kernel, módulos que no compilan o ñapas en el código......

NOTA: Si se configura una máquina virtual Linux para que pida dirección por DHCP no funciona, este es un tema en el que seguiré indagando.

Dejo estos scripts para que todo sea automático, nos generará un TAP por máquina vritual, le asignará un IP y la meterá en un bridge junto con el resto de máquinas consiguiendo que todos puedan verse con todos y además tengan acceso a Inet ;), además el script configura de forma automática las intyerfaces con bcrelay.

Para que funcionen tendremos que definir algunas variables en AQemu_UP.sh

- AQemu_UP.sh
#!/bin/bash
clear
echo "|---------------------------------------|"
echo "| Script configuracion interfaces AQemu |"
echo "| By Kr0m V0.1b |"
echo "|---------------------------------------|"
echo " "
echo " "


rm -rf /tmp/TAPS 2>/dev/null
rm -rf /tmp/IP_VM 2>/dev/null

DIR_AQEMU=/mnt/datos/AQemu
N=0
RED_TAP=192.168.1.
IP_TAP=100
RED_VM=192.168.1.
echo $RED_VM > /tmp/RED_VM
IP_VM=200
echo $IP_VM > /tmp/IP_VM
WIFI=wlan0

echo 1 > /proc/sys/net/ipv4/ip_forward

for i in $DIR_AQEMU/*.aqemu
do
#echo i: $i
#echo N: $N
#echo IP_TAP: $IP_TAP
#echo IP_VM: $IP_VM
tunctl -t tap$N
ifconfig tap$N up
ifconfig tap$N $RED_TAP$IP_TAP
route add -host $RED_VM$IP_VM dev tap$N
bcrelay -i tap$N -o $WIFI &
let N=$N+1
let IP_TAP=$IP_TAP+1
let IP_VM=$IP_VM+1
done

N=$((N-1))
#echo N: $N
parprouted $WIFI $(for t in $(seq 0 $N); do echo tap$t; done)

echo $N > /tmp/TAPS

echo " "
echo " "
echo "---------- INTERFACES DE RED ---------------"
ifconfig

echo " "
echo "---------- TABLA DE RUTAS ------------------"
route -n

echo " "
echo "---------- PROCESOSO ARRANCADOS ------------------"
ps aux | grep bcrelay | grep -v grep
ps aux | grep parprouted | grep -v grep


- AQemu_DOWN.sh
#!/bin/bash
clear
echo "|---------------------------------------------|"
echo "|Script eliminacion interfaces AQemu |"
echo "|---------------------------------------------|"
echo " "
echo " "

echo 0 > /proc/sys/net/ipv4/ip_forward

N=$(cat /tmp/TAPS)
for i in $(seq 0 $N)
do
ifconfig tap$i down
done

killall parprouted
killall bcrelay

echo " "
echo " "
echo "------------- INTERFACES DE RED ---------------"
ifconfig

echo " "
echo "------------- TABLA DE RUTAS ------------------"
route -n

echo " "
echo "------------- PROCESOS ARRANCADOS ------------------"
ps aux | grep bcrelay | grep -v grep
ps aux | grep parprouted | grep -v grep

NOTA: Estos scripts precisan de privilegios de root, para ello configuraremos sudo de tal modo que:
"usuario" ALL=(root)NOPASSWD: "ruta AQemu_UP.sh"
"usuario" ALL=(root)NOPASSWD: "ruta AQemu_DOWN.sh"

sábado, enero 30, 2010

Drivers VMware

Cuando arrancamos una máquina virtual Linux en VMware solemos dejar el kernel que viene por defecto ya que suelen venir los drivers de la máquina virtual compilados en el kernel.

En ciertas ocasiones es necesario recompilar y para que todo funcione correctamente se debe de conocer el hardware de la máquina virtual, en este articulo voy a poner las opciones básicas para que la máquina pueda arrancar.

Entramos en la sección Device drivers y marcamos:

- ATA/ATAPI/MFM/RLL support
generic ATA/ATAPI disk support
ATA disk support
Include IDE/ATAPI CDROM support
Intel PIIX/ICH chipsets support

- SCSI device support
SCSI device support
SCSI disk support

- Fusion MPT device support
Fusion MPT ScsiHost drivers for SPI

- Network device support
Ethernet (1000 Mbit)
Intel(R) PRO/1000 Gigabit Ethernet support

Con estas opciones ya funcionará el disco duro tanto IDE como SCSI, el cdrom y la tarjeta de red.

Voy a dejar un fichero de configuración del kernel con el que solo tendremos lo básico, no tendrá sonido ni soporte para AGP ni ningún tipo de floritura.

lunes, junio 15, 2009

De nuevo VMware

Sí ya lo se, el puto VMware haciendo de las suyas en cada actualización de kernel, en esta ocasión se trata de la versión 2.6.30.
Para poder compilar los módulos necesarios hay que bajar dos ficheros, el primero es el parche propiamente dicho y el segundo un script para aplicarlo.

NOTA: Para poder aplicar el parche tube que desinstalar el VMware, reinstalarlo y finalmente aplicar el parche.

Una vez bajados los dos ficheros ejecutamos el script como root:
bash vmware-6.5.2-modules-2.6.30-fix.sh

Ahora arrancamos el VMware como usuario regular y voilá solo hay que ingresar el password de root para que nos compile los módulos y listo, VMware rulando con el kernel-2.6.30

domingo, junio 07, 2009

PacketTracer en Linux

Hace unos dias profundizabamos en el uso de GNS3, pero ahora le ha llegado el turno a PackeTracer, esta herramienta está mas enfocada a la enseñanza, se pueden observar el paso de los paquetes por los diferentes nodos. Además tiene la posibilidad de añadir Switches cosa que se hechaba de menos en GNS3, por contrapartido no nos carga una IOS si no que solo un sistema base con el que podremos hacer diferentes montajes pero no todo cuanto se nos ocurra.

Lo primero es conseguir el software, creo que lo podeis bajar de la página de CISCO, pero de todos modos lo he subido.

Descomprimimos el comprimido:
tar xvzf PacketTracer51_generic.tar.gz

cd PacketTracer51
./install

Nos aparecerá un asistente realizando algunas preguntas como la ruta de instalación, una vez hecho esto ya lo tendremos.

En mi caso particular tuve que instalar ciertas fuentes para que las tipografías de los menus apareciesen, no se exactamente cuales instalé ya que me puse a instalar hasta que funcionó, es cuestión de ir probando.

domingo, mayo 03, 2009

GNS3, el regreso!!!

Ultimamente he estado algo ocupado con un cursillo sobre MacroLAN y los módulos de preparación 1 y 2 del CCNA, pero a pesar de esto he conseguido algo de tiempo y voy a explicar como lograr meter nuestro host junto con varias máquinas virtuales en una nube del GNS3 [1].

Con esto lograremos emular todos los escenarios de red que desemos.

Primero habrá que compilar el kernel con la siguiente opción activada:
Networking Support --> Networking Options --> 802.1d Ethernet Bridging

Tambien tenemos que instalar las utilidades necesarias:
apt-get install uml-utils bridge-utils

Ahora ya podemos empezar la configuración.

Creamos un bridge virtual:
brctl addbr br0

Comprobamos que realmente se ha creado:
ip a

Lo habilitamos:
ip l s dev br0 up

Comprobamos que está habilitado, en br0: :
ip a

Creamos la interfaz Tap que se conectará al bridge:
tunctl -t tap0 -u root

La habilitamos:
ip l s dev tap0 up

Ponemos Tap0 y Eth0 en el mismo bridge:
brctl addif br0 tap0
brctl addif br0 eth0

Comprobamos que estan en el bridge:
brctl show br0
bridge name bridge id STP enabled interfaces
br0 8000.002219ddca5c no eth0
tap0

Desconfiguramos la interfaz Eth0 y la ponemos en modo promiscuo:
ifconfig eth0 0.0.0.0 promisc

Configuramos el bridge con la ip de nuestro equipo:
ip a a 192.168.1.11/24 dev br0
ip r a default via 192.168.1.1


En la configuración de la nube:
NIO TAP
TAP Interface: tap0

Si queremos conectar máquinas virtuales como por ejemplo haciendo uso de VmWare o VirtualBox se puede hacer configurando la interfaz en modo bridged a la interfaz tap0, con esto lograremos que tanto nuestro host, el router conectado a la nube y las máquinas virtuales se puedan ver entre ellas.

He realizado un pequeño Script que nos ayudará a realizar la configuración de forma automática.

Yo personalmente empleo la interfaz Eth0 para meterla dentro del bridge con la Tap0, así consigo comunicarme con las máquinas virtuales por la Eth0 y por la inalámbrica accedo a Inet ;)

PD: ConchiWorld con este sistema las máquinas virtuales pueden ver al host anfitrión sin necesidad de link en la interfaz, ya que se realiza la comunicación a través de la interfaz virtual Tap0.

lunes, marzo 30, 2009

Hee vuelto!!

Si amigos, tras una gran temporada sin dar signos de vida he vuelto, he estado ocupado buscando mi primer trabajo, además ya tengo Debian Lenny 5.0 versión estable, recien instalada en mi nuevo portatil y lista para hacer el mal, jejeje.

Al tener una distro nueva mis sources son otras diferentes a las que tenía anteriormente, de todos modos a la derecha voy a ir colgando mis sources.list.

En esta ocasión voy a explicar como solventar un problemilla que tuve con VMware y el kernel 2.6.29, la instalación concluía de forma correcta pero la compilación de los módulos fallaba.

Para solventar este problema se debe de aplicar un parche, una vez hecho esto compila sin problema alguno.

Para aplicarlo hay que ejecutar como root los siguientes comandos:
cd /usr/lib/vmware/modules/source/; mkdir orig; cp *.tar orig/; for i in `ls *.tar`; do tar -xf $i; done; rm *.tar; patch -p1 -i "RUTA HASTA EL PARCHE"; for i in mblock mci mmon mnet mppuser sock; do tar -cf v$i.tar v$i-only; done; rm -r *-only

Espero que le haya servido a mas de uno, en fín un placer ayudar y recordad "El conocimiento humano pertenece al mundo" ;)

miércoles, julio 02, 2008

Dynamips con GNS3

Hola amigos, en este artículo aprenderemos como configurar y poner en funcionamiento el simulador de sistemas Cisco Dynamips, para ello emplearemos un interfaz gráfica muy intuitiva llamada GNS3.
El simulador los podremos encontrar en este enlace, nos bajamos la última versión y ahora la interfaz gráfica GNS3.
Con esto ya tenemos todo lo necesario, descomprimimos tanto Dynamips como NGS3 si es que nos los hemos bajado comprimidos.
tar xvzf "paquete".tar.gz

Cambiamos al direcorio de NGS3 y allí encontraremos un fichero llamado gns3, le damos permisos de ejecución:
chmod +x ngs3

Y lo ejecutamos:
./ngs3

Nos aparecerá un pequeño asistente en el que le tendremos que especificar donde se encuentra el binario de Dynamips y las imágenes del sistema operativo de Cisco(IOS).

Cuando lo tengamos configurado arrastramos algún dispositivo de la derecha, lo configuramos con las interfaces que deseamos que tenga y la damos al botón derecho --> Iniciar.

Con esto se pondrá a la escucha el puerto 200 para el primer dispositivo, el 2001 para el segundo y así sucesivamente.

Tan sólo hay que realizar una conexión telnet a ese puerto y ya estaremos conectados al dispositivo para configurarlo.
telnet localhost 2000 --> Para el primer equipo arrancado
telnet localhost 2001 --> Para el segundo equipo arrancado

Aquí podéis ver como realmente funciona en mi Debian Lenny.











El único problema de todo esto es que las imágenes de los IOS son de pago, por lo tanto bajárselas es ilegal, aunque no creo que los chicos de Cisco se mosqueen siempre y cuando las empleemos de forma didáctica y para aprender el funcionamiento de sus equipos.

En breve publicaré algún que otro manual de configuración básica sobre Switches, Routers y Firewalls PIX.

viernes, abril 11, 2008

VirtualBox en Debian Lenny

Hace ya tiempo estuve probando VirtualBox un software de virtualización al estilo VMware, la principal diferencia es que este es totalmente gratuito.
El software se puede bajar de este enlace, de la página de Sun Microsystems ya que Sun compró Innotek hace relativamente poco tiempo, la versión que se encuentra en los repositorios nunca me ha llegado e funcionar.
Una vez bajado lo instalamos(aunque la versión sea para Etch funciona correctamente en Lenny):
dpkg -i virtualbox_1.5.6-28266_Debian_etch_amd64.deb
Con esto ya tenemos VirtualBox instalado en nuestro sistema, sólo queda hacer unos cuantos retoques y configurar la red.
Añadimos nuestro usuario al grupo vboxusers y ponemos los permisos apropiados a /dev/vboxdrv:
usermod -G vboxusers -a "USUARIO"
chmod 666 /dev/vboxdrv

Para poder obtener IP desde la máquina virtual debemos de seguir los siguientes pasos.
Instalamos las herramientas necesarias para crear puentes:
apt-get install bridge-utils uml-utilities
Para poder crear los puentes se debe de tener soporte en el Kernel, la opción necesaria se encuentra en:
Networking-->Network Options-->802.1d Ethernet Bridging

Una vez recompilado el Kernel ya podemos hacer los puentes y unirlos, este script nos será de ayuda para tal tarea.

#!/bin/bash
#Descargamos el módulo de VirtualBox y lo volvemos a cargar:
/etc/init.d/vboxdrv stop
/etc/init.d/vboxdrv start
#Deshabilitamos la red VirtualBox y la volvemos a habilitar:
/etc/init.d/vboxnet stop
/etc/init.d/vboxnet start
#Le damos los permisos necesarios a la interfaz de tunneling:
chmod 666 /dev/net/tun
#Creamos el bridge(puente):
brctl addbr br0
#Preparamos la interfaz de red real para ser conectada al bridge:
ifconfig eth0 0.0.0.0 promisc
#Conectamos eth0 al bridge:
brctl addif br0 eth0
#Pedimos IP para el bridge:
dhclient br0
#Permitimos el tap0 por parte de nuestro usuario:
tunctl -t tap0 -u "USUARIO"
#Conectamos tap0 al bridge:
brctl addif br0 tap0
#Asignamos IP a tap0:
ifconfig tap0 "IP CUALQUIERA DE LA SUBRED" up
#Habilitamos el soporte para operar como proxy ARP:
bash -c 'echo 1 > /proc/sys/net/ipv4/conf/tap0/proxy_arp'
#Añadimos la ruta hasta el anfitrión por la interfaz tap0:
route add -host "IP ANFITRION" dev tap0
#Modificamos nuestra tabla ARP para que el proxy funcione correctamente:
arp -Ds "IP ANFTRION" eth0 pub
#Le damos los permisos necesarios a la interfaz de tunneling:
chgrp vboxusers /dev/net/tun
chmod 666 /dev/net/tun

Con todo esto ya tenemos las máquinas virtuales capacitadas para poder acceder a la red, en configuración de red de la máquina virtual le pondremos.
Conectar a: Interface anfitrión
Configuración de interface anfitrión --> Nombre de la interface:tap0
Bueno pues creao que ya está todo explicado, sólo hay que tener en cuenta un pequeño detalle que a mí me trajo algunos problemas, mucho cuídado con las reglas IpTables, en mi caso por defecto lo bloquea todo y no me funcionaba hasta que descargué mis reglas personalizadas.
NOTA:Si alguien sabe como hacer que IpTables permita el paso de la información necesaria para que la red funcione correctamente le agradecería que escribiese un comentario explicandolo.

lunes, marzo 31, 2008

VMware6.0.2 con Kernel 2.6.24

Por fin está disponible en los repositorios de Debian Lenny las fuentes del Kernel-2.6.24, el cual no es vulnerable al exploit local con el cual cualquier usuario podía llegar a obtener privilegios de root.
La sorpresa ha sido que cuando he reconfigurado el VMware no se podía compilar el módulo de red, pero la solución es rápida y efectiva, tan sólo hay que descargarse este parche:VMware-any-any-update-116.tgz
Luego descomprimimos es fichero:
tar xvzf vmware-any-any-update-116.tgz
cd vmware-any-any-update116
./runme.pl
Le damos a siguiente a todo para que nos conserve nuestra antigua configuración de red y finalmente tenemos nuestro VMware totalmente operativo corriendo sobre el Kernel-2.6.24

sábado, septiembre 08, 2007

Kernel 2.6.22 incompatible con VMware.

Ya estoy empezando a cansarme de que cada vez que me descuido y actualizo a una nueva versión de kernel borrando las fuentes del antiguo tener que buscarme la vida para poder correr mis máquinas virtuales en el VMware, pero en fín ya tengo la solución, al menos es sencillo de arreglar.
Sólo hay que descargarse el siguiente parche una vez tengamos instalado en VMware:Parche
Descomprimirlo: tar xvfz vmware-any-any-update110.tar.gz
Instalarlo: cd vmware-any-any-update110
./runme.pl

domingo, febrero 18, 2007

Las X en Debian bajo VMware.

Estos son los pasos a seguir para instalar las X en una Debian básica, también se explica como instalar las VMware Tools:

apt-get install xserver-xfree86
apt-get install gnome
le damos a todo a enter
apt-get install gdm
apt-get install x-window-system-core
le damos a install vmware-tools
mount /media/cdrom
cp /media/cdrom/VMwareTools***.tar.gz
cd /
tar xvzf VMware****
cd /vmware-tools-distrib
apt-get install kernel-headers-"versión del kernel"
./vmware-install.pl
le damos a enter en todo, menos en la resolución que deberemos elegir la más apropiada.
Salimos de nuestra sesión y cuando estamos en la entrada de GDM
pulsamos Ctrl+Alt+<-(tecla de borrar).
Y ya lo tenemos amigos, quien no tiene entorno gráfico en Debian es porque no quiere joder.

sábado, enero 13, 2007

Todos al tren con la Virtualización.

Las distintas versiones de VMware son:
ESX Server es un producto sensiblemente distinto al concepto manejado por Workstation o GSX Server. Mientras que en las versiones “de andar por casa” la aplicación corre sobre nuestro sistema operativo para poder poner en marcha el VMM (Virtual Machine Monitor), la joya de la corona de VMware, ESX Server, es un sistema operativo en sí, sobre el que instalamos diversas máquinas virtuales, cada una con su sistema operativo.
La escalabilidad de la plataforma es excelente, claro que para ello también necesitamos una máquina la mar de maja, y como mínimo, con doble procesador (dual core vale).
Me gustaría echarle un vistazo serio a Xen, la aplicación de la que todo el mundo habla. El modelo de funcionamiento es parecido (al menos, lo es más que las similitudes que pueda haber entre ESX Server y GSX Server), ya que Xen utiliza un kernel específico para poder aplicar al técnica de paravirtualización, que parece funcionar muy bien , por lo que cuentan por ahí.
Xen en un principio no tira tanto como VMware, sin embargo la reciente aparición de XenSource, que pretende darle alas “empresariales” al proyecto nacido en la Universidad de Cambridge, podría cambiar el panorama sensiblemente, tal y como opinan en algún artículo realmente interesante como el publicado recientemente en CRN. Una de las razones de ese posible éxito es, como siempre, el coste comparativo de ambas soluciones: puede que ESX no tenga parangón en el mundo Windows, pero es realmente cara y Xen es una alternativa realmente válida para aquellos servidores funcionando con Linux, y que no necesitan soporte para los sistemas operativos y productos de Redmond.
Así que las cosas pintan bien en este campo, que está específicamente destinado a sacarle todo el jugo a nuestra máquina, de forma que esos ciclos de reloj que no se usan para nada puedan aprovecharse para otros propósitos. Más interesante se prevee el futuro cuando las tecnologías Vanderpool y Pacifica (de Intel y AMD, respectivamente) entren en juego para dar soporte hardware a la virtualización, resolviendo (esperemos) los problemas que la arquitectura IA-32 ha ofrecido siempre a estos esquemas de virtualización, debido a los modos de ejecución de las instrucciones.

Virtualización, más madera.

Uno de los aspectos que está considerando es el de poder aprovechar las nuevas posibilidades que abre la virtualización hardware, tanto Intel (Vanderpool) como AMD (Pacifica). Intel ya ha comenzado a comercializar los primeros Pentium 4 (en concreto, el 662 y 672), en integrar la Tecnología de Virtualización (VT), lo que antes se conocía con el nombre clave de Vanderpool, y que por fin llega al mercado de sobremesa. De momento, los grandes de la industria de la virtualización no pueden más que frotarse las manos ante la aparición de estas soluciones, que potenciarán aún más un campo en el que el aprovechamiento de los recursos del PC se hace mucho más evidente. Acabo de leer un artículo sobre el futuro de Xen, la que califican como la nueva killer app del código abierto, y aunque muchas esperanzas están puestas en esta solución, la reciente presentación de la nueva versión de ESX Server a la que pude asistir por parte de VMware y la reciente presentación oficial de VMware Player evidencian el buen estado de forma de esta reputada firma. Microsoft tratará de arañar merado con su Virtual PC, que también ha puesto en juego en plataformas servidoras con Virtual Server, pero por lo que parece el único contendiente real de VMware es Xen, y más concretamente XenSource, la empresa que pretende hacer negocio con una vertiente comercial de un desarrollo que se encuentra disponible como proyecto de libre distribución y que muchas distribuciones ya incluyen de serie. Pase lo que pase, quería apuntar la buena idea que han tenido los de VMware con la aparición de Player. La aplicación nos permitirá ejecutar una máquina virtual en cualquier PC, siempre que contemos con un entorno mínimo obligatorio y, por supuesto, con los ficheros necesarios de la máquina virtual original. Esto facilita la portabilidad de las máquians virtuales, pero como no podía dejar de pasar, también ha generado la picaresca de los tradicionales curiosos.

lunes, enero 08, 2007

Confirmado KVM para el Kernel 2.6.20.

Chicos el gran día se acerca, según la peña va a ser rápido, estable y seguro, va a ser la monda.

martes, diciembre 19, 2006

Linux contará con una solución de virtualización integrada en el kernel.

Que la virtualización constituye uno de los paradigmas de futuro con el que trabajan las compañías e iniciativas informáticas hoy día (y, especialmente, todas aquellas relacionadas con los diferentes sistemas operativos) no constituye ninguna sorpresa ni nada nuevo y, evidentemente, Linux no podía ser menos.

Las soluciones de virtualización que se añaden al sistema operativo como software descargable e instalable son actualmente la solución utilizada tanto por usuarios como por desarrolladores, pero parece que el futuro de la virtualización a medio plazo va en otro sentido, pues se trabaja en la dirección de incorporar tecnologías de virtualización a bajo nivel directamente en el núcleo de los sistemas operativos. Ya se especuló que Apple lo haría en Mac OS X 10.5 "Leopard", rumor que fue tan insistente que obligó a la compañía de Steve Jobs a emitir un comunicado negándolo (con un pero que dejaba la puerta abierta en el futuro), e incluso que Microsoft lo haría con Windows Vista, aunque parece que va a ser Linux el primer sistema operativo que incluya en su núcleo la capacidad de ejecutar máquinas virtuales.

Será concretamente en la versión 2.6.20 del kernel (núcleo) del sistema del pingüino -de la cual en el momento de escribir estas líneas disponemos de una versión Release Candidate-, y el componente recibe el nombre de KVM (Kernel-based Virtual Machine).

KVM funcionará como módulo (kvm.ko) por el momento de forma exclusiva sobre plataforma x86 permitiendo la ejecución de sistemas operativos no-alterados* en un espacio virtualizado en el cual facilitará el acceso a una unidad de disco virtual, tarjeta gráfica e incluso conexión de red. Si queremos testear su funcionamiento, ya está disponible para descargar y ejecutar con nuestra distribución favorita siendo totalmente funcional y permitiendo la ejecución virtualizada de sistemas Linux de 32 y 64 bits, y Windows de 32 bits.

Para aquellos usuarios de la distro openSUSE (de la cual recientemente se ha liberado la versión 10.2) que quieran probar KVM, existen unos paquetes RPM con binarios ya construidos y con relativa poca dificultad para su instalación. Los usuarios de Debian también cuentan con unas simples instrucciones para empezar a trabajar con KVM, y próximamente se prevé la aparición de paquetes para su instalación en Fedora Core.

Para funcionar, este software utiliza una versión modificada de QEMU, un proyecto también libre de máquina virtual hardware, reconociendo los formatos de archivo de disco duro virtual del propio QEMU y de VMware.

Para el futuro se deja abierta la posibilidad de un port de KVM para Windows.

Más información:

KVM: Kernel-based Virtual Machine for Linux
http://kvm.sourceforge.net/

http://linux.inet.hr/finally-user-friendly-virtualization-for-linux.html

* Otra iniciativa en el terreno del software libre como es Xen necesita que el sistema operativo virtualizado esté preparado para ello, por lo cual y al no dar Microsoft acceso al código fuente de Windows, por el momento Xen no puede ejecutar dicho sistema operativo.

miércoles, julio 05, 2006

VMware

Para los pobres inocentes que aun dependen de windows y sus asficsiantes licencias, existe una increíble aplicación para poder emular sistemas operativos bajo una máquina virtual, en la captura se puede apreciar los detalles de la gráfica virtual que se está emulando.
Su funcionamiento es muy sencillo, esta aplicación se llama VMware, es software de pago pero esta muy chulo, mirad las capturas de pantalla en mi gentoo, jejeje mola verdad, lo mejor de todo es que te puedes simular una red entera en tu PC con distintos SO y trastear con ellos, a mi parecer es una herramienta de estudio indispensable para cualquier telemático que se precie.