You are on page 1of 31

VIRTUALIZACION

Para decirlo de una forma sencilla la virtualizacin es la creacin de un entorno virtual donde puedes ejecutar otros programas de manera independiente, esos programas sern los mismos que ejecutas normalmente en tu computadora, pero funcionarn, por as decirlo, en una rplica de un sistema operativo. Por tanto la virtualizacin es un programa que ofrece el soporte para instalar otros sistemas operativos sobre tu misma mquina, los que funcionarn de manera encapsulada dentro de ese entorno virtual.

HISTORIA: La virtualizacin no es un tema novedoso en informtica, de hecho se considera que existe, aproximadamente, desde hace cuatro o cinco dcadas. Por aquel entonces y hasta hace pocos aos era aplicada en mbitos exclusivos, slo prcticamente para los grandes centros de clculo, tanto bancarios como militares y universitarios. Algunos de los usos pioneros de la virtualizacin incluyen al IBM 7044(en el que la mquina fsica era la M44, que albergaba varias mquinas lgicas 44Xpara los procesos) el CTSS (Compatible Time Sharing System) desarrollado por el MIT(Massachusetts Institute of Technology)en el IBM 7044, y el proyecto Atlasde la Manchester University (uno de los primeros supercomputadores del mundo, operativo en 1962), pionero en el uso de paginacinbajo demanda y llamadas en modo supervisor.

El proyecto Atlas tuvo especial importancia ya que Christopher Strachey incluy en l caractersticas novedosas para la poca (aos sesenta) y que venan a solucionar los graves problemas surgidos del uso comn de un nico ordenador por parte de muchos trabajadores a travs de terminales. Bsicamente consista en un mecanismo para el reparto y uso al mismo tiempo de los recursos del computador (fundamentalmente procesador y disco), y la seguridad y fiabilidad de que el trabajo de un empleado no interfiriera en el de los otros. En la poca de los mainframes, estas cuestiones superaban en importancia al rendimiento en la rapidez de los resultados. As es como naci la virtualizacin, con la necesidad de particionar recursos de disco, memoria y capacidad de cmputo. Estas particiones (mquinas virtuales) podran acoger una instancia de un sistema operativo, comunicarse a travs de red, usar sus recursos o utilizar los del resto en el que caso de que no estn ocupados, se podran tomar imgenes de su estado, o incluso ser migradas entre distintos servidores que las alojaran. IBM reflej la importancia de la virtualizacin en los aos sesenta con el desarrollo de varios sucesores para el IBM 7044. Uno de ellos, el Model 67virtualiz todas las interfaces hardware a travs del VMM (Virtual Machine Monitor), un monitor de mquinas virtuales, llamado posteriormente en la dcada de los setenta hipervisor debido a la habilidad que posea de correr sistemas operativos dentro de otros, y que era ejecutado encima del hardware subyacente. En estos primeros das de la virtualizacin los sistemas operativos que eran ejecutados en mquinas virtuales eran llamados Conversational Monitor Systemso CMS. Estas primeras mquinas virtuales continuaron desarrollndose y avanzando, e incluso en nuestros das se pueden encontrar corriendo en el mainframe System z9TM, mostrado en la figura 1.3. Esto muestra un detalle importante en la evolucin de la virtualizacin, que es la compatibilidad hacia atrs.

Otro de los primeros usos de la virtualizacin es el uso del procesador simulado, Pode (Pseudo-code). P-Codees un lenguaje mquina que es ejecutado en una mquina virtual ms que en el hardware real, lo que permiti a los programas codificados en P-Codeser altamente portables y correr en cualquier lugar en el que est disponible la mquina virtual P-Code. Mquinas virtuales de uso extendido en la actualidad siguieron este mismo modelo, como es el caso de la Java Virtual Machine (JVM). El mismo concepto que en el que se fundament P-Codefue usado en los aos sesenta tambin por el Basic Combined Programming Language o BCPL, predecesor de C. Con la llegada de los computadores personales el concepto de acceso al mismo tiempo a los recursos de un nico supercomputador fue desapareciendo, y con l se vio eclipsada la virtualizacin: lo importante era el rendimiento ms que la seguridad y fiabilidad. Al ocaso de la virtualizacin tambin contribuy el que no fuera una buena idea la particin de los recursos de los miniordenadores o computadores personales debido a su escasez; los mainframes quedaron reducidos a lugares crticos y puntuales. La evolucin con los aos sigui la misma lnea, hasta llegar a la situacin que conocemos en la que prcticamente existe un ordenador por persona. Afortunadamente la virtualizacin junto a tecnologas como los sistemas operativos multiusuario y multitarea sobrevivieron en las Universidades y en sectores en los que su uso y fiabilidad eran crticos: grandes empresas, bancos, sistemas militares, etc. Estos sistemas fueron evolucionando y ya no eran los mainframes usados antiguamente, sino que eran sistemas que usaban hardware de miniordenador y con arquitectura mainframe, como la familia IBM AS/400, cuyo primer modelo vio la luz en 1988. Con el aumento de complejidad y potencia de los ordenadores que ya podan ejecutar sistemas multitarea y multiusuario, se pudieron retomar las caractersticas del sistema Unix que fueron eliminadas en sus primeras versiones (reducidas para posibilitar la ejecucin en sistemas de baja potencia); entre ellas la virtualizacin. Surgi de nuevo el trmino de consolidacin de almacenamiento, recorriendo el camino inverso desde un disco duro por persona a un disco duro para todos. En el presente, la virtualizacin ha llegado al escritorio, lo que ha hecho que incremente exponencialmente de nuevo su popularidad y esto provoque que sea una de las tecnologas ms innovadoras del momento debido a las notables ventajas que supone su aplicacin. Uno de los hechos que justifican esto es que prcticamente todas las grandes empresas dentro del mundo informtico han desarrollado productos de virtualizacin o han adquirido empresas que los ofrecan. Hoy en da, las empresas disponen de ordenadores con una potencia de clculo muy superior a la de decenas de servidores de hace varios aos. Ahora que el rendimiento no es problema ste consiste en la seguridad, fiabilidad y separacin de privilegios necesaria, es decir, como ocurra hace aproximadamente cuarenta aos en bancos, organizaciones militares y universidades. Estos problemas son ahora las nicas razones para seguir manteniendo servicios separados en diferentes servidores en las empresas.

DOS CONCEPTOS FUNDAMENTALES: MAQUINA VIRTUAL E HIPERVISOR : Veamos con mayor detalle los que han sido considerados los dos conceptos ms importantes en la terminologa de la virtualizacin: mquina virtual e hipervisor. Es fundamental comprender con claridad el papel que juegan cada uno de ellos ya que ello nos permitir acercarnos un poco ms al nivel de abstraccin impuesto por la virtualizacin y su funcionamiento interno. Comenzamos hablando de mquinas virtuales ds conveniente distinguir entre dos contextos muy importantes en los que en la actualidad se ubica el concepto de mquina virtual segn las caractersticas y funcionalidad de la propia mquina podemos hablar bien de mquinas virtuales de hardware o de sistema o bien de mquinas virtuales de proceso o de aplicacin. Las mquinas virtuales de hardware o de sistema, que son las que conforman el corazn del modelo de virtualizacin, son las que corren paralelamente sobre una mquina fsica anfitrin o host, de manera que tienen acceso y hacen uso de los recursos hardware que son abstrados de l. Cada mquina virtual es engaada ya que cree que posee de forma exclusiva los recursos hardware de los que dispone cuando en realidad lo hace de manera virtual, ejecuta una instancia de sistema operativo sobre el que corren determinados servicios o aplicaciones tal y como consideremos necesario. Grficamente se puede observar la diferencia entre un servidor virtualizado y uno sin virtualizacin:

La funcionalidad de este tipo de mquinas virtuales es muy amplia, aunque algunas de las caractersticas ms destacables son la coexistencia de diferentes sistemas operativos, la consolidacin de servidores (virtualizacin de servidores), y la prueba o testeo de proyectos tanto software, como hardware ya que pueden proporcionar arquitecturas de instrucciones (ISA) diferentes a las que implemente la mquina fsica anfitriona. stas son las mquinas virtuales que componen la base de la virtualizacin, junto a la capa software existente debajo de ellas y que permite esta distribucin y administracin de los recursos, el hipervisor (hypervisor en ingls) tambin llamado habitualmente monitor, ya que una de sus funciones fundamentales es la monitorizacin de las mquinas virtuales. Esta capa, que puede correr directamente sobre el hardware de la mquina fsica anfitriona o sobre un sistema operativo anfitrin tambin como otra mquina virtual- ser presentada en este mismo apartado a continuacin. De esta acepcin de mquina virtual brotan todos los proyectos desarrollados que se presentarn bajo el modelo de virtualizacin de plataforma, como Xen, VMware, Hiper-V, Linux V-Server, User-mode Linux, KVM uOpenVZ. Al otro lado se encuentran las mquinas virtuales de proceso o de aplicacin. La primera diferencia es que stas no representan una mquina completa al uso. Son ejecutadas como un nico proceso sobre el sistema operativo y como lo hacen habitualmente los procesos, y adems soportan la ejecucin de tan slo un proceso sobre ellas. Su objetivo fundamental es proporcionar un entorno de ejecucin independiente del hardware y del propio sistema operativo para las aplicaciones que ejecutarn; stas arrancan la mquina a su inicio y de igual manera la apagan cuando finalizan. Las dos mquinas virtuales de proceso o de aplicacin de mayor importancia en la actualidad son JVM (Java Virtual Machine, entorno de ejecucin para lenguaje Java de Sun Microsystems) y CLR (Common Language Runtime, entorno de ejecucin para la plataforma .NET de Microsoft, ya citadas anteriormente). El hipervisor ohypervisor es un pequeo monitor de bajo nivel de mquinas virtuales que se inicia durante el arranque, antes que las mquinas virtuales, y que normalmente corre justo sobre el hardware (denominado en alguna bibliografa como native o baremetal) como podemos observar en la figura que se muestra a continuacin, aunque tambin lo puede hacer sobre un sistema operativo (llamado en este caso hipervisor hosted)

Como podemos imaginar esta capa adicional de virtualizacin no es usada en todos los modelos y soluciones existentes: es incluida en tcnicas de virtualizacin completa y paravirtualizacin, aunque tradicionalmente ha sido identificado ms con soluciones de paravirtualizacin. Proporciona dos funcionalidades bsicas: Identifica, capta, maneja y responde a operaciones de CPU e instrucciones privilegiadas o protegidas emitidas por las mquinas virtuales. Maneja el encolado, envo y devolucin de resultados de peticiones de acceso a los recursos hardware instalados en el host anfitrin por parte de las mquinas virtuales. Como se muestra en la figura anterior, el sistema operativo corre sobre el hipervisor tal y como lo hacen las mquinas virtuales, el cual puede comunicarse con el hipervisor y cuyo objetivo fundamental es la gestin y administracin de las instancias de las mquinas virtuales, por lo que lo habitual es que incluya diversas herramientas de gestin y monitorizacin, funcionalidad que puede ser tambin extendida con otras que deseemos instalar por cuenta propia. El hipervisor es utilizado como capa de virtualizacin en los modelos virtualizacin completa y paravirtualizacin independientemente de la existencia y uso de hardware con soporte de virtualizacin especfico. La paravirtualizacin es el modelo basado en hipervisor ms popular debido a que introduce cambios en los sistemas operativos invitados permitindoles la comunicacin directa con el hipervisor, mejorando as el rendimiento ofrecido y no introduciendo penalizaciones adicionales a la emulacin usada en otros modelos como la virtualizacin completa. Cualquiera de los modelos basado en hipervisor slo podr gestionar mquinas virtuales con sistema operativo, libreras y utilidades compiladas para el mismo hardware y juego de instrucciones que el de la mquina fsica. El que el sistema operativo de la mquina virtual deba ser modificado o no ya depender de si hablamos de paravirtualizacin o virtualizacin completa.

MODELOS DE VIRTUALIZACION
En nuestros das muchos conceptos y tecnologas son englobados bajo el paradigma de la virtualizacin, en ocasiones de manera errnea y en otras acertada. Y es que comparando todos en ocasiones o son prcticamente iguales o no tienen ninguna similitud, lo que puede provocar en el usuario confusin y que no llegue a comprender fielmente qu es lo que puede ofrecer cada solucin. No es correcto mezclar por ejemplo los conceptos emulacin, simulacin, virtualizacin o paravirtualizacin en el mismo paquete. A continuacin se intentar arrojar un poco de luz en este aspecto y plantear todo el entramado con mayor claridad. De manera general se puede decir que virtualizacin es el efecto de abstraer los recursos de un computador, proporcionar acceso lgico a recursos fsicos. La virtualizacin separa de manera lgica la peticin de algn servicio y los recursos fsicos que realmente proporcionan el servicio. Dependiendo del recurso que se

abstraiga, que puede ser un recurso individual almacenamiento, red- o bien una plataforma - un servidor, mquina- completa, y de por quin sea usado ese recurso, atenderemos entonces a distintos modelos de virtualizacin. Por ejemplo, en el caso de que mediante algn mecanismo un sistema hardware completo sea abstrado de forma que pueda ser usado por diferentes instancias de sistemas operativos (y sus respectivas aplicaciones) de forma que stas tengan la ilusin de que poseen los recursos de manera exclusiva y no compartida, estaremos hablando de un tipo de virtualizacin concreto, virtualizacin de plataforma, en el que el recurso que se abstrae es un servidor completo hardware y estamos virtualizando (disponen de algn tipo de recurso de forma virtual, aunque no sean conscientes) diferentes instancias de diferentes sistemas operativos. Por lo tanto, es importante distinguir para entender con mayor claridad la virtualizacin entre dos conceptos como son el recurso virtual que se abstrae y el ente (aplicacin, sistema operativo, mquina) que, virtualizado, dispone de ese recurso. Dependiendo de ambos trminos, al unirse, hablaremos de un modelo de virtualizacin distinto. Teniendo en mente todo esto, podemos distinguir cuatro modelos principales de virtualizacin:

1.

Virtualizacin de plataforma:
El recurso abstrado es un sistema completo, por ejemplo un sistema o servidor. En trminos generales consiste en la abstraccin de todo el hardware subyacente de una plataforma de manera que mltiples instancias de sistemas operativos puedan ejecutarse de manera independiente, con la ilusin de que los recursos abstrados les pertenecen en exclusiva. Esto es muy importante, ya que cada mquina virtual no ve a otra mquina virtual como tal, sino como otra mquina independiente de la que desconoce que comparte con ella ciertos recursos. Este es un modelo especialmente a tener en cuenta, ya que es el aplicado para lo que se llama consolidacin de servidores. La virtualizacin o consolidacin de servidores puede verse como un particionado de un servidor fsico de manera que pueda albergar distintos servidores dedicados (o privados) virtuales que ejecutan de manera independiente su propio sistema operativo y dentro de l los servicios que quieran ofrecer, haciendo un uso comn de manera compartida y aislada sin ser conscientes del hardware subyacente. Los distintos tipos y paradigmas de virtualizacin de plataforma existentes, que son los siguientes:

a. Sistemas operativos invitados:


Sobre una aplicacin para virtualizacin no hace uso de hipervisor u otra capa de virtualizacin- que corre sobre la instancia de un sistema operativo sistema operativo host- se permite la ejecucin de servidores virtuales con sistemas operativos independientes. Si la aplicacin de virtualizacin implementa traduccin del juego de instrucciones o emulacin

podrn ser ejecutadas mquinas virtuales cuyo sistema operativo, utilidades y aplicaciones hayan sido compiladas para hardware y juego de instrucciones diferentes al de la mquina fsica anfitriona, en caso contrario no. Algunos ejemplos de soluciones de este tipo sonVMware Workstation, Parallels Desktop, Sun xVM VirtualBox, VMware Player, y Microsoft Virtual PC.

b. Emulacin:
Un emulador que replica una arquitectura hardware al completo procesador, juego de instrucciones, perifricos hardware- permite que se ejecuten sobre l mquinas virtuales. Por lo tanto se permite la ejecucin de sistemas operativos y aplicaciones distintos al instalado fsicamente en la mquina que ejecuta el emulador. Los emuladores ms importantes actualmente son Bochs, MAME, DOSBox, Hercules, MESS, VirtualPC, y Qemu.

c. Virtualizacin completa:
Tambin llamada nativa. La capa de virtualizacin, un hipervisor, media entre los sistemas invitados y el anfitrin, la cual incluye cdigo que emula el hardware subyacente si es necesario- para las mquinas virtuales, por lo que es posible ejecutar cualquier sistema operativo sin modificar, siempre que soporte el hardware subyacente. El cdigo de emulacin puede provocar prdida en el rendimiento. Puede hacer uso de soporte hardware especfico paravirtualizacin y as mejorar su rendimiento. Sin duda dentro de esta categora podemos encontrar algunas de las soluciones ms importantes sobre virtualizacin junto a las correspondientes a pararvirtualizacin- comoVMware Server, XenServer, z/VM, Oracle VM, Sun xVM Server, Virtual Server, VMware ESX Server, VMware Fusion, Xen, Hyper-V(en algunos casos solo es posible si existe hardware con soporte de virtualizacin).

d. Paravirtualizacin:
Similar a la virtualizacin completa porque introduce hipervisor como capa de virtualizacin, pero adems de no incluir emulacin del hardware, introduce modificaciones en los sistemas operativos invitados que por consiguiente estn al tanto del proceso (deben poder ser modificables). stos cooperan as en la virtualizacin eliminando la necesidad de captura de instrucciones privilegiadas o conflictivas por parte del hipervisor, mejorando el rendimiento hasta obtenerlo casi similar a un sistema no virtualizado (supone ms una ventaja que una desventaja la modificacin de los sistemas operativos invitados). Las libreras y utilidades ejecutadas por las mquinas virtuales deben estar compiladas para el mismo hardware y juego de instrucciones que el de la mquina fsica anfitriona. Puede hacer uso de soporte hardware especfico paravirtualizacin y as mejorar su rendimiento, adems de para la ejecucin de sistemas operativos no modificados ya que este soporte hardware puede manejar operaciones

privilegiadas y protegidas y peticiones de acceso al hardware, adems de comunicarse con y gestionar las mquinas virtuales. Las soluciones ms extendidas e importantes dentro del paradigma de la paravirtualizacin son Xen, Logical Domains, Oracle VM, y Sun xVM Server.

e. Virtualizacin a nivel del sistema operativo:


Virtualiza los servidores sobre el propio sistema operativo, sin introducir una capa intermedia de virtualizacin. Por lo tanto, simplemente asla los servidores independientes, que comparten el mismo sistema operativo. Aunque requiere cambios en el ncleo del sistema operativo, ofrece rendimientos prximos al sistema sin virtualizar. Compartiendo el mismo ncleo, entonces las mquinas no pueden correr sistemas operativos diferentes (s distintas distribuciones Linux o versiones del sistema operativo dependiendo de la solucin utilizada), y adems las libreras y utilidades ejecutadas deben estar compiladas para el mismo hardware y juego de instrucciones que el de la mquina fsica Como ejemplos representativos de este modelo podemos citar OpenVZ, Linux V-Server, Virtuozzo, FreeBSDs chroot jails, Free VPS, Solaris Containers y Solaris Zones.

f. Virtualizacin a nivel del kernel:


Convierte el ncleo Linux en hipervisor utilizando un mdulo, el cual permite ejecutar mquinas virtuales y otras instancias de sistemas operativos en el espacio de usuario del ncleo Linux anfitrin. Las libreras, aplicaciones y sistemas operativos de las mquinas virtuales deben ser soportados por el hardware subyacente del anfitrin. Dos soluciones destacan en esta categora:KVMy User-mode Linux.

2.

Virtualizacin de recursos:
En este segundo caso el recurso que se abstrae es un recurso individual de un computador, como puede ser la conexin a red, el almacenamiento principal y secundario, o la entrada y salida. Existe un gran nmero de ejemplos dentro de la virtualizacin de recursos, como por ejemplo el uso de memoria virtual, los sistemas RAID(Redundant Array of Independent Disks), LVM(Logical Volume Manager), NAS (Network-Attached Storage)o la virtualizacin de red. Veamos con mayor detenimiento los distintos modelos de virtualizacin de recursos, los recursos que abstraen y las tecnologas y aplicaciones ms notables a clasificar dentro de cada uno:

a. Encapsulacin:
Se trata de la ocultacin de la complejidad y caractersticas del recurso creando una interfaz simplificada. Es el caso ms simple de virtualizacin de recursos, como se puede ver.

b. Memoria virtual:
Permite hacer creer al sistema que dispone de mayor cantidad de memoria principal y que se compone de segmentos contiguos. Como sabemos, es usada en todos los sistemas operativos modernos. Por lo tanto, en este caso el recurso individual que es abstrado es la memoria y disco. Ejemplos conocidos por todos son el espacio Swap utilizados por los sistemas operativos Unix, o las tcnicas de paginado de memoria usadas en sistemas operativos Microsoft.

c. Virtualizacin de almacenamiento:
Abstraccin completa del almacenamiento lgico sobre el fsico (disco y almacenamiento son el recurso abstrado). Es completamente independiente de los dispositivos hardware. Como ejemplos de virtualizacin de almacenamiento tenemos soluciones tan extendidas como RAID (Redundant Array of Independent Disks), LVM (Logical Volume Manager), SAN (Storage Area Network), NAS (Network-Attached Storage), NFS (Network File Systems), AFS, GFS, iSCSI (Internet SCSI), AoE (ATA over Ethernet). d. Virtualizacin de red. La virtualizacin de red consiste en la creacin de un espacio de direcciones de red virtualizado dentro de otro o entre subredes. Es fcil ver que el recurso abstrado es la propia red. Ejemplos bien conocidos de virtualizacin de redson OpenVPN y OpenSwarm, que permiten crear VPNs.

e. Unin de interfaces de red (Ethernet Bonding):


Combinacin de varios enlaces de red para ser usados como un nico enlace de mayor ancho de banda. El recurso abstrado son por tanto los enlaces de red. Soluciones ejemplo de Ethernet Bondingson vHBA (Virtual Host Bus Adapter), y vNIC (Virtual Network Interfaces Card).

f. Virtualizacin de Entrada/Salida:
Abstraccin de los protocolos de capas superiores de las conexiones fsicas o del transporte fsico. En este caso, los recursos que se abstraen son las conexiones de entrada/salida y transporte. Ejemplo(s): XsigoSystems, 3LeafSystems, y en el futuro lo ser: Cisco Systems, Brocade.

g. Virtualizacin de memoria:
Virtualizaremos bajo este modelo cuando unamos los recursos de memoria RAM de sistemas en red en una memoria virtualizada comn.

3.

Virtualizacin de aplicaciones:
Las aplicaciones son ejecutadas encapsuladas sobre el sistema operativo recurso usado en este tipo de virtualizacin- de manera que aunque creen que interactan con l y con el hardware- dela manera habitual, en realidad no lo hacen, sino que lo hacen bien con una mquina virtual de aplicacin o con algn software de virtualizacin. Este tipo de virtualizacin es usada para permitir a las aplicaciones de caractersticas como portabilidad o compatibilidad, por ejemplo para ser ejecutadas en sistemas operativos para los cuales no fueron implementadas. Debe quedar claro que la virtualizacin es solamente de las aplicaciones, lo que no incluye al sistema operativo anfitrin. Un ejemplo bien conocido es Wine, que permite la ejecucin de aplicaciones de Microsoft Windows virtualizadas correr sobre GNU/Linux, dentro de lo que son llamadas tcnicas de simulacin. Otros ejemplos muy importantes son JVM (Java Virtual Machine, entorno de ejecucin para lenguaje Java de Sun Microsystems) y CLR (Common Language Runtime, entorno de ejecucin para la plataforma .NET de Microsoft). Podemos diferenciar adems entre los dos siguientes tipos de virtualizacin de aplicaciones:

a. Virtualizacin de aplicaciones limitada:


Aplicaciones Portables. Aplicaciones que pueden correr desde dispositivos de almacenamiento extrables. Tambin se incluyen dentro de esta categora las aplicaciones heredades que son ejecutadas como si lo hicieran en sus entornos originales. Lo normal es que en este caso, en virtualizacin de aplicaciones limitada, no medie ninguna capa de virtualizacin o software con las mismas prestaciones y que la portabilidad se encuentre limitada al sistema operativo sobre el que correr la aplicacin. El recurso abstrado es el sistema operativo sobre el que son ejecutadas las aplicaciones virtualizadas.

b. Virtualizacin de aplicaciones completa:


En este segundo tipo de virtualizacin de aplicaciones, una capa intermedia o software de virtualizaciones introducido para mediar entre la aplicacin virtualizada y el sistema operativo y hardware subyacentes. a. Portabilidad Multiplataforma (Cross-platform): Permite a aplicaciones compiladas para una CPU y sistema operativo especficos ser ejecutadas en diferentes CPUs y sistemas operativos sin ser modificadas, usando una traduccin binaria dinmica y mapeado de llamadas del sistema operativo. No requiere recompilacin o porting al correr en un entorno virtualizado, normalmente una mquina virtual de proceso o aplicacin. Por tanto, el recurso abstrado en este caso es la CPU y el sistema

operativo. Ejemplos utilizados en la mayora de los sistemas son Java Virtual Machine, Common Language Runtime, Mono, LLVM, Portable .NET, Perl Virtual Machine, Citrix XenApp,

b. Simulacin:
Reproduccin del comportamiento de una aplicacin concreta o una funcionalidad especfica de una aplicacin. Ahora, el recurso que se abstrae es la API (Application Program Interfaces) del sistema operativo, o cualquier interfaz. Antes ya se coment Wine como ejemplo de este modelo de virtualizacin de aplicaciones, adems disponemos de Crossover office, coLinux, Zebra, o Quagga.

4.

Virtualizacin de escritorio:
Consiste en la manipulacin de forma remota del escritorio de usuario (aplicaciones, archivos, datos), que se encuentra separado de la mquina fsica, almacenado en un servidor central remoto en lugar de en el disco duro del computador local. El escritorio del usuario es encapsulado y entregado creando mquinas virtuales. De esta forma, es posible permitir al usuario el acceso de forma remota a su escritorio desde mltiples dispositivos, como pueden ser computadores, dispositivos mviles, etc. Por lo tanto, en este caso el recurso que se abstrae es el almacenamiento fsico del entorno de escritorio del usuario como usuarios, no somos conscientes del lugar fsico en el que se encuentra nuestro escritorio, simplemente tenemos acceso a l-. Ejemplos muy importantes de soluciones que trabajan con virtualizacin de escritorio son Wyse Technology, VMware View, Sun VDI, vDesk de Ring Cube, XenDesktop de Citrix, vWorkspace de Quest Software, o ThinLinc de Cendio.

VENTAJAS Y DESVENTAJAS DE LA VIRTUALIZACION


Vamos a ver algunas de las razones y causas que han motivado que la virtualizacin resulte fundamental en nuestros tiempos, cmo despus de ms de cuarenta aos ha surgido la necesidad de emplear la virtualizacin en los CPDs(Centros de Procesado de Datos):

Hardware de los Servidores Infrautilizado:


Hoy es habitual que los servidores que se ubican en los data centers de las empresas utilicen apenas un 15% o 20% de su capacidad de computacin. Esto nos conduce lgicamente a uno 80% o 85% de capacidad que no es utilizada y por lo tanto desaprovechada. Aun as, con este uso tan bajo, el espacio que ocupan los servidores es el mismo y el consumo elctrico que conllevan es el mismo que si se encontraran con usos cercanos al 100%. Como se puede concluir fcilmente, esto es un desperdicio de recursos computacionales. Las caractersticas del hardware en cuanto a rendimiento y capacidad se duplican prcticamente cada ao, lo que lleva a buscar soluciones que nos permitan aprovechar de mejor forma estos avances hardware con una carga de trabajo mayor. Es aqu donde surge el rol de la virtualizacin permitiendo que en un solo equipo o servidor almacenemos mltiples sistemas. Por lo tanto, usando virtualizacin en sus servidores las empresas pueden elevar las tasas de utilizacin de los mismos haciendo un uso ms eficiente de los recursos y capital de la empresa. Ante este crecimiento sinfn de la potencia computacional proporcionada por la industria del chip, no hay ms remedio que usar virtualizacin.

Se agota el Espacio en los Data Centers:


Como todos sabemos durante las ltimas dcadas el imponente crecimiento de las tecnologas de la informacin ha llevado a casi todas las empresas a reconducir sus actividades para adaptarse a los nuevos modelos de negocio, basado en software y automatizado, pasando del almacenamiento fsico en papel al almacenamiento masivo de la informacin de forma electrnica. Toda esta transformacin, si cabe, ha experimentado incluso un incremento y aceleracin mucho mayor en los ltimos aos. Como es lgico, para soportar todos estos cambios las empresas han ido aumentando tambin el nmero de servidores de los que disponen en sus data centers, llegando a la situacin en la que se les agota el espacio disponible para los mismos. As, esta situacin requiere nuevos mtodos de almacenamiento, como son los ofrecidos por la virtualizacin de almacenamiento, que permite el manejo del almacenamiento independientemente de cualquier dispositivo particular hardware, logrando una abstraccin completa del almacenamiento lgico sobre el fsico.Con el uso de la virtualizacin, alojando mltiples sistemas invitados en un nico servidor fsico, se permite a las empresas recoger el espacio en el que se ubica su data center y as evitar los costes de la ampliacin de su espacio. Este es un beneficio muy importante que aporta la

virtualizacin, ya que la construccin de un data center puede llegar a costar del orden de unos7 millones de euros.

Demanda de una mejor Eficiencia Energtica:


Hace aos pareca que cualquier coste energtico en actividades empresariales era totalmente asumible, barato y que los recursos estaran disponibles sin dificultad. Desde hace un tiempo, aunque en la mayora de los casos instanciados por iniciativas de grupos ecolgicos y no por propia iniciativa, las empresas empezaron a considerar y darse cuenta que la energa es finita y que quizs habra que buscar nuevas estrategias en su forma de operar para llegar a situaciones en las que dependieran mucho menos de los recursos energticos y potencia, y en los que su consumo fuera muchsimo menor. Lgicamente, el primer lugar en el que se fijaron para reducir todo este consumo fueron los data centers.

Costes de la Administracin de Sistemas:


Como sabemos, las tareas de administracin de sistemas pueden llegar a ser muy intensas y laboriosas, adems en la mayora de los casos los administradores de sistemas deben estar ubicados juntos a los servidores en los data centers porque necesitan tener acceso al hardware fsico para realizar muchas de sus actividades. Entre las actividades que suelen realizar podemos destacar como principales la monitorizacin de los servidores, tanto de los servicios como del hardware reemplazando hardware defectuoso cuando sea necesario- y sus recursos de CPU y memoria as como uso de disco y trfico de red, instalacin de sistemas operativos y aplicaciones, la realizacin de copias de seguridad peridicas de los datos que almacenan los servidores para recuperacin en posibles prdidas, seguridad y redundancia. El uso de la virtualizacin ofrece una gran reduccin en costes de administracin en prcticamente todas las actividades que la componen. Por ejemplo proporcionando una monitorizacin simplificada y centralizada, provisin de mquinas de forma automatizada, simplificacin en el proceso de copia de seguridad y restauracin, dando ms seguridad a nivel de mquina al aislarlas, redundancia y replicacin de servidores para lograr alta disponibilidad y alto rendimiento Aunque algunas de las tareas pueden permanecer prcticamente iguales, es decir, permanecen inalteradas en los entornos virtualizados, otras desparecen ya que los servidores que antes eran fsicos pasan a ser instancias de mquinas virtuales.

Necesidad de alto rendimiento y alta disponibilidad:


Cada da ms el modelo de negocio actual provoca que una mejor calidad de servicio y prestaciones sean requeridas a las empresas, a las que en la mayora de los casos se les exige que sus servicios se encuentren disponibles las 24 horas al da los 365 das del

ao, y al mismo tiempo que su fiabilidad y rendimiento se mantengan elevados e inalterables. En un escenario as, sumado al hecho de que dispongamos servidores cuyos recursos se encuentran infrautilizados, se hace an ms patente la necesidad de aplicar alguna tcnica de virtualizacin. Por ejemplo, en los casos ms habituales en los que caractersticas de alto rendimiento y/o alta disponibilidad son implementadas son necesarias mquinas o servidores adicionales, bien para situar servicios a la espera la cada de otros o bien para la distribucin de carga, por ejemplo. Como se puede intuir, tanto las mquinas primarias que sirven los servicios como estas mquinas adicionales pueden ser integradas en una infraestructura virtual de forma que no necesitemos adquirir nuevos sistemas ni hardware adicional, al mismo tiempo que consolidamos los servidores en un nico servidor fsico anfitrin cuyo porcentaje de utilizacin aumentar. Resumiendo, usando consolidacin de servidores nos otorga la posibilidad de cambiar el modelo de gestin de nuestros data centers reduciendo costes en todos los sentidos, nmero de servidores fsicos, la infrautilizacin de su capacidad y recursos, energa, espacio, y administracin asociada. Adems, y como vamos a ver a continuacin, la virtualizacin adems aade una serie de funcionalidades en la administracin de sistemas cuyas ventajas son innumerables, como por ejemplo la migracin en caliente de mquinas virtuales, la cual bien por motivos de mantenimiento, o balanceo de carga, alta disponibilidad y alto rendimiento, nos permite migrar una mquina virtualsu memoria, sistema operativo, y aplicaciones- de un servidor fsico de un clster a otro servidor fsico dentro del mismo clster o incluso a otros data centers incluso, situados en continentes distintos-. A continuacin se exponen las ventajas derivadas del uso de la virtualizacin, tanto las comentadas anteriormente como otras:

1.

Consolidacin de servidores:
Quizs una de las caractersticas ms notables del uso de la virtualizacin y el hecho por el cual se encuentra en continua expansin en el mundo empresarial informtico. En s, consolidar servidores consiste en reducir el nmero de los mismos al mismo tiempo que aumenta el porcentaje de su utilizacin. Al consolidar servidores, se permitir usar despliegues ms modulares y escalables y centralizar su administracin, notablemente simplificada. Como veremos, muchas de las ventajas restantes de la virtualizacin derivan del hecho de consolidar servidores.

2.

Administracin de sistemas simplificada:


Puede simplificar prcticamente todas las actividades relacionadas con la administracin, sobre todo las que suelen ejecutarse de manera estandarizada (como las copias de seguridad), aunque por otro lado introduzca nuevas como el establecimiento de polticas de recuperacin mediante migracin o clonacin de mquinas virtuales, mantenimiento de repositorios, por ejemplo, la instalacin y despliegue de nuevos sistemas es una tarea que se ve enormemente simplificada al introducir virtualizacin gracias a tcnicas como la clonacin de mquinas o las virtual appliances (instancias de mquinas virtuales ya preconfiguradas). Otro

ejemplo: la virtualizacin de escritoriopuede simplificar enormemente el despliegue de nuevos sistemas reduciendo la cantidad de software que se requiere sea instalado localmente; sin duda incrementando la centralizacin de recursos compartidos y estandarizando el proceso de despliegue de sistemas puede proporcionar grandes ventajas a los administradores. Siempre hay que recordar que el nmero de mquinas de las que es responsable el administrador siempre ser el mismo; sean fsicas o sean virtuales. Para aprovechar al mximo las ventajas derivadas del uso de la virtualizacin es fundamental mantener la infraestructura lo ms independiente posible de los sistemas fsicos; el propsito de las mquinas fsicas que alojan mquinas virtuales no deber ser otro que exclusivamente ese, y no deben proporcionar servicios externos por ellas mismas.

3.

Alta disponibilidad y recuperacin ante desastres:


Al tener reduccin en los tiempos de parada de los servicios y datos crticos del negocio. Podemos disponer de varias instancias de un servidor en espera de posibles fallos del que est en funcionamiento (simplemente son ficheros de configuracin). Sin virtualizacin, se requieren mltiples sistemas fsicos en espera sin ser utilizados para implementar esto mismo. Es posible la recuperacin efectiva ante desastres y el mantenimiento de niveles de disponibilidad del servicio acordados gracias a mecanismos como la migracin de mquinas. Si un sistema fsico falla, los sistemas lgicos contenidos en l pueden ser migrados o distribuidos en caliente o dinmicamente a otros sistemas. La migracin puede ser usada tambin para aplicar actualizaciones en la mquina, o en sistemas que alojan las mquinas, que vuelven a ser migradas a su localizacin original tras la culminacin de las operaciones planificadas. Por lo tanto, si adoptamos una estrategia para deteccin automtica de problemas y migracin de mquinas virtuales ello nos llevar a reducir los costes asociados con recuperacin de fallos y aumentar la disponibilidad de los servicios.

4.

Alto rendimiento y redundancia:


Es muy fcil mantener una serie de servidores virtuales redundantes esparcidos en varios servidores fsicos. Crear, instalar, configurar y mantener estas rplicas tambin es extremadamente sencillo, sin costes adicionales. A ello ayuda mucho el hecho de la posibilidad de aprovisionamiento de instancias preconfiguradas de mquinas virtuales. Operando de esta forma resulta sencillo disponer de mecanismos para balancear la carga de trabajo entre los servidores virtuales disponibles.

5.

Reduccin de costes:
La aplicacin de tcnicas de virtualizacin supone el ahorro de costes en prcticamente todos los mbitos, pudiendo destinar esfuerzos y recursos a otros aspectos como la innovacin. Se ahorrar en costes de instalacin, configuracin, monitorizacin, administracin y soporte del servicio, asociados a licencias, del software -usando soluciones software libre como Xencon unos grandes beneficios en rendimiento y un bajo coste-, copias de seguridad, recuperacin, consumo energtico, seguridad tanto a corto como largo plazo, al disponer de escalabilidad y agilidad sostenible. Tambin nos permite ahorrar costes en la adquisicin de nuevo hardware combinando la consolidacin de servidores con una planificacin adecuada de las capacidades para hacer un mejor uso del hardware existente. La virtualizacin tambin puede ayudar en la reduccin de los costes en nuestra infraestructura informtica en cuanto a potencia y requerimientos de refrigeracin; aadir mquinas virtuales a un anfitrin existente no aumentar su consumo. Otros aspectos en los que es posible ahorrar son: costes de acceso remoto y fiabilidad (menos equipos con teclado, video y ratn necesarios), menos conexiones a aparatos suministradores de potencia ininterrumpible los cuales se encontrarn ms liberados y disponibles en tiempos de fallo en el suministro de potencia-, y relacionados con la infraestructura de red: si dependiendo de cmo sea configurado el acceso a la red por parte de las mquinas virtuales, es posible simplificar el cableado de la red y reducir el nmero de hubs y switches necesarios.

6.

Mejora de las polticas de puesta en marcha, copias de seguridad y recuperacin:


Por ejemplo mediante el establecimiento de puntos de control en las mquinas virtuales y el uso de almacenamiento centralizado como SAN, iSCSI, AoE, NAS, NFSs. Nuestros servidores pasarn a ser simplemente directorios y archivos de configuracin, fcilmente replicables en copias de seguridad. En muchos casos la recuperacin puede ser reducida a copiar y pegar estos directorios y archivos de configuracin de una copia de seguridad o desde una mquina virtual preinstalada. En la mayora de las soluciones de virtualizacin que existen en la actualidad es posible la toma de imgenes del estado de la mquina virtual, posibilitando tambin su posterior recuperacin teniendo a nuestra mano otro sencillo mecanismo adicional relacionado con este tema.

7.

Optimizacin del uso y control de los recursos:


Derivada de la consolidacin de servidores virtuales en servidores fsicos infrautilizados. De esta manera, recursos como memoria, capacidad de procesamiento, red, disco presentan porcentajes de utilizacin mayores a los habituales ofrecidos por servidores fsicos dedicados, por lo que los servidores fsicos de los que dispongamos son utilizados de manera ptima. Por ejemplo, en sistemas multiprocesador o multi-core las mquinas virtuales pueden correr usando

diferentes procesadores o cores, haciendo unuso mejor de los recursos de computacin totales disponibles.

8.

Gran escalabilidad:
Crecimiento gil soportado y con gran contencin de costes. Una infraestructura virtual proporciona caractersticas de escalabilidad muy superiores a una fsica tradicional, al tratarse de mquinas virtuales lgicas. Un servidor fsico, podr gestionar ms nmero de mquinas virtuales a medida que disponga de mayores recursos. As, por ejemplo, si en nuestra infraestructura de mquinas virtuales quisiramos integrar un nuevo servidor web, slo tendramos que crear y configurar la mquina virtual correspondiente (si dispusiramos de una preconfigurada, bastara slo con copiarla) en un servidor fsico que ya estuviera funcionando salvo que no tuviramos recursos suficientes en alguno- ahorrando tiempo, espacio, costes de administracin, licencias, instalacin, configuracin. En cambio, si acturamos como siempre lo han hecho las empresas, habra que adquirir un nuevo servidor o, en el mejor de los casos, integrar el servicio con otros diferentes en uno mismo.

9.

Aprovisionamiento de mquinas virtuales:


El uso de mquinas virtuales preconfiguradas o virtual appliances es una solucin rpida, flexible y asumible para desarrollar nuevos sistemas. Listas para cargar y funcionar, ahorrando tiempo de administracin, instalacin, configuracin. Incluso preconfiguradas encapsulando mquinas virtuales determinadas aplicaciones o servicios (por ejemplo, centralitas VoIP,un servidor web, un balanceador de carga), que luego pueden ser reutilizadas en la empresa segn las necesidades. Tendremos disponibles la provisin de aplicaciones y sistemas dinmicamente, rpidamente, y justo a tiempo, moviendo mquinas virtuales de un servidor a otro segn la necesidad, en lugar de malgastar tiempo configurando e iniciando nuevos entornos fsicos en servidores. Este aprovisionamiento de mquinas virtuales puede planificarse, e incluso automatizarse, segn la poltica que establezca el departamento TI y el uso de herramientas destinadas para ello.

10.

Compatibilidad hacia atrs:


La virtualizacin posibilita el uso y mantenimiento de sistemas y aplicaciones heredados que no fueron adaptados a versiones actuales, y por lo tanto sin compatibilidad garantizada con los sistemas en uso hoy da. Usando virtualizacin no es necesario crear y establecer sistemas para compatibilidad: con crear una mquina virtual con el entorno clsico de operacin del sistema o la aplicacin que queremos usar ser necesario, eliminando cualquier riesgo de convivencia con las nuevas versiones del entorno. La virtualizacin es sin duda una solucin excelente y simple para estos casos en los que queremos continuar ejecutando software heredado del que las empresas mantienen una fuerte dependencia. Slo podremos ejecutar software heredado que sea soportado por el

hardware sobre el que corre la solucin de virtualizacin; en el caso en el que queramos ejecutar uno que necesite otra arquitectura hardware diferente, haremos uso de una solucin de virtualizacin que integre emulacin, como Qemu.

11.

Disminucin del nmero de servidores fsicos:


Derivada de la consolidacin de servidores, al integrar mltiples instancias de servidores lgicos dentro de los servidores fsicos, conseguiremos disminuir el nmero de estos ltimos a utilizar en el CPD (Centro de Proceso de Datos) o Data Center. Esta es una ventaja muy importante ya que repercute en muchos aspectos; los ms importantes referidos a la administracin de nuestra infraestructura informtica. Lgicamente, al disminuir el nmero de servidores fsicos se simplificar y reducir sta a la vez que disminuir tambin el espacio fsico requerido en nuestro CPD o data center para ellos, cuestiones que pueden llegar a resultar de gran importancia.

12.

Mejora de la eficiencia energtica:


Al existir un menor nmero de servidores fsicos el consumo de potencia de los mismos consecuentemente ser menor. Adems, este consumo ser ms eficiente: ahora los servidores no se encontrarn infrautilizados como antes, que consuman la misma potencia con un menor porcentaje de utilizacin.

13.

Prueba y depuracin:
Fcil establecimiento de entornos virtuales iguales a los reales en los que realizar prueba y depuracin de sistemas operativos, aplicaciones, sin las consecuencias que lgicamente eso tendra en un entorno fsico real. Tambin, por ejemplo, una aplicacin muy importante es la prueba y depuracin de software que se desarrolla para correr sobre sistemas y arquitecturas hardware an no desarrolladas ni fabricadas, y que s estarn disponibles en el futuro, no teniendo que esperar a que ello ocurra para su prueba. Hay que considerar antes qu solucin de virtualizacin es ms apropiada para el conjunto de pruebas y tests que vayamos a desarrollar, por ejemplo soluciones basadas en hipervisor no suelen ser muy recomendadas para la depuracin de drivers de hardware debido al propio hecho de introducir el nivel adicional de operacin y acceso al hardware.

14.

Seguridad y aislamiento:
La virtualizacin puede proporcionarnos mayores niveles de seguridad y aislamiento, y a un coste menor. Tenemos la posibilidad de proteger aplicaciones y sistemas operativos aislndolos en mquinas virtuales que son totalmente independientes entre s y con el hipervisor o sistema anfitrin. Cada una de las mquinas virtuales tiene un acceso en modo supervisor nico, por lo que un ataque de seguridad que logre acceder a una aplicacin o sistema operativo de una de las

mquinas afectar sola y exclusivamente a la mquina en la que ocurri el fallo de seguridad, y no en el resto de mquinas ni en el anfitrin por lo que no los comprometer. Esto es beneficioso tanto para empresas como a nivel de usuario particular.

15.

Tipificacin y estandarizacin de plataformas y configuraciones:


Es sencillo al aplicar virtualizacin establecer estndares para la configuracin tanto de los servidores anfitriones como de las mquinas virtuales que se alojan en ellos. As, asistiremos a escenarios en los que habr homogeneidad, ahorrando por tanto en administracin y soporte. En cuanto a las mquinas virtuales, y aunque difieran algunas de otras bastante en cuanto a su funcionalidad y configuracin, todas sern tratadas tambin de manera uniforme por parte del virtualizador que est en uso. Toda esta transformacin puede influir de forma muy positiva en una mejor integracin y simplificacin del negocio en la infraestructura informtica; por ejemplo cambios en el negocio pueden ser direccionados en cambios en las mquinas virtuales los cuales pueden ser llevados a cabos con rapidez.

16.

Mejora de la calidad de servicio y fiabilidad:


Mediante la prueba y depuracin de aplicaciones, sistemas operativos o nuevas versiones de sistemas operativos y software asociado es posible asegurar niveles de calidad y fiabilidad en ellos (Quality assurance o QA), al poder implementar un testeo fcil de aplicaciones en mltiples sistemas operativos, o de los propios sistemas operativos sin tener que disponer y configurar mltiples entornos hardware dedicados. Esta es, junto a la consolidacin de servidores y la reduccin de costes, una de las grandes ventajas al aplicar virtualizacin, debido a la efectividad mostrada en trminos de tiempo y coste, reduciendo la cantidad de hardware requerido, reduciendo o incluso eliminado la mayora del tiempo requerido para la instalacin de sistemas, reinstalacin en muchas ocasiones es til retomar el estado guardado previamente de una mquina virtual-, configuracin.

17.

Clonacin de mquinas virtuales:


Asociada a trminos como redundancia, aprovisionamiento de mquinas virtuales o recuperacin ante desastres. Es una de las caractersticas de la virtualizacin que hacen que sea una fantstica solucin en la instalacin, desarrollo y despliegue de nuevos sistemas. Tambin tiene una gran utilidad cuando por ejemplo, queremos aplicar un parche a un sistema operativo de una mquina virtual, clonndola previamente para guardar su estado. En muchas de las soluciones de virtualizacin existentes es posible la toma y recuperacin de imgenes del estado de las mquinas virtuales, algo que puede resultar de granutilidad.

18.

Personalizacin:
En el caso de las soluciones de virtualizacin que son software libre, como Xen, KVM, Qemu, stas pueden ser personalizadas y extendidas para alcanzar los requisitos necesarios especficos.

19.

Uso en mbitos docentes:


Uso como ayuda didctica: se pueden configurar e iniciar entornos para que estudiantes puedan aprender e interactuar con sistemas operativos, aplicaciones o drivers de dispositivos. Por ejemplo, es posible el aprendizaje de conocimientos informticos estudiando en mquinas virtuales configuradas para emular hardware o sistemas operativos particulares. Unido a las capacidades que proporciona la virtualizacin acerca de prueba y depuracin, sta ventaja resulta muy interesante en estos mbitos.

20.

Clsteres de servidores virtuales:


Creacin de clsteres de servidores virtuales para unificar mltiples servidores en un solo sistema. Proporciona las ventajas de la creacin de clsteres trasladadas al mbito de una infraestructura virtual, pudiendo crear un clster dentro de un solo equipo.

21.

Flexibilidad:
Las caractersticas hardware y software de las mquinas virtuales son totalmente configurables a nuestro gusto. As, podemos crear servidores virtuales con RAM, CPU, disco, y red que estrictamente necesitemos. Gran flexibilidad en el reparto de recursos del sistema anfitrin entre las mquinas que aloja. Esta flexibilidad se ve aumentada por el hecho de la posibilidad de asignacin de determinados dispositivos de manera exclusiva a ciertas mquinas virtuales segn nuestros intereses. Por ejemplo, si dispondremos de un servidor que deber soportar una gran cantidad de trfico de red podremos asignar a su mquina virtual de manera exclusiva una de las tarjetas de red disponibles fsicamente en el servidor anfitrin.

22.

Gran agilidad:
La creacin de mquinas virtuales es un proceso que se puede llevar a cabo con gran rapidez e incluso se puede automatizar. Disponiendo incluso de mquinas virtuales pre configuradas, podemos poner en funcionamiento servidores con un simple clic o ejecutando tan slo un comando. Esto nos posibilita tambin ganar en rapidez ante cambios bajo demanda, para realizar mejoras, impuestos por el modelo de negocio.

23.

Portabilidad, migracin:
Incrementando el aislamiento de las mquinas virtuales de hardware fsico especfico aumenta la disponibilidad de los sistemas aumentando la portabilidad de las mquinas virtuales, permitindoles ser migradas. La migracin de mquinas virtuales es un proceso transparente al usuario al mismo tiempo que transparente a cualquiera de los procesos que se encuentren corriendo en las mquinas virtuales. Portar mquinas virtuales entre distintos servidores fsicos es muy sencillo. Mecanismos de migracin en parada o en caliente aparte, podemos portar mquinas virtuales simplemente copiando los archivos de configuracin que definen las mismas o los ficheros/imgenes que constituyen sus discos, de un tamao que permite usar dispositivos de almacenamiento USB, discos duros externos.

24.

Automatizacin:
Existen herramientas de automatizacin que permiten fijar mtricas comunes (por ejemplo sobre rendimiento) de las mquinas virtuales y que pueden llegar a reconfigurarlas si es necesario para cumplir con las condiciones expuestas. Por ejemplo, se puede asignar dinmicamente mayor CPU a una mquina que lo precise para cumplir unos determinados tiempos de respuesta, tomando CPU de otra mquina que tenga menos carga o migrndola a un servidor con mayor CPU disponible. As, la infraestructura virtual est altamente ligada con el negocio.

25.

Cola unificada:
Trato de los servidores como una cola unificada de recursos, tratando de esta forma los servidores de que dispongamos ganaremos en agilidad, consistencia y efectividad en el proceso de administracin de sistemas.

No sera recomendable entrar a valorar solamente las ventajas que puede aportar la adopcin de infraestructuras virtuales en lugar de las usadas tradicionalmente. Antes de aplicar tcnicas de virtualizacin es completamente necesario y debe ser considerado de obligatoriedad tener en cuenta las posibles desventajas que pueden surgir de su implantacin; algunas de ellas podran condicionar el plantear si finalmente llevar a cabo nuestro proyecto de virtualizacin o no. A pesar de ello, no debemos temer el encontrarnos con grandes dificultades y barreras que nos impidan virtualizar; debemos poner en una balanza las ventajas y desventajas que pueden aparecer en nuestro caso particular, teniendo en cuenta la variedad de posibilidades y modelos de virtualizacin disponibles. Presentamos a continuacin las desventajas ms habituales que suelen aparecer cuando virtualizamos:

1.

Prdida de rendimiento:
Como es normal, la ejecucin de un sistema operativo y de aplicaciones en una mquina virtual nunca ofrecer un rendimiento igual y mucho menos superior

al obtenido con la ejecucin directamente sobre el servidor fsico. Como sabemos, algunas soluciones introducen capas intermedias como son los hipervisores, que capturan las llamadas de las mquinas virtuales, gestionan su acceso concurrente a los recursos fsicos y las monitorizan. Por lo general, una aplicacin que corre en una mquina virtual lo hace de maneras ms lenta a como lo hara en una mquina fsica directamente, aunque recientemente se estn obteniendo performances cercanas al rendimiento nativo de los sistemas anfitriones (ms con paravirtualizacin que con virtualizacin completa). La prdida en rendimiento depende por lo general de tres factores: la aplicacin en s, la tecnologa de virtualizacin utilizada, y la configuracin del hipervisor. Aplicaciones con un gran volumen de operaciones de entrada y salida experimentan peor rendimiento.

2.

Comparticin del servidor:


Una de las principales ventajas del uso de la virtualizacin puede llegar a ser una desventaja importante si no es gestionada y administrada correctamente. Las capacidades y recursos de los servidores fsicos anfitriones deben ser monitorizadas y controladas en todo momento. El uso de capacidad, memoria, procesador, puede variar considerablemente y de manera dinmica al existir nuevos procesos y procedimientos como por ejemplo migraciones de mquinas virtuales, que al tener lugar permite que mquinas virtuales puedan ubicarse en diferentes servidores en distintos momentos. Lgicamente, visto de esta manera, la comparticin del servidor puede acarrear una mayor complejidad en la administracin, que no llevada a cabo correctamente puede conducir a importantes e impredecibles problemas.

3.

Soporte del hardware:


Por lo general, no es posible utilizar hardware que no est soportado por el hipervisor. El software de virtualizacin suele imponer una serie de dispositivos hardware (como tarjetas de vdeo y de red) que son las disponibles para las mquinas virtuales. Otras soluciones de virtualizacin pueden emular el hardware necesario, aunque por lo tanto ofreciendo peor rendimiento.

4.

Hardware virtual obsoleto:


Puede darse la posibilidad de que el hardware virtual est obsoleto. Aunque se suele ir actualizando con nuevas versiones del hipervisor, lo normal es que dispongamos de dispositivos anteriores para virtualizacin como por ejemplo USB 1.0, Firewire 400 o Ethernet 100. Es por ello que es altamente recomendable disponer de un hipervisor actualizado.

5.

Aceleracin de video por hardware:


No est disponible la aceleracin de vdeo por hardware, por lo que aplicaciones que disponen de efectos 3D no funcionarn en condiciones normales

sobre una mquina virtual. Hay alguna excepcin (como puede ocurrir con VMware Fussion o Parallels, que soportan algunas versiones de OpenGL o DirectX), pero conviene comprobar en primer lugar su rendimiento.

6.

Riesgo en la organizacin al implantar una infraestructura virtual:


La proliferacin de mquinas virtuales puede llegar a ser un inconveniente ya que, no organizada de una manera satisfactoria, puede conllevar un crecimiento en la complejidad de la administracin, gestin de licencias de los servidores, aumento del riesgo en cuestiones de seguridad, todo lo contrario a lo que se pretender llegar cuando implantamos un proyecto de virtualizacin.

7.

Nmero inadecuado de mquinas virtuales:


La creacin de mquinas virtuales que no son necesarias lleva un consumo mayor y elevado de recursos computacionales, RAM, disco, CPU por lo que puede llegar a desaprovecharse recursos. No es conveniente la creacin sin control de mquinas virtuales para disponer de servidores con mayor porcentaje de utilizacin; el uso de los recursos debe ser el conveniente para la actividad que estemos desarrollando.

8.

Anfitrin como nico punto de fallo:


Con una nica avera en el servidor anfitrin pueden caer mltiples servidores virtuales con sus respectivos servicios teniendo ello un gran impacto en la organizacin. La solucin de este gran problema de la virtualizacin es sin duda una planificacin detallada que cubra disponibilidad y recuperacin ante desastres siempre que sea posible. Algunas aproximaciones para conseguirlo son las siguientes: redundancia de hardware en el sistema host haciendo que el fallo de un componente sea transparente a las mquinas virtuales, la compra y mantenimiento de hardware que replique los sistemas fsicos que alojan mquinas virtuales de gran importancia (en ocasiones este coste es asumible en comparacin con el dao que causara la cada del sistema en funcionamiento), el uso de clustering, redundancia y replicacin de las mquinas virtuales que ofrecen servicios crticos en varios servidores fsicos y as evitar la cada del servicio, y como no la ejecucin de manera centralizada de software de monitorizacin de sistemas que nos alerte de problemas hardware y software emergentes antes de que lleguen a ser crticos. Adems hay que implementar funcionalidades de migracin de mquinas virtuales Xen, por ejemplo puede llegar a eliminar estos puntos de fallo nicos haciendo los servidores virtuales totalmente portables de un host fsico a otro en el momento dedeteccin de los problemas-. La importancia del hardware del servidor fsico anfitrin en la virtualizacin es crtica como podemos apreciar.

9.

Portabilidad condicionada:
La portabilidad de las mquinas entre distintas plataformas est condicionada por el software de virtualizacin que elijamos. Dependiendo si elegimos soluciones sobre GNU/Linux, MacOS, Windows, para nuestro sistema anfitrin tendremos unas posibilidades u otras para esta portabilidad. Puede que en un futuro sea un requisito indispensable esta portabilidad y migracin de las mquinas virtuales, por lo que debe ser planificado y estudiado con antelacin.

10.

Disminucin de las ventas del hardware:


Como efecto colateral del uso de la virtualizacin, disminuyen en gran porcentaje las ventas de hardware. El nmero de mquinas vendidas ser inferior al actual, a pesar de que el hardware vendido ser de una potencia notablemente superior. A pesar de esta desventaja, las empresas del hardware como Intel y AMD- han apostado fuerte desde el principio por la virtualizacin lanzando tecnologas dotadas de soporte para ello.

11.

Dependencia del sistema operativo anfitrin:


La eleccin del sistema operativo de la mquina anfitriona es crtica. Todos los sistemas operativos de las mquinas virtuales dependern de la estabilidad y seguridad que ofrezca el anfitrin. Una vez ms en este punto podremos establecer debates sobre qu solucin de virtualizacin y qu sistema operativo deben residir en el servidor fsico anfitrin.

12.

Dependencia de la solucin de virtualizacin elegida:


Es fundamental elegir la tecnologa y solucin de virtualizacin adecuada en funcin del servicio que ofrezcamos. Hay algunas que ofrecen mejor rendimiento en servidores con servicios crticos o de negocio, y otras que son mejores en servicios no crticos. Por ejemplo, VMwareno es la solucin ptima para virtualizar las aplicaciones crticas. El hardware sobre el que se ejecutan las mquinas virtuales VMware(arquitectura x86) no es capaz de direccionar tantos datos de una sola vez como otras arquitecturas (porque no es una arquitectura nativa 64 bits), tiene caractersticas de fiabilidad y disponibilidad medias. Las soluciones ptimas para virtualizar los servidores crticos son las que se ejecutan en servidores de alta gama, por ejemplo HP Integrity Virtual Machines, o Xen.

13.

Disponibilidad de recursos suficientes:


La disponibilidad de los recursos es una cuestin de gran importancia y es un problema potencial debido al hecho de que las mquinas virtuales comparten los recursos disponibles fsicamente en el servidor anfitrin, muchas veces compitiendo por ellos, otras veces no. Hay que disponer de recursos suficientes para que las mquinas virtuales estn funcionando de manera simultnea, no solamente de forma independiente. Siempre debemos situarnos en el peor de los casos a la hora de

planificar el uso futuro de los recursos por parte de las mquinas virtuales. Debemos pensar dinmicamente, ya que el uso de los recursos ser cambiante: por temas de carga de trabajo, al disponer de un mayor o menor nmero de mquinas, si las mquinas son portadas entre distintos servidores al implementar migraciones, hacen que sea extremadamente importante la monitorizacin de los recursos de procesamiento, memoria, red, capacidad.

14.

Congestin de red por servidor:


Si el servidor fsico que aloja a diversas mquinas virtuales dispone de una o pocas interfaces de red y las mquinas virtuales ejecutan operaciones con una carga intensiva en la red ello puede provocar que la demanda del hardware de red sea excesiva y exista congestin, dando lugar a problemas de rendimiento para el host anfitrin o para las mquinas virtuales que comparten la (s) interfaz (interfaces) de red. Una solucin trivial a este problema es la instalacin de un mayor nmero de tarjetas de red en el anfitrin as como la asignacin de manera exclusiva de algunas de ellas a las mquinas virtuales que demande un mayor trfico. Sin embargo, estas asignaciones de recursos a las mquinas pueden provocar que aumenten la complejidad de procesos como la migracin de mquinas virtuales.

15.

Incremento de la complejidad y tiempo de depuracin de las actividades de Networking:


La administracin de red de mquinas virtuales, cada una con sus respectivas interfaces de red (ya sean fsicas o virtuales) y configuraciones asociadas (MAC, direccin IP, encaminamiento) puede llegar a ser ms compleja que la administracin de red de mquinas fsicas con las mismas caractersticas, debido no slo a la capa software de red virtual introducida en las mquinas sino tambin a la configuracin que debe ser establecida en cortafuegos, filtrados, y otros mecanismos de control. Una prctica extendida en este aspecto es la creacin de subredes de mquinas virtuales, cada una de las cuales con su propio servidor DHCP para as controlar el rango de direcciones de red que se asignan a las mquinas virtuales, simplificando de manera notable las actividades de filtrado, encaminamiento y cortafuegos al trabajar con bloques de direcciones de red. Adems hay que tener en cuenta las configuraciones de las interfaces de red cuando clonamos y caracterizamos nuevas mquinas virtuales, ya que algunos de los parmetros pueden dar problemas (como por ejemplo la direccin MACde la tarjeta de red) al existir duplicados en la red, dificultando las actividades de networking.

16.

Posible aumento de complejidad en la administracin:


A pesar de que en la mayora de los casos las actividades de administracin se vern simplificadas, hay configuraciones en las que es posible que el efecto al presentar virtualizacin sea el contrario del esperado. Por ejemplo, esto ocurrir si usamos utilidades de administracin y/o monitorizacin de sistemas de forma distribuida que no pueden trabajar con mquinas virtuales no pueden comunicarse

con ellas-, o puede que ocurra tambin si usamos al mismo tiempo diferentes soluciones de virtualizacin. Aunque no sea un problema de gran importancia, siempre es bueno tenerlo en mente.

17.

Nuevas problemticas:
Se introducen nuevas problemticas que no existan en los entornos fsicos al virtualizar: por ejemplo, debemos conocer en cada momento qu mquinas se encuentran arrancadas en cada servidor fsico de las que aloja, o si hay mquinas que pueden ejecutarse en varios servidores fsicos en cual se encuentran en funcionamiento en cada momento, si es necesario migrar mquinas para balanceo de carga, otra problemtica es la convivencia en la monitorizacin tanto de servidores fsicos habituales como de servidores virtuales. Lo mismo ocurre si disponemos de diversas tecnologas de virtualizacin: deben ser gestionadas centralizadamente y de una manera transparente, lo ms homognea posible.

18.

Licencias del software:


Siempre que apliquemos virtualizacin debemos considerar temas relacionados con licencias del software. Cuando almacenaremos mltiples cuentas de usuarios en un nico servidor, cuando repliquemos mquinas virtuales, en el caso de que no pudisemos permitirnos nuevas licencias al aplicar virtualizacin, siempre podemos buscar esquemas de licencias flexibles, lo que en ocasiones es crtico para servidores que alojan un gran nmero de usuarios. Otro posible problema relacionado con licencias es el causado por vendedores de software los cuales no apoyan el uso de sus productos en entornos virtualizados hay que comprobar la licencia del producto para estar seguros de ello.

SOFTWARE PARA LA VIRTUALIZACION


Hoy en da existe gran variedad de software para realizar la virtualizacin a continuacin se muestran los ms conocidos:

VirtualBox:
Oracle VM VirtualBox es un software de virtualizacin para arquitecturas x86/amd64, creado originalmente por la empresa alemana innotek GmbH. Actualmente es desarrollado por Oracle Corporation como parte de su familia de productos de virtualizacin. Por medio de esta aplicacin es posible instalar sistemas operativos

adicionales, conocidos como sistemas invitados, dentro de otro sistema operativo anfitrin, cada uno con su propio ambiente virtual. Entre los sistemas operativos soportados (en modo anfitrin) se encuentran GNU/Linux, Mac OS X, OS/2 Warp , Microsoft Windows, y Solaris/OpenSolaris, y dentro de ellos es posible virtualizar los sistemas operativos FreeBSD, GNU/Linux, OpenBSD, OS/2 Warp, Windows, Solaris, MS-DOS y muchos otros. La aplicacin fue inicialmente ofrecida bajo una licencia de software privativo, pero en enero de 2007, despus de aos de desarrollo, surgi VirtualBox OSE (Open Source Edition) bajo la licencia GPL 2. Actualmente existe la versin privativa Oracle VM VirtualBox, que es gratuita nicamente bajo uso personal o de evaluacin, y est sujeta a la licencia de "Uso Personal y de Evaluacin VirtualBox" (VirtualBox Personal Use and Evaluation License o PUEL) y la versin Open Source, VirtualBox OSE, que es software libre, sujeta a la licencia GPL. VirtualBox ofrece algunas funcionalidades interesantes, como la ejecucin de mquinas virtuales de forma remota, por medio del Remote Desktop Protocol (RDP), soporte iSCSI, aunque estas opciones no estn disponibles en la versin OSE. En cuanto a la emulacin de hardware, los discos duros de los sistemas invitados son almacenados en los sistemas anfitriones como archivos individuales en un contenedor llamado Virtual Disk Image, incompatible con los dems softwares de virtualizacin. Otra de las funciones que presenta es la de montar imgenes ISO como unidades virtuales pticas de CD o DVD, o como un disquete.Tiene un paquete de controladores que permiten aceleracin en 3D, pantalla completa, hasta 4 placas PCI Ethernet (8 si se utiliza la lnea de comandos para configurarlas), integracin con teclado y ratn.

Windows Virtual PC:


Windows Virtual PC es la ltima tecnologa de virtualizacin de Microsoft diseada para Windows 7. Es el motor en tiempo de ejecucin que el Modo Windows XP usa a fin de proporcionar un entorno virtual para Windows 7. Con Windows Virtual PC, las aplicaciones que se ejecutan en el Modo Windows XP pueden verse y son accesibles desde un equipo basado en Windows 7.

Requisitos del sistema para Windows Virtual PC


Se requiere un procesador de 32 o 64 bits a 1 GHz. Memoria (RAM) o Se recomiendan 2 GB de memoria o ms. Se recomiendan 15 GB de espacio disponible en disco duro por cada entorno virtual de Windows. Sistema operativo host compatible: o o o o o o Windows 7 Home Basic Windows 7 Home Premium Windows 7 Enterprise Windows 7 Professional Windows 7 Ultimate Nota: El Modo Windows XP est disponible nicamente en Windows 7 Enterprise, Windows 7 Professional y Windows 7 Ultimate.

Sistema operativo invitado compatible: o Windows XP La caracterstica Aplicaciones virtuales es compatible nicamente con Windows XP Service Pack 3 (SP3) Professional. o Windows Vista La caracterstica Aplicaciones virtuales es compatible nicamente con Windows Vista Enterprise y Windows Vista Ultimate. o Windows 7 La caracterstica Aplicaciones virtuales es compatible nicamente con Windows 7 Enterprise y Windows 7 Ultimate.

Caractersticas de Windows Virtual PC


Fcil instalacin del Modo Windows XP
Una vez instalados tanto Windows Virtual PC como el entorno virtual de Windows XP, Windows Virtual PC proporciona un asistente sencillo para instalar el Modo Windows XP con solo unos cuantos clics.

Compatibilidad con USB


Los usuarios pueden obtener acceso a los dispositivos USB asociados al host directamente desde el entorno virtual de Windows XP. Entre estos dispositivos se incluyen impresoras, escneres, tarjetas de memoria flash, discos duros externos, cmaras digitales, etc.

Aplicaciones de conexin directa


Las aplicaciones instaladas en el entorno virtual de Windows XP se pueden publicar e iniciar directamente desde el escritorio de Windows 7, como si estuviesen instaladas en el propio host de Windows 7.

Integracin de carpetas entre el host y el invitado


Los usuarios pueden obtener acceso a las carpetas conocidas de Windows 7 (por ejemplo, Mis documentos, Imgenes, Escritorio, Msica y Vdeo) desde el entorno de virtualizacin de Windows, como el Modo Windows XP.

Uso compartido del Portapapeles


Los usuarios pueden realizar operaciones de cortar y pegar entre el host de Windows 7 y cualquier mquina virtual.

Redireccin de impresoras
Los usuarios pueden imprimir directamente en la impresora asociada desde la aplicacin de conexin directa o la mquina virtual.

VMware
VMware para usuarios de escritorio viene en dos principales formas: VMware Player y VMware Workstation. VMware Player es una solucin gratuita dirigida a los usuarios ocasionales que necesitan crear y ejecutar mquinas virtuales, pero no necesitan soluciones de avanzada a nivel de empresa. VMware Workstation incluye todas las caractersticas de VMWare Player, la creacin de mquinas virtuales fciles, la optimizacin del hardware, y aade la capacidad de clonar mquinas, tomar varias instantneas del sistema operativo invitado, y repetir los cambios realizados en la misma mquina virtual, muy til para pruebas de software. Funciona bajo los siguietes sistemas operativos: Windows/Linux, el precio es el siguiente Bsico: Gratis, Premium: $189 VMware es similar a su homlogo Virtual PC, aunque existen diferencias entre ambos que afectan a la forma en la que el software interacta con el sistema fsico. El rendimiento del sistema virtual vara dependiendo de las caractersticas del sistema fsico en el que se ejecute, y de los recursos virtuales (CPU, RAM, etc.) asignados al sistema virtual. Mientras que VirtualPC emula una plataforma x86, Vmware la virtualiza, de forma que la mayor parte de las instrucciones en VMware se ejecutan directamente sobre el hardware fsico, mientras que en el caso de Virtual PC se traducen en llamadas al sistema operativo que se ejecuta en el sistema fsico.

You might also like