Upload
quique-criado
View
2
Download
0
Embed Size (px)
Citation preview
Computación Grid
Herbert [email protected]
*Centro de Cálculo Científico*Universidad de Los Andes
*EELA-2
CLCAR 2009Mérida - Venezuela
21 de septiembre de 2009
2
Conceptos Preliminares
Supercomputación: Fue definida para hacer referencia a computadoras con capacidades muy superiores a las de otras máquinas disponibles.
Sistemas típicos: DEC VAX: 1-10 Mflops
(nada en el medio → performance gap)
Supercomputadoras: Crays, CDCs: ~100 Mflops
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009
3
Conceptos Preliminares
Hoy en día la distinción ya no es clara (¡tabla hasta 1990!).
10
1
100
1000
1965 1970 1975 1980 1985 1990
Supercomputadores
Mainframes
Minicomputadores
Microprocesadores
Eficiencia
MF
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009
4
Conceptos Preliminares
Computación de Alto Rendimiento: Es aquella que proporciona un mayor capacidad de cómputo que la que se puede obtener de computadores individuales.
•Sistemas de memoria compartida.
•Sistemas distribuidos.
•Clusters.
→ Máquinas paralelas
En inglés: High Performance Computing o HPC.
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009
5
Computación Paralela: Es la utilización de múltiples procesadores para resolver una tarea común.
Se divide el problema es trozos más pequeños y se asignan a diferentes procesadores.
Conceptos Preliminares
... ...
...CPUs
Mecanismo de switches o bus
Bancos deMemoria
Dispositivos deEntrada/Salida
Memoria Compartida
...Mecanismo de enrutamiento
Memorias Locales
CPUs
Memoria Distribuida
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009
6
Usamos computación paralela ya que…
Los monoprocesadores limitan:
•El rendimiento.
•La memoria disponible.
La máquinas paralelas permiten:
•Resolver problemas más grandes.
•Resolver problemas más rápido.
•Resolver más problemas.
•Hoy en día HPC es prácticamente computación paralela.
Ejemplo: modelado y predicción climática.
Conceptos Preliminares
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009
7
Computación Distribuida: Es la utilización de múltiples sistemas, de alguna forma organizada, para trabajar en un objetivo común.
Conceptos Preliminares
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009
8
Computación Distribuida
•Requiere software para la coordinación de recursos y tareas.
•Computación paralela / HPC es computación distribuida.
•Computación Grid es computación distribuida.
Conceptos Preliminares
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009
9
Sistemas Operativos Distribuidos – Características
Transparencia: Provee la visión de una sola máquina
(máquina virtual)•Acceso: a recursos remotos igual que a locales.
•Ubicación:
•Independencia de nombre – ubicación.
•Independencia de máquina – recurso.
•Replicación: Las replicaciones mejoran el rendimiento y la disponibilidad – el uso, nombre y control de replicas debe ser transparente.
Conceptos Preliminares
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009
10
•Migración: por rendimiento, seguridad y disponibilidad, los objetos (procesos y/o datos) pueden migrar.
•Concurrencia: cada usuario tiene la impresión de ser el único usuario – así existan muchos.
•Escalabilidad: el sistema puede “crecer” sin afectar las actividades de los usuarios.
•Heterogeneidad: Soportar diferentes tipos de hardware y software.
•Seguridad: Protección contra destrucción y usos no autorizados.
Conceptos Preliminares
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 11
•Disponibilidad: debe operar todo el tiempo aún bajo fallas (quizás con cierta degradación).
•Evitar fallas: usar componentes de calidad.
•Tolerar fallas: redundancia de componentes
•Detectar y recuperar fallas: usar hardware y software para descubrir y reparar fallas.
•Flexibilidad: Facilidad para reemplazar, modificar o agregar componentes.
•Rendimiento: Las aplicaciones deben correr mejor (o al menos igual) que en monoprocesadores.
Conceptos Preliminares
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 12
•Los objetivos generales son los mismos que vimos para sistemas operativos distribuidos pero a un nivel superior.
•Debe operar con distintos sistemas operativos.
Computación Grid
GridMiddleware
Linux A Solaris AIX HPUX IRIX Windows Linux B Mac OS AIX
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 13
Computación Grid es computación distribuida llevada a un nivel multi-organizacional / multi-sistemas.
Computación Grid
Dpto.
Dpto.
Dpto.
Organización
Dpto.
Dpto.
Dpto.
Organización
Dpto.
Dpto.
Dpto.
Organización
Dpto.
Dpto.
Dpto.
Organización
Son muchos sistemas locales, manejados por otras personas/organizaciones, cooperando.
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 14
Computación Grid
• Hoy en día tenemos:– Conectividad global a través de Internet.
– Disponibilidad y confiabilidad en el ancho de banda.
– La velocidad de las redes se duplica cada 9 meses.
15
Computación Grid
Usar Internet como unaplataforma de servicios de
computación y no solo como una fuente de
información.
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 16
Aplicaciones
Grid Middleware
Recursos
Computación Grid
Características
• Manejo de Recursos• Balanceo de cargas• Manejo de Fallas• Monitoreo• Garantizar el
rendimiento• Detección de intrusos• Escalabilidad, etc
• Autentificación• Políticas de
Autorización• Descubrimiento de
recursos• Ubicación de recursos• Acceso a data remota• Alta velocidad de
transferencia de data
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 17
Un Grid debe prestar servicios en forma:
• Extendida: muchos recursos en muchos lugares• Constante: 365 días x 24 horas• Confiable: utilización de canales seguros• Simple: fácil de usar• Transparente: no importa donde se almacenan los datos o donde se ejecutan los programas.• Económica: utiliza los recursos actuales y es sencillo adicionar nuevos recursos.
Más Propiedades del Grid
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 18
Cluster vs. Grid
CLUSTER
• Equipos homogéneos.
• Sistema operativo único.
• Administración y manejo centralizado - única.
• Equipos están concentrados.
• Objetivo: mejorar el rendimiento dedicando más recursos.
GRID
• Equipos heterogéneos.
• Múltiples sistemas operativos.
• Administración y manejo descentralizado – multidominio
• Equipos están dispersos.
• Objetivo: mejorar el rendimiento compartiendo recursos sub-utilizados en otras partes.
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 19
Cluster
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 20
Grid
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 21
Cloud vs. Grid
CLOUD
• Foco: Comercial – Servicio.
• Muchos basados en grids.
• Fáciles de usar.
• Compartir no es objetivo. No colaborativo.
• Los usuarios no posen la infraestructura: no inviertas en recursos, alquílalos.
GRID
• Foco: HPC.
• Más complicados de usar.
• Compartir recursos, datos, conocimiento y trabajo (a través de VO - Virtual Organizations).
• Los usuarios aportan a la infraestructura: comparte/aporta recursos y podrás tener muchos más de lo que podrías adquirir por tu cuenta
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 22
Tipos de Grid
Grid Computacional: Dedicadas al procesamiento de datos y cómputos intensivos aprovechando la capacidad ociosa de las diferentes máquinas del Grid.
Grid de Datos: Proporciona una interfaz integrada para manejar grandes volúmenes de datos almacenados en diferentes repositorios.
Grid Híbridas: Tienen características de las dos anteriores.
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 23
Analogía
• Grid (en inglés) ~ red eléctrica.
• Grid de Computo ~ red de recursos y servicios de computación.
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 24
EL CERN (Centro Europeo de Investigaciones Nucleares)
• Esta a la vanguardia en tecnología de redes.
• Su lema: “where the web was born”
• Lidera algunos de los proyectos en Grid más ambiciosos del mundo.
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 25
CERN - LHC: Large Hadron Collider
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 26
CERN - LHC: Large Hadron Collider
63.6 Km
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 27
CERN - LHC: Large Hadron Collider
63.6 Km
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 28
CERN - LHC: Large Hadron Collider
63.6 Km
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 29
CERN: Large Hadron Collider
• Instrumento científico más grande del mundo.
• Los datos son una mina de oro para físicos alrededor del mundo.
• Descubrir partículas fundamentales de la materia.
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 30
CERN
• Generará unos 10 Petabyte/año.
• Kilobyte KB 103 (o 210) • Megabyte MB 106 (o 220) • Gigabyte GB 109 (o 230) • Terabyte TB 1012 (o 240) • Petabyte PB 1015 (o 250) • Exabyte EB 1018 (o 260) • Zettabyte ZB 1021 (o 270) • Yottabyte YB 1024 (o 280)
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 31
CERN
• 1 CD → 700 MB• 10 PB → 14.285.714 CDs• 7 CDs → 1 cm• 10 PB → 20,4 Kms de CDs
– 1 DVD → 6,7 CDs– 3 Kms de DVDs
Suponiendo los CDs o DVDs llenos!
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 32
CERN
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 33
CERN
• La solución posible para manejar/procesar esta enorme cantidad de información parece ser la computación Grid.
• Comentario de William Gropp: Con la computación Grid hay un fenómeno particular, la necesidad surgió antes que la tecnología.
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 34
CERN
• El problema no es solo el manejo de datos.
• Se estima que son necesarios unos 100.000 PCs actuales para analizar estos datos.
• Al pasar los años, la data se acumula!
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 35
LHC Computing Grid
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 36
Estándares
Si distintas organizaciones deciden implementar un Grid, es muy probable que cuenten con plataformas diferentes.
Se hace necesario la utilización de estándares para coordinar eficazmente los recursos a compartir.
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 37
Estándares
Se ha definido y se esta actualizando un estándar para las tecnologías Grid:
Open Grid Services Architecture (OGSA)
Este se enfoca en la integración de servicios a través de organizaciones virtuales distribuidas, heterogéneas y dinámicas, para obtener servicios de calidad utilizando diferentes plataformas.
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 38
Estándares
OGSA es el producto de personas que pertenecen a más de 60 compañías e instituciones de investigación, congregadas en una comunidad virtual de usuarios y desarrolladores denominada
Global Grid Forum (GGF)
http://www.ggf.org
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 39
Servicios especificados en OGSA
• Servicios de infraestructura: Proporcionan la comunicación entre diferentes plataformas.
• Servicios de gestión de recursos: Supervisión, reservación, configuración, etc.
• Servicios de contexto: describen los requerimientos de recursos y las políticas de utilización del Grid.
• Servicios de información: proporciona información sobre el Grid y sus recursos, su estado y disponibilidad de un determinado recurso.
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 40
Servicios especificados en OGSA
• Servicios de autogestión: automatizar procesos para reducir costos de administración.
• Servicios de Datos: Proporciona el movimiento de los datos al lugar donde se necesiten.
• Servicios de Seguridad.
• Servicios de gestión de ejecución: administración de tareas, flujo de procesos.
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 41
Estructura de OGSA
Servidores
Seguridad
Almacenamiento Redes
Procesa-miento
Bases deDatos
SistemasDe
ArchivosDirectorios
Envío deMensajes
Web Services
WSRF (Globus Toolkit)
OGSA
Aplicaciones
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 42
Componentes de OGSA
Open Grid Services Architecture se fundamenta en dos tecnologías
•Globus Toolkit
•Web Services
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 43
Globus Toolkit
Globus Toolkit es un conjunto de bibliotecas de software de arquitectura abierta y open source que soporta aplicaciones Grid
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 44
Globus Toolkit se encarga de la gestión de:
• Seguridad
• Descubrimiento de la información
• Administración de los recursos compartidos
• Administración de los datos
• La comunicación
• Detección de fallas
• Portatibilidad
Globus Toolkit
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 45
Globus Toolkit
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 46
Los componentes más relevantes Globus Toolkit que soportan al OGSA son:
GRAM: Grid Resources Allocation and Management
MDS: Meta Directory Service
GSI: Grid Security Infrastructure
Globus Toolkit
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 47
GRAM Proporciona la administración y creación remota de procesos en forma segura y confiable
Globus Toolkit
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 48
MDS Proporciona un marco uniforme para el descubrimiento y acceso a la configuración de sistemas.
Supervisa el estado de los sistemas de cómputo, la disponibilidad de las redes y localización de conjuntos de datos.
Globus Toolkit
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 49
GSI Se basa en PKI (certificados X.509) y proporciona servicios de autenticación única, protección en las comunicaciones y soporte inicial en la “delegación”.
Este último término se refiere a delegar las credenciales del usuario de forma restringida a los proxy para que solicite servicios en nombre del usuario.
Globus Toolkit
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 50
Cactus Code
Algunas Entidades que Trabajan en Grid
Herbert Hoeger - San José - Costa Rica - 27 de mayo de 2009 51
Finalmente…
• Que los recursos estén disponibles en cualquier lugar, en cualquier momento, en forma confiable y segura, que la ubicación de los procesos y datos sea transparente al usuario, y que el Grid sea fácil de usar, son metas en las que aún se trabaja arduamente.
• La implementación, operación y mantenimiento de un Grid no es fácil, pero el software esta madurando rápidamente.