Sunteți pe pagina 1din 18

Contenido

Conceptos de Metasistemas o GRIDS. Qu ofrecen? Desafos Razones que motivaron la creacin de GRIDS Posibles aplicaciones Tipos de usuarios y su descripcin Arquitectura Ejemplos

METASISTEMAS
Una nueva tcnica de computaci n distribuida

? ? ? ?

Prof. Yudith Cardinale y Mariela Curiel Sep Dic 2002

? ?

Metasistemas: qu es?
? Otros

Metasistema

IBM Compatible

trminos usados: Computational Grids, Metacomputacin, Sistemas de Metacomputacin


IBM Compatible

Workstation

Laptop computer Token-ring

Laptop

Computer

Red

Ethernet

Laptop computer

Mac II

Laptop computer

Metasistema

Metasistemas: qu es?
? Ambientes

Metasistemas: qu es?
? Los

que integran, a travs de redes de alta velocidad recursos heterogneos complejos tales como: supercomputadores, grandes bases de datos, etc. ? Mecanismo para que los usuarios puedan usar recursos distribuidos geogr ficamente de forma transparente, creando la ilusin de un sistema de computacin integrado. Esta ilusin la provee el middleware.

GRIDS hecen posible el compartir c recursos, en forma coordinada, dentro de organizaciones dinmicas e interinstitucionales (organizaciones virtuales). ? La infraestructura debe proveer alto desempeo y alta disponibilidad

Metasistemas y SD
Como un SD los metasistemas deben integrar recursos de capacidades variadas, conectados por redes no confiables, localizadas en dominios administrativos distintos. No obstante, la necesidad de alto rendimiento puede requerir de modelos de programacin e interfaces radicalmente diferentes,

Metasistemas: qu ofrecen?
? Colaboracin

ms efectiva, agrupando coinvestigadores en el mismo espacio virtual. de la capacidad de cmputo local.

? Incremento

? Productividad

mejorada a travs de un ambiente de programacin considerablemente ms simple.

Metasistemas: qu ofrece?
? Ahorro,

Desafos
?

los recursos en cuestin pueden ser muy costosos. ? Espacio de objetos (Archivos) persistentes compartido. ? Ejecucin remota transparente.

Escalabilidad: la idea es que soporten cientos, miles e incluso millones de mquinas. Estas mquinas se conectan a travs de Internet (alta latencia y bajo throughput) ? Facilidad de Uso: debe ser fcil agregar una nueva mquina al conjunto. Facilidad del desarrollo de aplicaciones. ? Tiempos de Ejecucin: Problemas que toman tiempo en resolverse (horas meses o aos); hacen falta mecanismos de checkpoiting para asegurar que se pierda la mnima cantidad de trabajo en caso de fallas.

Desafos
?

Razones que motivaron su creacin


?

Paralelismo Adaptativo: el conjunto de mquinas crece y decrece durante la ejecucin de una aplicacin. El metasistema debe ser capaz de reasignar trabajos. ? Heterogeneidad: involucra mltiples arquitecturas. ? Seguridad: No existe un administrador nico para manejar todos los nodos participantes. Los oferentes necesitan garantas de que no se permitirn accesos no autorizados a sus mquinas. ? Disponibilidad y alto rendimiento

Los datos presentan un gran desafo: Los detectores del Laboratorio Europeo de Partculas Fsicas, producirn para el ao 2005 varios petabytes de datos por ao, un millon de veces la capacidad de un computador de escritorio promedio. Analizar estos datos pudiera requerir de alrededor de 20 teraflops/seg de poder computacional. Hoy en da el supercomputador ms rpido ofrece 3 teraflops/seg.

Razones que motivaron su creacin


? ?

Razones que motivaron su creacin


? Clusters El sistema ASCI White cost 110 millones de dolares y necesit de un nuevo edificio. ? Computacin en Internet
Existen alrededor de 400 millones de PCs en el

Supercomputadores Clusters
Surgen en 1980 Los ms rpidos son 8000 procesadores (ASCI White

System) en el laboratorio nacional Lawrence Levermore. Ofrecen una mejora considerable en poder de cmputo, pero es un conjunto de computadores dedicados, ubicados en un solo lugar. Existen razones financieras y tcnicas que imponen lmites a can grandes deben ser estos sistemas.

mundo, muchas tan poderosas como los supercomputadores de los 90. La mayora de estos PCs tienen mucho tiempo ocioso.

Razones que motivaron su creacin


?

Razones que motivaron su creacin


?

Computacin en Internet La computacin en Internet busca explotar los ciclos ociosos de workstations y PCs de modo de crear un sistema poderoso de computacin distribuida. En 1985 Miron Livny mostr que la mayora de las estaciones de trabajo permanecian ociosas y propuso el sistema Condor para utilizar ciclos libres de CPU. Es efectivo a pequea escala: Universidades.

Computacin en Internet En 1997 apareci Entropa (Scott Kurowski). Usa ciclos ociosos de computadores, alrededor del mundo, para resolver problemas de inters cientfico. En 2 aos creci hasta llegar a 30000 computadoras que proveen una rapidez de cmputo por encima de un teraflop/seg. Usando este sistema se identific el nmero primo ms grande hasta ahora conocido.

Razones que motivaron su creacin


? Computacin en Internet
El prximo paso lo representa David Anderson
?

Razones que motivaron su creacin


Computational GRIDS [Foster y Kesselman, 1998]:
La computacin en Internet es slo un caso especial de

con su proyecto SETI@home. Los ciclos ociosos se utilizan para analizar datos del telescopio de ARECIBO buscando signos que indiquen la presencia de inteligencia extraterrestre. Abarca alrededor del millon de PCs.

algo mucho ms poderoso: la necesidad de distintas organizaciones (ambito cientfico) que buscan metas comunes de compartir recursos. El web y el correo electrnico ofrecen mecanismos bsicos que permiten a estos grupos trabajar juntos. Lo ideal es agrupar datos, computadores, sensores y otros recursos en un nico laboratorio virtual.

Razones que motivaron su creacin


?

Aplicaciones
? Supercomputacin

Computational GRIDS La tecnologa GRID persigue este propsito, ofreciendo protocolos, servicios y kits para el desarrollo de software, necesarios para crear un ambiente que permita compartir recursos a gran escala. Los primeros conceptos se exploraron en 1995 (experimento I-WAY): se usaron redes de alta velocidad para conectar 17 sites en Norteamerica. Hoy en da existen muchos proyectos de Investigacin encargados de desarrollar las tecnologas para crear GRIDS en varias comunidades y disciplinas cientficas.

distribuida: usan las GRIDS para agrupar recursos que permitan resolver problemas que no pueden ser resueltos por un solo computador. Ejemplos: simulacin interactiva distribuida (entrenamiento y planificacin militar), simulacin de procesos fsicos complejos (cosmologa, modelamiento del clima,etc.)

Aplicaciones
? High-Throughput

Aplicaciones
? Computacin

computing: la idea es planificar un gran nmero de tareas independientes o dbilmente acopladas (poca sincronizacin) para aprovechar ciclos de CPUs ociosos. La naturaleza independiente de las tareas conduce a diferentes mtodos para resolver el problema. Ejem: Problemas de criptografa, se uso durante la etapa crucial en el diseo de los procesadores K6 y K7, CONDOR.

por demanda: satisfacen requerimientos de recursos a corto plazo. Se trata de recursos a los que no se tiene acceso de manera local. Entre los recursos tenemos: BD, sensores, software, cmputo. Ejem: NEOS y NetSolve, envan a servidores remotos clculos que necesitan mucho poder de cmputo o un software especializado.

Aplicaciones
? Computacin

Aplicaciones
? Computacin

con un manejo intensivo de datos: sintetizan informacin a partir de datos en repositorios distribuidos, libreras digitales y bases de datos. El proceso de sntesis es intensivo desde el punto de vista computacional y comunicacional. Ejem: Experimentos Fsicos, Fotografas Astronmicas.

colaborativa: permite interaccin hombre-hombre, generalmente las aplicaciones estn estructuradas en trminos de un espacio virtual compartido.

Usuarios
Usuarios finales Desarrolladores de aplicaciones Desarrolladores de herramientas Desarrolladores del metasistema Administradores del sistema

Usuarios
? Desarrolladores : ?Propsito: disear e implementar los

servicios bsicos (protocolo del metasistema). ?Usan los servicios de los sistemas locales. ?Se preocupan por la simplicidad local, la conectividad y la seguridad.

Usuarios
? Desarrolladores

Usuarios
? Desarrolladores

de herramientas :

de herramientas :

?Propsito: implementar herramientas,

?Ejem: Netsolve, MPI ? Los desarrolladores de herramientas deben

compiladores, libreras, etc. que implementan los modelos de programacin y servicios usados por los desarrolladores de aplicaciones. ?Usan los servicios del metasistema ?Se preocupan por la adaptabilidad, el desempeo y la seguridad

usar los servicios bsicos para programar implementaciones eficientes de modelos de programacin que utilizarn los programadores de aplicaciones.

Usuarios
? Desarrolladores de herramientas : ?Modelos de programacin secuenciales:

Usuarios
? Desarrolladores

de aplicaciones:

?Propsito: desarrollar aplicaciones. ?Usan los modelos de programacin (tanto

proveen abstracciones como subrutinas


?Modelos de programacin paralelo: threads,

variables de condicin, pase de mensajes, etc. ?No hay consenso sobre cul sera el modelo de programacin apropiado en GRID: Shared memory, message passing, RPC, orientacin por objeto, agentes.

secuencial como paralelo) y las herramientas ?Se preocupan por la facilidad de uso y el desempeo.

Usuarios
? Usuarios

Usuarios
? Administradores

finales :

del sistema:

?Propsito: resolver problemas ?Usan las aplicaciones (paquetes), que a su

?Propsito: administrar los recursos del

vez usan los recursos y servicios del GRID.


?Les importa la transparencia y el

desempeo.

metasistema (administracin distribuida) ?Entre los problemas que encuentran se tienen: manejar comunidades de usuarios, lograr un equilibrio entre las polticas locales y las necesidades del metasistema.

Usuarios
? Administradores

The Anatomy of the Grid


Enabling Scalable Virtual Organization

del sistema:

?Usan herramientas de administracin. ?Surgen nuevas actividades tales como:

monitoreo; establecer polticas en situaciones donde el conjunto de usuarios puede ser muy largo variando en forma dinmica; negociar polticas con otros sites y usuarios, mecanismos de accounting y pago, etc.

Autores : Ian Foster, Carl Kesselman y Steven Tuecke. 2001

GRIDS y Organizaciones Virtuales


? Permite compartir recursos en forma
?

GRIDS y Organizaciones Virtuales


El web cambi radicalmente la forma cmo se intercambiaba la informacin ? La tecnologa de GRID y en particular las organizaciones virtuales (VO) cambiarn radicalmente la forma cmo se resuelven los problemas. ? Las VO hacen posible la existencia de grupos diversos de organizaciones y/o individuos para compartir recursos en forma controlada , de forma tal que los miembros puedan colaborar para lograr una meta comn .

coordinada y controlada para resolver problemas en organizaciones multiinstitucionales dinmicas. ? Complementa las tecnologas existentes de computacin distribuida

GRIDS y Organizaciones Virtuales


?

GRIDS y Organizaciones Virtuales


? El compartir puede combinarse y se pueden

La comparticin de recursos es condicional: cada propietario coloca sus recursos a la disposicin de otros, sujeto a restricciones sobre dnde, cundo y qu se puede hacer. ? Puede variar dinmicamente en el tiempo. Esto implica que se necesitan mecanismos para descubrir y caracterizar la naturaleza de las relaciones que existen en un instante de tiempo en particular.

estar usando a la vez varios recursos pertenecientes a distintas organizaciones. ? El mismo recurso puede estarse usando de distintas formas por distintas organizaciones virtuales.

Arquitectura
?

Arquitectura
? Tambin se pueden construir APIs y

Se propone una arquitectura abierta basada en estndares. Esto facilita: extensibilidad, portabilidad, interoperabilidad, etc. ? Define protocolos que describen los mecanismos bsicos por medio de los cuales los usuarios de las VO establecen relaciones conducentes a compartir recursos (sharing relationships) ? Se definen servicios para abstraer detalles especficos de los recursos que se comparten.

Software Development Kits, los cuales proveen las abstracciones necesarias para construir aplicaciones complejas que usen el GRID. APIs y SDK pueden acelerar el desarrollo del cdigo, mejorar la portabilidad, el reuso del cdigo, etc.

10

Arquitectura
Application Collective Resource Connectivity Fabric

Arquitectura
Fabric (estructura, cimientos): Interfaces para el control local. ? En este nivel estn los recursos de acceso compartido: recursos de cmputo, de almacenamiento, de red, BD, sensores, etc. ? Un recurso puede ser una entidad lgica (un FS distribuido, un cluster de computadoras) o fsica. ? Este nivel implementa operaciones sobre recursos especficos. Dichas operaciones son el resultado de operaciones, para compartir recursos, que se invocan en niveles ms altos.

Arquitectura
Fabric (estructura, cimientos): Interfaces para el control local. ? De deben implementar como mnimo dos tipos de mecanismos: Consulta: permiten descubrir la estructura del recurso, su estado y capacidades (por ejemplo si pueden reservarse) Gestin del recurso : resto de operaciones que se pueden realizar sobre c/recurso en particular.

Arquitectura
Fabric (estructura, cimientos): Interfaces para el control local. ? Recursos de Cmputo:
Consulta: caractersticas de hw y sw, carga

actual, estado de la cola de procesos, etc.


Gestin: Iniciar programas, monitorear y

controlar la ejecucin de los procesos, mecanismos de reservacin.

11

Arquitectura
Fabric (estructura, cimientos): Interfaces para el control local. ? Recursos de Almacenamiento: Gestin: recuperar e introducir archivos, leer yo escribir partes del archivo, controlar la cantidad del recurso que es asignado a los datos (espacio, ancho de banda de la red, etc). Consulta: determinar las caractersticas de hw y sw, informacin relevante sobre la carga: espacio en disco disponible, utilizacin del ancho de banda, etc.

Arquitectura
Fabric (estructura, cimientos): Interfaces para el control local.
?

Recursos de Red: Gestin: proveen control sobre los recursos asignados a las transferencias a travs de la red (establecer prioridades, reservar, etc.) Consulta: caractersticas de la red y carga.

Arquitectura
?

Arquitectura
Connectivity ? Protocolos de comunicacin: facilitan el intercambio de los datos entre los recursos del nivel de estructura. ? Protocolos de autenticacin: proveen mecanismos seguros para verificar la identidad de los usuarios y los recursos.

Connectivity: define los protocolos de comunicacin y autenticacin que se requieren para las transacciones a travs de la red.

Application Collective Resource Connectivity Fabric

12

Arquitectura
Connectivity
?

Arquitectura
Connectivity
?

Protocolos de comunicacin: deben manejar transporte, routing, naming. Las alternativas existentes son utiles, pero no se descarta la creacin de protocolos en el futuro que se adapten mejor a la dinmica de la red. Entre las alternativas existentes tenemos: IP (Internet), TPC y UDP (transporte), DNS (Aplicacin), etc.

Protocolos que se encargan de la seguridad: muchos de los estndares existentes son de utilidad, no obstante se requieren de nuevas soluciones con las siguientes caractersticas:
Single sign on: Los usuarios debera hacer log on una

sola vez y luego tener acceso, sin intervenciones adicionales, a los mltiples recursos del GRID definidos en el nivel de estructura.

Arquitectura
Connectivity
Delegacin: un usuario debe ser capaz de dotar

Arquitectura
Connectivity
Integracin con varias soluciones locales de seguridad:

a un programa con derechos para que se ejecute en su nombre. El programa estar as en capacidad de utilizar recursos sobre los cuales el usuario tiene acceso autorizado. Opcionalmente, el programa podra delegar un subconjunto de tales derechos a otro programa.

Cada site o proveedor de recursos debe tener sus soluciones de seguridad local (kerberos, Unix). Las soluciones del GRID deben ser capaces de interoperar con estas soluciones. Relaciones basadas en la confianza: Si un usuario va a necesitar recursos de mltiples proveedores, el sistema de seguridad no debe exigir la interaccin o cooperacin de tales proveedores para configurar el sistema de seguridad.

13

Arquitectura
Resource: Manejo de recursos en forma individual. Se apoya en los protocolos del nivel anterior para definir protocolos (y APIs y SDKs) que permiten la negociacin segura, el monitoreo, control, contabilidad y pago de sharing operations. Ofrece operaciones sobre recursos en forma individual. Application Collective Resource Connectivity Fabric

Arquitectura
Resource
?

Invocan operaciones del nivel de estructura para acceder y controlar recursos en forma individual. ? Las operaciones de este nivel estn relacionadas con recursos de forma individual; ignoran aspectos tales como: estados globales, acciones atmicas, etc. El uso de los recursos como grupos forma parte del nivel Collective.

Arquitectura
Resource Se distinguen dos clases de protocolos: ? Protocolos de Informacin: se usan para obtener la estructura y el estado de los recursos. Ejem: configuracin, carga, poltica de uso. ? Protocolos de Gestin: permiten negociar el acceso a un recurso compartido especificando:
Requerimientos especiales: QoS, reservacin Las operaciones que sern efectuadas: creacin de

Arquitectura
Resource Los protocolos de gestin debe garantizar que se cumplan las polticas bajo las cuales se comparten los recursos (las operaciones que se efectuan sobre los recursos deben ser consistentes con tales polticas). Se deben considerar aspectos de contabilidad, pago, monitorear el status de una operacin, etc.

procesos, acceso a los datos, etc.

14

Arquitectura
Resource
? ?

Arquitectura
Collective: define los protocolos, APIs y SDKs, que no estn asociados con ningn recurso en particular sino que son de naturaleza global y capturan las interacciones entre conjuntos de recursos.
Application Collective Resource Connectivity Fabric

Los protocolos deben ofrecer al menos la misma funcionalidad que se ofrece en el nivel de estructura. A la lista de funcionalidades se agrega la semntica de al menos una vez para muchas operaciones, con un reporte de errores que indique cuando fallan las operaciones.

Arquitectura
Collective Implementan una amplia gama de sharing behaviors sin colocar requerimientos adicionales en los recursos que se comparten. Entre los servicios que se implementan se tienen:
? ? ?

Arquitectura
Collective ? Replicacin de datos ? Modelos de Programacin ? Software Discovery ? Community authorization servers ? Contabilidad y pago ? Servicios de colaboracin

Servicios de directorio Co-asignacin, scheduling, brokering services. Monitoreo y diagnstico

15

Arquitectura
Collective ? Servicios de directorio: permiten a los participantes de la VO descubrir la existencia y/o propiedades de los recursos. ? Co-asignacin, scheduling, ruptura (brokering services): permiten a los participantes solicitar uno o varios recursos para un propsito especfico. Permiten la planificacin de tareas en recursos adecuados. (AppleS, Condor- G) ? Monitoreo y diagnstico para detectar fallas, sobrecarga, ataques de seguridad, etc.

Arquitectura
Collective ? Replicacin de datos: se encargan de la administracin rplicas para mejorar el desempeo y la confiabilidad. ? Modelos de Programacin. ? Software Discovery: descubren y seleccionan la mejor implementacin de software y la mejor plataforma de ejecucin para el problema que se resuelve (Netsolve, Ninf)

Arquitectura
Collective ? Community authorization servers: hacen cumplir las polticas que gobiernan el acceso a los recursos. ? Contabilidad y pago: recogen informacin sobre el uso de recursos para propsitos de contabilidad, pagos y/o colocar lmites en el uso de recursos. ? Servicios de colaboracin: soportan el intercambio de informacin dentro de potencialmente grandes comunidades de usuarios, ya sea de forma sncrona o asncrona.

Arquitectura
Collective ? Los componentes o servicios de este nivel se pueden adaptar a los requerimientos de una comunidad de usuarios especfica o dominio de aplicacin. Tambin se pueden implementar servicios de un propsito ms general

16

Arquitectura
Aplicaciones
? ?

Otros Puntos de Vista


La Grid es la prxima generacin de Internet: No es una alternativa, es ms bien un conjunto de protocolos y servicios adicionales construidos sobre Internet, que soportan la creacin y uso de ambientes adecuados para el cmputo intensivo y para compartir datos. ? Es una fuente de ciclos ociosos: el GRID implica acceso controlado a los recursos. Se tienen polticas que restringen el acceso de acuerdo al grupo, tipo de pago, etc.

Se trata de las aplicaciones propias de las organizaciones virtuales. Se construyen invocando servicios de los niveles inferiores

Application Collective Resource Connectivity Fabric

Otros Puntos de Vista


?

Otros Puntos de Vista


? Requiere de nuevos modelos de

Requiere de un SOP distribuido: el software de GRID debe definir servicios tpicos de un SOP a instalarse en cada sistema participante. Estos servicios incluyen: serv. de nombres, seguridad, transparencia, etc.
Desde este punto de vista el papel del software de

GRID es definir una mquina virtual.


El modelo ms apropiado es un conjunto de protocolos

que ofrecen servicios. La gran heterogeneidad presente (fsica y administrativa) hace que la transparencia total no sea factible.

programacin: El GRID introduce grandes desafos (heterogeneidad, rendimiento, etc) que no se encuentran en computadores paralelos, pero el problema bsico de programacin es el mismo. Se pueden usar tcnicas clsicas de abstraccin, encapsulado, programacin por objetos. Pueden surgir otros modelos.

17

Otros Puntos de Vista


? Hace innecesaria la existencia de

supercomputadores: muchos problemas requieren todava de plataformas fuertemente acopladas, con latencias bajas y anchos de banda altos; el GRID puede aumentar las demandas a estos recursos haciendo ms fcil su acceso.

18

S-ar putea să vă placă și