Está en la página 1de 18

Contenido

? Conceptos de Metasistemas o GRIDS. Qué


ofrecen?
METASISTEMAS ? Desafíos
Una nueva técnica de computació n distribuida ? Razones que motivaron la creación de GRIDS
? Posibles aplicaciones
? Tipos de usuarios y su descripción
Prof. Yudith Cardinale y ? Arquitectura
Mariela Curiel
Sep – Dic 2002 ? Ejemplos

Metasistemas: qué es? Metasistema

IBM Compatible

? Otrostérminos usados: Computational Workstation


Laptop computer Token-ring

Grids, Metacomputación, Sistemas de Laptop Computer

Metacomputación Red

IBM Compatible

Ethernet

Laptop computer

Mac II
Laptop computer Metasistema

1
Metasistemas: qué es? Metasistemas: qué es?
? Ambientes que integran, a través de redes de ? Los GRIDS hecen posible el compartir c
alta velocidad recursos heterogéneos
complejos tales como: supercomputadores, recursos, en forma coordinada, dentro de
grandes bases de datos, etc. organizaciones dinámicas e
? Mecanismo para que los usuarios puedan usar interinstitucionales (organizaciones
recursos distribuidos geogr áficamente de virtuales).
forma transparente, creando la ilusión de un
? La infraestructura debe proveer alto
sistema de computación integrado. Esta ilusión
la provee el middleware. desempeño y alta disponibilidad

Metasistemas y SD Metasistemas: qué ofrecen?


? Colaboración más efectiva, agrupando co-
Como un SD los metasistemas deben integrar
investigadores en el mismo espacio virtual.
recursos de capacidades variadas,
conectados por redes no confiables,
? Incremento de la capacidad de cómputo local.
localizadas en dominios administrativos
distintos. No obstante, la necesidad de alto
? Productividad mejorada a través de un
rendimiento puede requerir de modelos de
ambiente de programación considerablemente
programación e interfaces radicalmente más simple.
diferentes,

2
Metasistemas: qué ofrece? Desafíos
? Ahorro, los recursos en cuestión pueden ? Escalabilidad: la idea es que soporten cientos,
ser muy costosos. miles e incluso millones de máquinas. Estas
máquinas se conectan a través de Internet (alta
? Espacio de objetos (Archivos) latencia y bajo throughput)
persistentes compartido. ? Facilidad de Uso: debe ser fácil agregar una nueva
máquina al conjunto. Facilidad del desarrollo de
? Ejecución remota transparente. aplicaciones.
? Tiempos de Ejecución: Problemas que toman
tiempo en resolverse (horas meses o años); hacen
falta mecanismos de checkpoiting para asegurar
que se pierda la mínima cantidad de trabajo en
caso de fallas.

Razones que motivaron su


Desafíos
creación
? Paralelismo Adaptativo: el conjunto de máquinas ? Los datos presentan un gran desafío:
crece y decrece durante la ejecución de una – Los detectores del Laboratorio Europeo de
aplicación. El metasistema debe ser capaz de Partículas Físicas, producirán para el año 2005
reasignar trabajos. varios petabytes de datos por año, un millon de
? Heterogeneidad: involucra múltiples arquitecturas. veces la capacidad de un computador de
? Seguridad: No existe un administrador único para escritorio promedio.
manejar todos los nodos participantes. Los – Analizar estos datos pudiera requerir de
oferentes necesitan garantías de que no se alrededor de 20 teraflops/seg de poder
permitirán accesos no autorizados a sus máquinas. computacional. Hoy en día el supercomputador
? Disponibilidad y alto rendimiento más rápido ofrece 3 teraflops/seg.

3
Razones que motivaron su Razones que motivaron su
creación creación
? Supercomputadores ? Clusters
? Clusters – El sistema ASCI White costó 110 millones de
– Surgen en 1980 dolares y necesitó de un nuevo edificio.
– Los más rápidos son 8000 procesadores (ASCI White ? Computación en Internet
System) en el laboratorio nacional Lawrence
Levermore. – Existen alrededor de 400 millones de PC´s en el
– Ofrecen una mejora considerable en poder de cómputo, mundo, muchas tan poderosas como los
pero es un conjunto de computadores dedicados, supercomputadores de los 90.
ubicados en un solo lugar.
– La mayoría de estos PC´s tienen mucho tiempo
– Existen razones financieras y técnicas que imponen
ocioso.
límites a cúan grandes deben ser estos sistemas.

Razones que motivaron su Razones que motivaron su


creación creación
? Computación en Internet ? Computación en Internet
– La computación en Internet busca explotar los – En 1997 apareció Entropía (Scott Kurowski).
ciclos ociosos de workstations y PC´s de modo Usa ciclos ociosos de computadores, alrededor
de crear un sistema poderoso de computación del mundo, para resolver problemas de interés
distribuida. científico. En 2 años creció hasta llegar a 30000
– En 1985 Miron Livny mostró que la mayoría de computadoras que proveen una rapidez de
las estaciones de trabajo permanecian ociosas y cómputo por encima de un teraflop/seg.
propuso el sistema Condor para utilizar ciclos Usando este sistema se identificó el número
libres de CPU. Es efectivo a pequeña escala: primo más grande hasta ahora conocido.
Universidades.

4
Razones que motivaron su Razones que motivaron su
creación creación
? Computación en Internet ? Computational GRIDS [Foster y Kesselman,
– El próximo paso lo representa David Anderson 1998]:
con su proyecto SETI@home. Los ciclos – La computación en Internet es sólo un caso especial de
algo mucho más poderoso: la necesidad de distintas
ociosos se utilizan para analizar datos del
organizaciones (ambito científico) que buscan metas
telescopio de ARECIBO buscando signos que comunes de compartir recursos.
indiquen la presencia de inteligencia – El web y el correo electrónico ofrecen mecanismos
extraterrestre. Abarca alrededor del millon de básicos que permiten a estos grupos trabajar juntos.
PC´s. – Lo ideal es agrupar datos, computadores, sensores y
otros recursos en un único laboratorio virtual.

Razones que motivaron su


Aplicaciones
creación
? Computational GRIDS ? Supercomputación distribuida: usan las
– La tecnología GRID persigue este propósito,
GRIDS para agrupar recursos que
ofreciendo protocolos, servicios y kits para el
desarrollo de software, necesarios para crear un permitan resolver problemas que no
ambiente que permita compartir recursos a gran pueden ser resueltos por un solo
escala. computador. Ejemplos: simulación
– Los primeros conceptos se exploraron en 1995
interactiva distribuida (entrenamiento y
(experimento I-WAY): se usaron redes de alta
velocidad para conectar 17 sites en Norteamerica. planificación militar), simulación de
– Hoy en día existen muchos proyectos de procesos físicos complejos (cosmología,
Investigación encargados de desarrollar las modelamiento del clima,etc.)
tecnologías para crear GRIDS en varias
comunidades y disciplinas científicas.

5
Aplicaciones Aplicaciones
? High-Throughput computing: la idea es ? Computación por demanda: satisfacen
planificar un gran número de tareas requerimientos de recursos a corto plazo.
independientes o débilmente acopladas (poca Se trata de recursos a los que no se tiene
sincronización) para aprovechar ciclos de
CPUs ociosos. La naturaleza independiente de acceso de manera local. Entre los
las tareas conduce a diferentes métodos para recursos tenemos: BD, sensores,
resolver el problema. Ejem: Problemas de software, cómputo. Ejem: NEOS y
criptografía, se uso durante la etapa crucial en NetSolve, envían a servidores remotos
el diseño de los procesadores K6 y K7, cálculos que necesitan mucho poder de
CONDOR. cómputo o un software especializado.

Aplicaciones Aplicaciones
? Computación con un manejo intensivo de ? Computación colaborativa: permite
datos: sintetizan información a partir de interacción hombre-hombre,
datos en repositorios distribuidos, generalmente las aplicaciones están
librerías digitales y bases de datos. El estructuradas en términos de un espacio
proceso de síntesis es intensivo desde el
punto de vista computacional y virtual compartido.
comunicacional.
Ejem: Experimentos Físicos, Fotografías
Astronómicas.

6
Usuarios Usuarios

? Desarrolladores :
Usuarios finales ?Propósito: diseñar e implementar los
Desarrolladores de aplicaciones servicios básicos (protocolo del
metasistema).
Desarrolladores de herramientas
?Usan los servicios de los sistemas locales.
Desarrolladores del metasistema
?Se preocupan por la simplicidad local, la
conectividad y la seguridad.
Administradores del sistema

Usuarios Usuarios

? Desarrolladores de herramientas : ? Desarrolladores de herramientas :


?Propósito: implementar herramientas, ?Ejem: Netsolve, MPI
compiladores, librerías, etc. que ? Los desarrolladores de herramientas deben
implementan los modelos de programación usar los servicios básicos para programar
y servicios usados por los desarrolladores de implementaciones eficientes de modelos de
aplicaciones. programación que utilizarán los
?Usan los servicios del metasistema programadores de aplicaciones.
?Se preocupan por la adaptabilidad, el
desempeño y la seguridad

7
Usuarios Usuarios
? Desarrolladores de herramientas : ? Desarrolladores de aplicaciones:
?Modelos de programación secuenciales: ?Propósito: desarrollar aplicaciones.
proveen abstracciones como subrutinas
?Usan los modelos de programación (tanto
?Modelos de programación paralelo: threads,
secuencial como paralelo) y las
variables de condición, pase de mensajes,
etc. herramientas
?No hay consenso sobre cuál sería el modelo ?Se preocupan por la facilidad de uso y el
de programación apropiado en GRID: desempeño.
Shared memory, message passing, RPC,
orientación por objeto, agentes.

Usuarios Usuarios

? Usuarios finales : ? Administradores del sistema:


?Propósito: resolver problemas ?Propósito: administrar los recursos del
?Usan las aplicaciones (paquetes), que a su metasistema (administración distribuida)
vez usan los recursos y servicios del GRID. ?Entre los problemas que encuentran se
?Les importa la transparencia y el tienen: manejar comunidades de usuarios,
desempeño. lograr un equilibrio entre las políticas
locales y las necesidades del metasistema.

8
Usuarios The Anatomy of the Grid
Enabling Scalable Virtual Organization
? Administradores del sistema:
?Usan herramientas de administración.
?Surgen nuevas actividades tales como:
monitoreo; establecer políticas en Autores : Ian Foster, Carl Kesselman
situaciones donde el conjunto de usuarios y Steven Tuecke.
puede ser muy largo variando en forma 2001
dinámica; negociar políticas con otros sites
y usuarios, mecanismos de accounting y
pago, etc.

GRIDS y Organizaciones GRIDS y Organizaciones


Virtuales Virtuales
? Permite compartir recursos en forma ? El web cambió radicalmente la forma cómo se
intercambiaba la información
coordinada y controlada para resolver
? La tecnología de GRID y en particular las
problemas en organizaciones multi- organizaciones virtuales (VO) cambiarán
institucionales dinámicas. radicalmente la forma cómo se resuelven los
? Complementa las tecnologías existentes de problemas.
computación distribuida ? 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 común .

9
GRIDS y Organizaciones GRIDS y Organizaciones
Virtuales Virtuales
? La compartición de recursos es condicional: cada ? El compartir puede combinarse y se pueden
propietario coloca sus recursos a la disposición de estar usando a la vez varios recursos
otros, sujeto a restricciones sobre dónde, cuándo y
pertenecientes a distintas organizaciones.
qué se puede hacer.
? Puede variar dinámicamente en el tiempo. Esto
? El mismo recurso puede estarse usando de
implica que se necesitan mecanismos para distintas formas por distintas organizaciones
¨descubrir¨ y caracterizar la naturaleza de las virtuales.
relaciones que existen en un instante de tiempo en
particular.

Arquitectura Arquitectura
? Se propone una arquitectura abierta basada en ? También se pueden construir APIs y
estándares. Esto facilita: extensibilidad, Software Development Kits, los cuales
portabilidad, interoperabilidad, etc.
proveen las abstracciones necesarias para
? Define protocolos que describen los mecanismos
construir aplicaciones complejas que usen el
básicos por medio de los cuales los usuarios de
GRID. APIs y SDK pueden acelerar el
las VO establecen relaciones conducentes a
compartir recursos (sharing relationships) desarrollo del código, mejorar la
? Se definen servicios para abstraer detalles
portabilidad, el reuso del código, etc.
específicos de los recursos que se comparten.

10
Arquitectura Arquitectura
Fabric (estructura, cimientos): Interfaces para el
Application control local.
? En este nivel están los recursos de acceso
Collective compartido: recursos de cómputo, de
almacenamiento, de red, BD, sensores, etc.
Resource ? Un recurso puede ser una entidad lógica (un FS
distribuido, un cluster de computadoras) o física.
Connectivity ? Este nivel implementa operaciones sobre recursos
específicos. Dichas operaciones son el resultado
Fabric de operaciones, para compartir recursos, que se
invocan en niveles más altos.

Arquitectura Arquitectura
Fabric (estructura, cimientos): Interfaces para el Fabric (estructura, cimientos): Interfaces
control local.
para el control local.
? De deben implementar como mínimo dos tipos de
mecanismos: ? Recursos de Cómputo:
– Consulta: permiten descubrir la estructura del – Consulta: características de hw y sw, carga
recurso, su estado y capacidades (por ejemplo si actual, estado de la cola de procesos, etc.
pueden reservarse) – Gestión: Iniciar programas, monitorear y
– Gestión del recurso : resto de operaciones que controlar la ejecución de los procesos,
se pueden realizar sobre c/recurso en particular. mecanismos de reservación.

11
Arquitectura Arquitectura
Fabric (estructura, cimientos): Interfaces para el Fabric (estructura, cimientos): Interfaces para el
control local. control local.
? Recursos de Almacenamiento: ? Recursos de Red:
– Gestión: recuperar e introducir archivos, leer y- – Gestión: proveen control sobre los recursos
o escribir partes del archivo, controlar la
asignados a las transferencias a través de la red
cantidad del recurso que es asignado a los datos
(espacio, ancho de banda de la red, etc). (establecer prioridades, reservar, etc.)
– Consulta: determinar las características de hw y – Consulta: características de la red y carga.
sw, información relevante sobre la carga:
espacio en disco disponible, utilización del
ancho de banda, etc.

Arquitectura Arquitectura
? Connectivity: define Application Connectivity
los protocolos de
? Protocolos de comunicación: facilitan el
comunicación y Collective
autenticación que se intercambio de los datos entre los recursos
requieren para las del nivel de estructura.
Resource
transacciones a través ? Protocolos de autenticación: proveen
de la red. Connectivity mecanismos seguros para verificar la
Fabric
identidad de los usuarios y los recursos.

12
Arquitectura Arquitectura
Connectivity Connectivity
? Protocolos de comunicación: deben manejar ? Protocolos que se encargan de la seguridad:
transporte, routing, naming. Las alternativas muchos de los estándares existentes son de
existentes son utiles, pero no se descarta la utilidad, no obstante se requieren de nuevas
creación de protocolos en el futuro que se adapten soluciones con las siguientes características:
mejor a la dinámica de la red. Entre las – Single sign on: Los usuarios debería ¨hacer log on¨ una
alternativas existentes tenemos: IP (Internet), TPC sola vez y luego tener acceso, sin intervenciones
y UDP (transporte), DNS (Aplicación), etc. adicionales, a los múltiples recursos del GRID
definidos en el nivel de estructura.

Arquitectura Arquitectura
Connectivity Connectivity
– Integración con varias soluciones locales de seguridad:
– Delegación: un usuario debe ser capaz de dotar Cada site o proveedor de recursos debe tener sus
a un programa con derechos para que se ejecute soluciones de seguridad local (kerberos, Unix). Las
en su nombre. El programa estará así en soluciones del GRID deben ser capaces de interoperar
con estas soluciones.
capacidad de utilizar recursos sobre los cuales
– Relaciones basadas en la confianza: Si un usuario va a
el usuario tiene acceso autorizado. necesitar recursos de múltiples proveedores, el sistema
Opcionalmente, el programa podría delegar un de seguridad no debe exigir la interacción o
subconjunto de tales derechos a otro programa. cooperación de tales proveedores para configurar el
sistema de seguridad.

13
Arquitectura Arquitectura
Resource: Manejo de recursos Resource
en forma individual. Application
? Invocan operaciones del nivel de estructura para
Se apoya en los protocolos del
nivel anterior para definir Collective acceder y controlar recursos en forma individual.
protocolos (y APIs y SDKs) ? Las operaciones de este nivel están relacionadas
que permiten la negociación
segura, el monitoreo, con recursos de forma individual; ignoran aspectos
Resource
control, contabilidad y pago tales como: estados globales, acciones atómicas,
de sharing operations. etc. El uso de los recursos como grupos forma
Ofrece operaciones sobre Connectivity
recursos en forma individual. parte del nivel Collective.
Fabric

Arquitectura Arquitectura
Resource Resource
Se distinguen dos clases de protocolos:
Los protocolos de gestión debe garantizar que
? Protocolos de Información: se usan para obtener la
estructura y el estado de los recursos. Ejem:
se cumplan las políticas bajo las cuales se
configuración, carga, política de uso. comparten los recursos (las operaciones que
? Protocolos de Gestión: permiten negociar el se efectuan sobre los recursos deben ser
acceso a un recurso compartido especificando: consistentes con tales políticas). Se deben
– Requerimientos especiales: QoS, reservación considerar aspectos de contabilidad, pago,
– Las operaciones que serán efectuadas: creación de
procesos, acceso a los datos, etc. monitorear el status de una operación, etc.

14
Arquitectura Arquitectura
Resource ? Collective: define los Application
? Los protocolos deben ofrecer al menos la misma protocolos, APIs y
SDKs, que no están Collective
funcionalidad que se ofrece en el nivel de
asociados con ningún
estructura.
recurso en particular
? A la lista de funcionalidades se agrega la sino que son de Resource
semántica de ¨al menos una vez¨ para muchas naturaleza global y
capturan las Connectivity
operaciones, con un reporte de errores que indique
cuando fallan las operaciones. interacciones entre
conjuntos de recursos. Fabric

Arquitectura Arquitectura
Collective Collective
Implementan una amplia gama de sharing behaviors ? Replicación de datos
sin colocar requerimientos adicionales en los
recursos que se comparten. Entre los servicios que ? Modelos de Programación
se implementan se tienen: ? Software Discovery
? Servicios de directorio ? Community authorization servers
? Co-asignación, scheduling, brokering services.
? Contabilidad y pago
? Monitoreo y diagnóstico
? Servicios de colaboración

15
Arquitectura Arquitectura
Collective Collective
? Servicios de directorio: permiten a los ? Replicación de datos: se encargan de la
participantes de la VO descubrir la existencia y/o administración réplicas para mejorar el desempeño
propiedades de los recursos. y la confiabilidad.
? Co-asignación, scheduling, ruptura (brokering ? Modelos de Programación.
services): permiten a los participantes solicitar uno ? Software Discovery: descubren y seleccionan la
o varios recursos para un propósito específico. mejor implementación de software y la mejor
Permiten la planificación de tareas en recursos plataforma de ejecución para el problema que se
adecuados. (AppleS, Condor- G) resuelve (Netsolve, Ninf)
? Monitoreo y diagnóstico para detectar fallas,
sobrecarga, ataques de seguridad, etc.

Arquitectura Arquitectura
Collective Collective
? Community authorization servers: hacen cumplir
? Los componentes o servicios de este nivel
las políticas que gobiernan el acceso a los
recursos. se pueden adaptar a los requerimientos de
? Contabilidad y pago: recogen información sobre el una comunidad de usuarios específica o
uso de recursos para propósitos de contabilidad, dominio de aplicación. También se pueden
pagos y/o colocar límites en el uso de recursos. implementar servicios de un propósito más
? Servicios de colaboración: soportan el intercambio
general
de información dentro de potencialmente grandes
comunidades de usuarios, ya sea de forma
síncrona o asíncrona.

16
Arquitectura Otros Puntos de Vista
Aplicaciones ? La Grid es la próxima generación de Internet: No
Application es una alternativa, es más bien un conjunto de
? Se trata de las
protocolos y servicios adicionales construidos
aplicaciones propias Collective sobre Internet, que soportan la creación y uso de
de las organizaciones
ambientes adecuados para el cómputo intensivo y
virtuales. para compartir datos.
Resource
? Se construyen ? Es una fuente de ciclos ociosos: el GRID implica
invocando servicios Connectivity acceso controlado a los recursos. Se tienen
de los niveles políticas que restringen el acceso de acuerdo al
inferiores Fabric grupo, tipo de pago, etc.

Otros Puntos de Vista Otros Puntos de Vista


? Requiere de un SOP distribuido: el software de ? Requiere de nuevos modelos de
GRID debe definir servicios típicos de un SOP a programación: El GRID introduce grandes
instalarse en cada sistema participante. Estos desafíos (heterogeneidad, rendimiento, etc)
servicios incluyen: serv. de nombres, seguridad,
que no se encuentran en computadores
transparencia, etc.
– Desde este punto de vista el papel del software de
paralelos, pero el problema básico de
GRID es definir una máquina virtual. programación es el mismo. Se pueden usar
– El modelo más apropiado es un conjunto de protocolos técnicas clásicas de abstracción,
que ofrecen servicios. La gran heterogeneidad presente encapsulado, programación por objetos.
(física y administrativa) hace que la transparencia total
no sea factible. Pueden surgir otros modelos.

17
Otros Puntos de Vista
? Hace innecesaria la existencia de
supercomputadores: muchos problemas
requieren todavía de plataformas
fuertemente acopladas, con latencias bajas
y anchos de banda altos; el GRID puede
aumentar las demandas a estos recursos
haciendo más fácil su acceso.

18

También podría gustarte