Tras la primera parte de este post, proseguimos la lista de posibles usos que podemos hacer los usuarios de a pie, de la virtualización de sistemas y servicios , y por si os lo perdisteis en este enlace accederéis al post anterior donde iniciábamos dicha relación de funcionalidades.

Recordemos la definición de virtualización : "ejecución de dos o más sistemas operativos en un único PC físico" . Esta ejecución puede darse separando los sistemas operativos mediante hipervisores (en este post explicamos más a fondo todas las capas del proceso de virtualización, incluyendo los hipervisores) o bien ejecutando un sistema operativo dentro de una ventana en el sistema operativo anfitrión. La primera opción suele verse más en servidores (quede claro que no es exclusivo, sólo donde más veces lo podemos encontrar) y la segunda en equipos de escritorio.

Habiendo recordado esto, pasamos a listar los usos restantes de nuestra lista (por haber hay cientos, pero estos quizás se mantienen más en la línea de lo cotidiano) con el fin de animaros a que os iniciéis en este amplio campo de la informática, empecemos :

1. Compartir recursos entre servidores.

Windows, Unix, Mac OS, tres sistemas operativos distintos entre sí, que si por algo son conocidos es por la falta de compatibilidad entre ellos mismos, creando conflictos por casi cualquier transferencia que se haga de uno a otro. Un buen motor de virtualización nos podrá garantizar que los servidores que ejecuten estos diferentes sistemas operativos podrán coexistir con seguridad en la misma red.

2. Ejecutar sistemas o aplicaciones obsoletos.

Poniendo a Wordpress como ejemplo, con sus 3 actualizaciones durante el mes de Abril, cada actualización de cada aplicación suele traer mejoras para el uso y la apariencia (sea sistema o aplicación), pero no siempre trae sólo eso, normalmente aparecen conflictos con dispositivos, otras aplicaciones, librerías, etc... que nos dan la sorpresa cuando ya hemos actualizado.

Con un sistema de virtualización podríamos comprobar como si de un sandbox se tratase, si la aplicación es o no compatible con nuestras aplicaciones, nuestro sistema o si es lo suficientemente relevante como para realizar la actualización o esperar a una posterior. Lo mismo para los sistemas operativos, que puede que dejen de soportar alguno de nuestros componentes en el caso de que estemos usando un equipo de más de 5 años de antigüedad, por lo que la virtualización será la mejor forma de ahorrarnos sorpresas a la hora de probar una nueva versión de nuestro sistema.

3. Acceder a archivos infectados con virus.

Esto nos ha pasado al 90% de los que trabajamos 'on-line'; nos han enviado información adjunta en un correo electrónico, y al abrir el fichero el antivirus nos ha detectado una amenaza. La indecisión nos ha abordado ya que la información que se nos ha remitido es muy importante, por lo que podemos a arriesgarnos a abrir el correo pensando que nuestro antivirus es un poco hipocondríaco y que no nos pase nada, o bien resulta que la alerta era real y quedamos infectados por uno de los miles de virus, troyanos, gusanos, etc... que circulan por la red. Para evitar esto, podemos trabajar o directamente recibir correo en un sistema virtualizado, por si ocurriese cualquier tipo de 'desafortunado accidente', hacer uso de las imágenes virtuales y recuperar un estado anterior al sistema. Esta funcionalidad la tienen la mayoría de software de virtualización que podamos encontrar, pero en unos es más personalizable que en otros.

Podemos establecer lo que sería el símil del 'punto de restauración' de Windows, es decir, una imagen del sistema operativo en un momento determinado de funcionalidad óptima , que poder restaurar en caso de fallo alguno en el mismo.

4. Determinar la seguridad de una acción.

Volvemos al término 'Sandbox' . Un entorno seguro donde probar instalaciones, configuraciones y otras modificaciones del sistema , sin poner en riesgo al sistema operativo anfitrión o aquellos datos con los que trabajemos. Todo aquello que se realice en un SO virtualizado, no pasará de ahí, de ese espacio destinado a ese sistema, lo que es un punto muy positivo para preservar la integridad de nuestro SO anfitrión.

5. Ejecutar varios OS.

A estas alturas ya es algo evidente lo que se va a tratar en este punto, el poder tener en un mismo equipo varios sistemas operativos , es algo que por ejemplo para los desarrolladores de software puede ser muy útil a la hora de desplegar un software multiplataforma, y poder encontrar errores en uno u otro sistema. Otra opción es aquella en la que se encuentran muchas empresas hoy día.

Tras el fin del soporte a Windows XP que hace unos días llegaba, las empresas o comercios que aún funcionaban bajo dicho sistema operativo están buscando alternativas, y dado que el marco de la economía no acompaña a la idea de invertir en nuevas licencias, virtualizar un sistema operativo bien para ir haciendo pruebas o bien para ponerlo en producción es la mejor opción bajo mi punto de vista para poder ir migrando poco a poco hacia entornos puramente Open Source y poder destinar así ese parte del presupuesto dirigida a licencias, hacia un mejor equipamiento informático, por poner un ejemplo...

KCaVirtualizeIt

6. Copia Seguridad del sistema completo.

Ya lo hemos comentado brevemente en algunos de los posibles usos anteriormente citados, pero el hecho de poder hacer o de disponer de una copia de seguridad de un sistema operativo completo con todo lo que ello conlleva (configuraciones, aplicaciones, datos, historiales, registros...) es una de las principales razones por las que recomiendo un entorno de virtualización. Algo imprescindible hoy día si por ejemplo, somos víctimas de un ataque a nuestro equipo, donde la recuperación de dicho puesto de trabajo sólo nos supondría la restauración de un archivo de copia de seguridad, y tendremos el sistema operativo de la forma en que ayer (por ejemplo) cerramos la sesión.

Una parte peliaguda de las copias de seguridad es el tema de las licencias, o datos sensibles que puedan albergar . Las copias de seguridad de entornos virtualizados, por lo general contienen todo el sistema operativo, como si de una clonación del disco duro se tratase, por lo que está sujeto al uso de ciertas licencias (por ejemplo en el caso de Microsoft, no así en el caso de distribuciones Linux), o de la LOPD (Ley Orgánica de Protección de Datos) que nos responsabiliza ante cualquier tipo de filtración de datos de nuestro clientes hacia terceros; por lo que hay que planear muy bien cuándo se realizan las copias, dónde se alojan, quién las gestiona y tiene acceso a ellas, etc...

7. Crear nuestra propia Personal Cloud.

Un punto muy importante en entornos de virtualización, el poder crear un servicio del estilo de Dropbox, Google Drive, Box, etc... pero para nuestro uso particular o empresarial. Con esta funcionalidad no tendremos que llevar nuestro portátil encima ya que desde nuestra tablet-pc o nuestro mismo smartphone podremos acceder a nuestros datos estemos donde estemos y sin tener que migrar nuestro datos a servidores externalizados. Y no sólo a nuestros datos , en caso de que queramos ir un poco más allá, podríamos acceder remotamente a nuestro escritorio personal, mediante herramientas como Escritorio Remoto, Teamviewer u otras RDP (Remote Desktop Protocol) todo a través de internet.

Nota importante, si vamos a configurar un escritorio remoto en una máquina virtual con sistema operativo Windows, hemos de asegurarnos de tener instaladas una de las versiones Professional, Ultimate o Enterprise (en el caso de Windows 7); o bien Professional, Business o Ultimate (en el caso de Windows Vista) ya que éstas son las únicas que permiten la configuración de dichos accesos remotos por defecto, es decir sin ningún 'hacking' adicional al sistema operativo.

8. Crear nuestro propio servidor de alojamiento.

Esta funcionalidad tiene bastante relación con la anteriormente citada, pero he decidido darle una perspectiva distinta, enfocada más hacia el alojamiento Web, donde con nuestro propio equipo podremos ahorrarnos el coste del hosting para nuestros proyectos Web, con lo que pasarían a ser Webs 'auto-alojadas'. Hay multitud de distribuciones de software libre sobre las que podemos desplegar uno de los múltiples servicios que nos facilitarán esta tarea, normalmente son distribuciones de servidor donde los entornos de escritorio no se tienen en cuenta.

Por esto se recomienda un cierto nivel de manejo de la terminal o consola de comandos para iniciar esta andadura, pero una vez en marcha, podremos tener desde una simple página web, una plataforma moodle, un gestor documental como Alfresco, o cualquier otro servicio que precisemos . Aquí es importante hacer una reseña al tema de los Docks o Contenedores , mencionados en varios posts anteriores en Openwebinars.net donde detallan de manera muy precisa el funcionamiento e instalación de los mismos. Esto de los contenedores nos ahorraría el tema de la instalación manual de dichos servicios, automatizándola y pudiendo centrarnos en la configuración directamente. Muy importante también el hecho de que estos servicios lógicamente estarán disponibles siempre y cuando mantengamos el equipo conectado y on-line , por lo que habría que calcular el consumo eléctrico del mismo y el precio de los hostings habituales para sopesar si nos sería económico o rentable.

9. Reaprovechamiento de hardware antiguo.

Imprescindible mencionar esta característica ya que por ejemplo, en mi caso, este post está siendo redactado en un equipo del 2001 , con lo que si algún día adquiero un equipo más actual, este podría usarlo para casi cualquiera de los menesteres que ocupa este post o del que lo precede . Sobre todo si lo centramos en virtualizar sistemas sin entornos de escritorio, dado que así dará igual si el equipo no cuenta con una tarjeta gráfica dedicada, ya que lo que importará será el uso que hagamos de la RAM y el procesador. Por poner un ejemplo, con una inversión mínima en un disco duro de 1Tb, podría tener un servicio OwnCloud personal , donde almacenar documentación profesional, personal, archivos multimedia, o incluso emitir en streaming mis playlists para escucharlas desde el puesto de trabajo, desde la tablet-pc o el smartphone.

10. Conocimiento.

El más importante de todos los usos de la virtualización, es que pone al alcance de nuestra mano un sin fin de servicios y sistemas operativos sobre los que podemos hacer infinidad de pruebas, instalaciones, tests y mucho más con lo que si por ejemplo venimos de trabajar únicamente con Windows, podemos virtualizar un sistema Linux e ir viendo dónde está cada cosa, cómo son las configuraciones básicas, las personalizaciones del sistema, la instalación de aplicaciones, descubrir si sus ventajas son tan importantes como para realizar la migración definitiva...

Lo mismo si tenemos la curiosidad de investigar un MAC OS, o si en nuestra empresa se está buscando una persona que domine un servicio Alfresco, podríamos virtualizarlo sobre un sistema operativo de nuestra elección y con unas nociones básicas (o con uno de nuestros cursos de Openwebinars.net) poder ir cogiendo soltura sobre dicha aplicación.

Aún más importante si estamos desempleados y queremos ampliar nuestro perfil profesional con aplicaciones o servicios que se estén demandando hoy día en el mercado laboral, para luego si queremos certificar dichos conocimientos tener ya una amplia base sobre la que ir trabajando hasta llegar a la prueba de certificación (como por ejemplo comenzar a virtualizar un Linux, y determinar que nos gusta lo suficiente, o que nos es útil en nuestro perfil profesional hasta el punto de querer certificar estos conocimientos con los cursos LPIC-101 y LPIC-102 de Openwebinars.net con lo que nuestro perfil profesional aumentará considerablemente al tener certificados estos conocimientos con sus correspondientes acreditaciones). En resumen, la virtualización también satisface la curiosidad humana (al menos en el campo de la informática).

Con todo esto espero haberos mostrado alguno de los usos que podréis sacar de la virtualización de sistemas o servicios , y demostrar que no sólo los profesionales pueden aprovechar las funcionalidades del 'arte de virtualizar'.

Habréis podido comprobar que no hago referencia a software alguno de virtualización, y es por el hecho de que hay una gran cantidad de software en este campo, aunque si me llegasen a preguntar, KVM, OpenVZ, Proxmox VE o Dockers serían las opciones a escoger para entornos de desarrollo mientras que VirtualBox para comenzar en entornos de escritorio o de bajos recursos sería lo idóneo.