Comparte:
Cloud
22 de mayo de 2013

La complejidad de la virtualización de escritorios

La complejidad de la virtualización de escritorios

La complejidad de la virtualización de escritorios

Escrito por , 22/05/2013

Como comentaba en el post Hacia el renting de escritorios, la virtualización de escritorios ofrece ventajas evidentes pero implica una arquitectura técnica compleja y requiere hacerse muchas preguntas antes de diseñarla.

Veíamos que consistía en ejecutar el escritorio en un sistema distinto del que utiliza el usuario. Esto nos lleva a distinguir entre el dispositivo de acceso (el equipo físico donde “teclea” el usuario) y el servidor de escritorio (el equipo central que ejecuta el software de escritorio Windows, Gnome, KDE, etc). Cada elemento puede tratarse de forma independiente y podemos encontrar distintas combinaciones con soluciones variadas en cada una de ellas. Estrictamente, las aplicaciones se ejecutan en una tercera capa: los servidores de aplicaciones, aunque en muchos casos los propios servidores de escritorios también ejecutan aplicaciones (por ejemplo, las ofimáticas).

Los dispositivos de acceso pueden tener también una tecnología totalmente distinta a los propios escritorios: así, por ejemplo, podemos acceder a escritorios Windows desde thin clients basados en Linux. El usuario final tendrá la experiencia de que su dispositivo es un PC con Windows pero, en realidad, estará ejecutando Linux en un dispositivo de acceso sin que él lo note.

Un punto importante es la forma de comunicación entre los dispositivos de acceso y los servidores de escritorio. Vamos a emplear protocolos especiales en función, básicamente, del tipo de escritorio que utilicemos. Así, por ejemplo si queremos tener escritorios Windows utilizaremos el protocolo RDP y si queremos escritorios Linux, X Window. Aunque también existen otras opciones, que elegiremos según las prestaciones y entornos en los que queramos funcionar, como ICA, NX o VNC.

El modelo de virtualización de escritorios nos permite que los escritorios se ejecuten en servidores virtualizados, pero no es imprescindible. De hecho, en los sistemas más simples los escritorios se pueden ejecutar en los tradicionales servidores de terminales, ya sean Windows, Citrix o Linux. Estas tecnologías nos permiten ya tener varios usuarios que ejecuten su escritorio personalizado en un sistema central, que estará ubicado, generalmente, en nuestro centro de datos, aunque cada vez son más comunes también las soluciones de hosting para esos sistemas.

De hecho, vamos a encontrar tres tecnologías básicas en los servidores de escritorio: la ya mencionada de servidores de terminales; la de servidores con blades, en la que cada blade ejecuta el escritorio de un usuario; y la de servidores virtuales, en la que los escritorios se ejecutan en máquinas virtuales, ya sea de forma personalizada (un escritorio para cada usuario) o en modo pool (varios usuarios comparten un modelo de escritorio genérico). Esta última tecnología de escritorios virtuales y virtualizados a la vez es la más sofisticada y la que proporciona mayores beneficios, pero en muchos casos las otras tecnologías también son perfectamente aplicables y económicamente preferibles.

Otro componente que podemos necesitar en una plataforma VDI es el broker que, en su versión más simple, es un elemento de software que pone en contacto al usuario que quiere utilizar una plataforma VDI con el escritorio virtual que debe utilizar. Así, en esencia, su cometido es identificar al usuario y, en función de los parámetros que se hayan configurado para él, conectarlo con el servidor de escritorio que le corresponda.

En las plataformas más sofisticadas, sin embargo, el broker puede realizar más funciones. Por ejemplo, ocuparse (u ordenar a algún otro software) que arranque una máquina virtual para el escritorio del usuario o validar al usuario en un entorno de single sign on.

Como vemos, por tanto, una solución de escritorios virtuales puede requerir una arquitectura compleja, por lo que antes de lanzarse a su puesta en marcha es necesario realizar un diseño, precedido de una fase en la que establezcamos claramente las especificaciones y prestaciones que vamos a exigir de la plataforma.

Se trata de virtualizar porque deseamos obtener mejores prestaciones y reducir los costes de administración. Un buen diseño debe responder entonces, por lo menos, a las siguientes preguntas:

  • Respecto a los dispositivos de acceso, ¿reconvertimos los PC actuales en thin clients? ¿Adquirimos thin clients tradicionales, con software en PROM, o utilizamos una solución flexible, con software en streaming? ¿Empleamos thin clients con prestaciones especiales, como por ejemplo SunRay? ¿Queremos que los usuarios puedan acceder desde su casa, desde un cibercafé, en roaming?
  • En cuanto a los servidores de escritorio, ¿optamos por una solución de terminal server, blades o máquinas virtuales? ¿Qué tecnología de escritorio utilizamos: Windows, Linux o mixta en función de las necesidades de los usuarios? ¿Qué alta disponibilidad queremos? ¿Qué rendimientos esperamos?
  • Relativo al acceso remoto, ¿necesitamos conectar usuarios de oficinas remotas? ¿Queremos poder conectarnos desde Internet de modo seguro? ¿Deseamos dar acceso a través de redes móviles?
  • Si utilizamos máquinas virtuales, ¿qué tecnología implantamos: VMWare, Xen, VirtualBox, …? ¿Vamos a necesitar un sistema de gestión específico para los virtualizadores?
  • Respecto a aspectos de gestión y administración, ¿cómo vamos a gestionar los escritorios? ¿vamos a implantar pools, escritorios personales o ambos? ¿Necesitaremos un broker? ¿Qué queremos que haga éste? ¿necesitamos algún sistema de gestión como View de VMWare, Xendesktop, o alguno más económico?

Una vez tengamos claro el diseño de la arquitectura software podremos plantearnos el dimensionamiento del resto de componentes: el número y tamaño de los servidores en función del número de usuarios, prestaciones y redundancia; la verificación de la capacidad de las redes internas y externas; los sistemas de almacenamiento y backup; y los otros componentes que puedan ser necesarios en función de las especificaciones del proyecto y diseño de la arquitectura software.

Es importante señalar que el dispositivo de acceso sólo necesita una potencia mínima, con capacidad para manejar tan sólo el software de conexión. Puede ser un dispositivo simple y barato, con poca memoria y poca necesidad de CPU. Esto permite que sean dispositivos de muy poco consumo y sin disco o ventiladores, lo que los hace además silenciosos y más fiables. Para el usuario este dispositivo se comporta como un terminal transparente y, si se ha configurado para ello, puede ni tan siquiera ser consciente de que las aplicaciones se están ejecutando en otro equipo. Muchas veces cuando un PCse queda obsoleto puede reconvertirse en thin client, alargando su vida útil. En el caso extremo, incluso un PC con una CPU 486 podría funcionar perfectamente como thin client.

Pero, como ven, son muchos los aspectos que hay que tener en cuenta y lo complejo del tema, por lo que una buena opción es dejarlo en manos de los expertos y optar por el renting de escritorios en modo pago por uso.

Imagen: DeaPeaJay

Sobre el autor

Juan José Sánchez García

Juan José Sánchez García

Apasionado de Internet, del mundo de los ordenadores y las tecnologías de la información, emprendedor de vocación y enamorado del mundo de las ventas y los negocios. De grandes ideas están los cajones llenos, lo que diferencia el éxito del fracaso es saber llevarlas a cabo con talento, pasión y muchísima perseverancia y esfuerzo
Ver todos sus artículos »