• No se han encontrado resultados

Introducción

1.7. Proyecto Globus

El Proyecto Globus es un esfuerzo multi-institucional de investigación y desarrollo que se dedica a la creación de tecnologías básicas para Grids de computación. La Open Grid Services Architecture (OGSA) es una evolución propuesta del actual Globus Toolkit hacia una arquitectura de sistemas Grid basada en una integración de servicios, conceptos y tecnologías Grid. Además de la información disponible a través de páginas Web, los ingenieros e investigadores necesitan un acceso adecuado a elevados recursos de computación, tanto de cálculo como de información almacenada en grandes bases de datos. Su interés parte de la propia filosofía no solo de compartir recursos distribuidos, y por tanto optimizar los mismos, sino de garantizar además un acceso transparente de los mismos a los usuarios. El software intermedio (middleware), entre la infraestructura básica y las aplicaciones, es el encargado de lograr este objetivo, y por lo tanto una componente fundamental del Grid. En esta dirección, el proyecto Globus ha sido el primer foco de atención y base de los primeros proyectos Grid que aparecieron en Estados Unidos.

En una primera fase, se ha desarrollado un “toolkit” para la infraestructura de computación Grid que provee de las capacidades e interfaces básicos en áreas tales como comunicación, información, localización y gestión de recursos, autentificación y acceso a datos. Junto con dicho toolkit se ha desarrollado un “metacomputing abstracts machine” en la cual pueden construirse un rango de infraestructuras, servicios y aplicaciones alternativas. Además se está construyendo herramientas para programación paralela, de localización de dispositivos y de gestión de servicios.

El objetivo a largo plazo de Globus es resolver los problemas de configuración y optimización de los entornos de computación Grid.

Estos retos son bastante ambiciosos principalmente debido a la complejidad inherente en los sistemas de computación Grid, a que muchos recursos solo se identifican durante el proceso de ejecución, y a la propia naturaleza de las características de dichos recursos. Se está investigando el diseño de servicios que convivan en las capas de más alto nivel de Globus y que permitan la construcción de aplicación adaptativas; estos servicios conformarán la llamada “Adaptative Wide Area Resource Environment”, o AWARE.

Existe toda una serie de hitos pioneros en el campo de la computación Grid: desde los paquetes PVM (Parallel Virtual Machine) y MPI (Message Passing Interface) que proveen de una capa de comunicación independiente de la arquitectura, hasta Condor que permite obtener una vista uniforme de un conjunto de procesadores, pasando por AFS que logra lo mismo con un conjunto de discos. Cada uno de estos sistemas ha resultado exitoso en su aplicación en sistemas de gran escala. Globus no permite competir con estos, sino ofrecer una infraestructura básica que pueda ser utilizada para la construcción de implementaciones de alto rendimiento y portabilidad en todo un rango de este tipo de servicios.

Básicamente se pretende desarrollar mecanismos de bajo nivel que puedan utilizarse para implementar servicios de alto nivel y construir técnicas que permitan a su vez que estos servicios puedan observar y guiar a los mecanismos de bajo nivel. Esto puede reducir la complejidad y mejorar la calidad del software de computación Grid introduciendo una única infraestructura de bajo nivel que pueda utilizarse con muchos y variados propósitos, y resolviendo muchos de los problemas de configuración de la actual computación Grid. En este sentido la librería de comunicación Nexus ha sido ya utilizada para construir implementaciones de alto rendimiento de diversos interfaces de programación paralela.

Se ha mencionado ya el experimento I-WAY, cuyos componentes incluyen la librería de comunicación Nexus, autentificación basada en Kerberos, mecanismos de creación de procesos, y una gestión centralizada de los recursos computacionales.

Salvo en algunos aspectos (p.e. no escalabilidad, no gestión de recursos de red, etc.), el experimento demostró las ventajas de Globus como proveedor de mecanismos

básicos. Las aplicaciones I-WAY fueron desarrolladas con una gran variedad de herramientas de paralelización (MPI, CC++, CAVEcomm, etc.), que fueron portadas al entorno I-WAY adaptando estas herramientas a los mecanismos de Globus de autentificación, creación de procesos, y comunicación. Otro testbed es el Globus Ubiquitous Supercomputing Testbed (GUSTO), cuyo objetivo principal es el desarrollo y evaluación de mecanismos básicos de autentificación, gestión, comunicación e información. Para ello se ha conformado una comunidad de prueba formada por quince centros y con recursos de computación que van desde IBM, SG, etc., y redes ethernet y ATM OC3. La autentificación se basa en el método explicado en la sección anterior, y el servicio de información es ofrecido por un servidor dedicado que mantiene la información sobre la configuración de los recursos y las características de la red. Esta información se actualiza dinámicamente para tener una visión en tiempo casi real del estado del sistema.

El proyecto Globus aborda el problema de la computación Grid desde abajo, desarrollando mecanismos básicos que pueden utilizarse para implementar una gran variedad de servicios de alto nivel. Comunicación, localización de recursos, información, autentificación, acceso a datos, y otros servicios están actualmente desarrollándose. A su vez, este proyecto también considera el problema de la configuración en un sistema de computación Grid, con el objetivo principal de crear un Adaptative Wide Area Resource Environment (AWARE) que soporte la construcción de servicios y aplicaciones adaptativas a un entorno tan dinámico como el de la computación Grid. Para esto se han introducido en Globus los mecanismos de selección, información y notificación cuyo objetivo es servir de herramientas para la consecución de una configuración dinámica.

Resumiendo, el proyecto Globus ha logrado importantes avances en la definición de un núcleo para la arquitectura de un sistema de computación Grid a partir del cual pueden construirse una gran variedad de entornos de computación Grid, en el desarrollo de un framework que permite que las aplicaciones respondan al comportamiento dinámico subyacente en cualquier entorno de computación Grid y en la demostración en testbeds como I-WAY y GUSTO de que se pueden construir herramientas de alto nivel basados en los interfaces incluidos en el toolkit Globus.

2

Documento similar