| Artículos | 01 OCT 2007

SoftGrid: Cuando los sueños se hacen realidad

Tags: Histórico
Daniel Matey.
Los que tenemos que afrontar el reto de diseñar la arquitectura de escritorios y su mantenimiento para una empresa, cualquiera que sea, nos enfrentamos indudablemente a muchos problemas, pero probablemente, junto con la seguridad a nivel general, nuestra mayor pesadilla será el software que tenga que correr en los puestos. Para suavizar en la medida de lo posible esta tarea contamos con SoftGrid.

Y es que los retos de este tipo de proyectos son muchos. Por ejemplo, tener en todo momento la certeza de que no estamos usando software sin licencia, poder distribuir las aplicaciones con rapidez o actualizarlas con facilidad (tanto a nivel de versión como de parches), que únicamente los usuarios autorizados puedan correr el software que desplegamos en nuestra infraestructura, evitar los problemas de compatibilidad, dependencias o seguridad, entre muchos otros. En definitiva, muchos retos y muy pocas soluciones.
Para suavizar un poco estas tareas, muchas empresas encontraron servicios como Terminal Services o Citrix, que se presentaban como la solución a parte de estos retos.
Pero el uso de terminales, aún hoy en día, no es buena solución para algunos tipos de aplicaciones, como por ejemplo las de CAD. Por otra parte, la calidad de los terminales se ve muy reducida en escenarios con poco ancho de banda y aún usando aceleradores de red, la latencia en conexiones (como por ejemplo las vía satélite) puede llegar a hacer prácticamente imposible el uso de esta metodología de acceso a las aplicaciones.
Otro aspecto a tener en cuenta es que, evidentemente, el uso de terminales queda excluido como solución cuando hay que contemplar el trabajo off-line.
También hay que pensar que toda la capacidad de proceso que necesiten las aplicaciones basadas en terminal tiene que ser aportada por los servidores de terminales, lo cual, en aplicaciones que requieran bastante interfaz gráfica, un alto coste de proceso o grandes cantidades de memoria, pueden llegar a requerir de servidores muy potentes, lo que aumenta el número de máquinas necesarias para prestar el servicio y, por lo tanto, se incrementa tanto el coste de implementación como el de mantenimiento.
No obstante, efectivamente el uso de terminales es la mejor solución para muchas aplicaciones. De hecho, es una de las opciones que más se ha implantado en los últimos años. Pero tampoco hemos de tomarnos esta opción como la panacea (ya que hay aplicaciones que siempre han estado en los puestos de trabajo, y es mejor que sigan así), sino como una solución que nos permita afrontar con las máximas garantías los retos que hemos mencionado al principio de este artículo.

Una solución
Softricity fue una empresa que, como cuentan sus creadores, tuvo una visión: “que los puestos usaran el software tan fácilmente como la electricidad”. El concepto es simple, enchufar a la red y listo. Con esta visión desarrollaron un software llamado SoftGrid, que tuvo mucho éxito y que era tan bueno que llegó a llamar la atención de Microsoft, que tiró de talonario y compró Softricity con el fin de llevar la idea aún más allá.

Entender SoftGrid
Lo cierto es que, después de buscar algo de información a través de internet, comprobamos que son muchos los errores que se cometen a la hora de entender qué hace realmente SoftGrid y cómo funciona, por lo que hemos decidido realizar un reportaje con la idea de ofrecer una visión clara que nos permita comprender esta nueva modalidad.
A grandes rasgos, SoftGrid es un software que nos permite virtualizar aplicaciones, para posteriormente controlarlas y distribuirlas convenientemente a través de la red.
Pero cuando hablamos de virtualización, hemos de tener en cuenta que virtualizar una aplicación es muy diferente a virtualizar un servidor o un ordenador como podemos hacer con VMWare o Virtual PC/Server.
Una aplicación virtualizada no contiene el sistema operativo completo, sino la propia aplicación y sus dependencias (las dependencias pueden ser ficheros, servicios, ramas del registro, programas o dlls, por ejemplo).
Para poder correr una aplicación virtualizada con SoftGrid necesitamos, por lo tanto, tener instalado previamente un sistema operativo y, por supuesto, el cliente de SoftGrid, del que hablaremos más tarde.
Las aplicaciones que corramos virtualizadas van a poder acceder al ordenador en el que corren de la misma forma que una aplicación cualquiera, lo que significa que las aplicaciones pueden usar cualquier tipo de dispositivo y que estaremos usando en todo momento los recursos locales de la maquina en la que corra la aplicación. Así, por ejemplo, si un usuario está corriendo Excel de forma virtualizada y quiere salvar un archivo, al seleccionar la opción Guardar como verá sus discos locales como si estuviera usando el software de forma normal. De mismo modo, también es posible usar aceleración 3D, sonido… en definitiva, cualquier tipo de aplicación.
A nivel interno, SoftGrid tiene varios componentes:
- El sequencer(establecedor de la secuencia): es el software encargado de virtualizar las aplicaciones y analizar sus dependencias para virtualizarlas también, ya que el resultado de virtualizar una aplicación son varios ficheros que contienen tanto la aplicación virtual como algunos datos de configuración.
- El Servidor de SoftGrid: las aplicaciones que hemos virtualizado se añaden como nuevos paquetes o como parte de paquetes existentes dentro del servidor de SoftGrid. Desde su consola administraremos los paquetes, sus versiones y actualizaciones, licencias y asignaciones a usuarios o grupos del directorio activo. Un paquete puede tener varias aplicaciones y esto nos permite decidir si, por ejemplo, queremos tener un paquete que sea todo Office, o si, por el contrario, queremos mantener y desplegar cada aplicación independientemente. El servidor requiere un SQL Server que puede ser también MSDE (que es gratuito) y se usa para guardar toda la configuración, facilitando además la extensibilidad del producto. Para instalar el servidor necesitaremos una serie de cuentas para el servicio, el acceso al Directorio Activo y el acceso a la base de datos. El servidor de base de datos puede ser alguno que ya tengamos, siendo recomendable dimensionar adecuadamente la tarjeta de red y contar con un disco independiente para almacenar los paquetes de las aplicaciones virtuales, en caso de tener muchos usuarios conectados a SoftGrid. También es requisito contar con IIS y habilitado ASP.Net, ya que SoftGrid usa algunos web services (servicios web) que corren sobre un sitio creado bajo el propio IIS. De hecho, la propia consola se conecta con el servidor por HTTP o HTTPs.
- El cliente de SoftGrid: es un servicio que ha de correr en cada máquina que ejecute aplicaciones virtualizadas. Se encarga de comunicarse con el servidor y descargar las aplicaciones que tenga asignadas, así como de realizar otras funciones que se verán más adelante en este mismo reportaje. El cliente se puede distribuir por GPO (políticas de grupo), dado que hay una versión MSI. También se puede instalar manualmente, mediante script o con el sistema gestor de Microsoft System Management Server (SMS).
- La consola de administración: hay una consola para administrar el cliente y otra para administrar el servidor. Esta consola cliente no tiene por qué instalarse en los puestos, aunque nos será muy útil instalarla si tenemos algún problema.
No obstante, para aquellos que necesiten continuar con soluciones basadas en terminales, cabe com

Contenidos recomendados...

Comentar
Para comentar, es necesario iniciar sesión
Se muestran 0 comentarios
X

Uso de cookies

Esta web utiliza cookies técnicas, de personalización y análisis, propias y de terceros, para facilitarle la navegación de forma anónima y analizar estadísticas del uso de la web. Consideramos que si continúa navegando, acepta su uso. Obtener más información