15
1 GRID Emely Arráiz Por qué Grid? Cambios fundamentales en los tipos de problemas que necesitan ser resueltos. Muchas de las aplicaciones son de naturaleza multidiciplinaria. Se requiere de grupos de investigadores colaborando desde localidades remotas. Muchas de las aplicaciones necesitan recursos distribuidos . Instrumentos remotos, supercomputadores, bases de datos. Que es una GRID? Es un tipo de sistema paralelo y distribuido que permite: compartir seleccionar añadir recursos distribuidos a través de múltiples dominios administrativos. Basados en requerimientos de: disponibilidad capacidad desempeño costo y calidad de servicio

Por qué Grid? - ldc.usb.vemcuriel/Cursos/sop3/gridEmely.pdf · Tools basicos de la Grid Security Resource Allocation & Scheduling Data locality System Management ... QoS Development

  • Upload
    dangtu

  • View
    215

  • Download
    0

Embed Size (px)

Citation preview

1

GRID

Emely Arráiz

Por qué Grid?

Cambios fundamentales en los tipos de problemasque necesitan ser resueltos.

Muchas de las aplicaciones son de naturaleza multidiciplinaria.

Se requiere de grupos de investigadores colaborando desde localidades remotas.

Muchas de las aplicaciones necesitan recursos distribuidos .

Instrumentos remotos, supercomputadores, bases de datos.

Que es una GRID?Es un tipo de sistema paralelo y distribuido que permite:

compartir seleccionar añadir

recursos distribuidos a través de múltiples dominios administrativos.Basados en requerimientos de:

disponibilidad capacidad desempeñocosto y calidad de servicio

2

Que es una GRID?

Recursos compartidos y resolución coordinada de problemas de organizaciones virtuales multi-institucionales.

Permite, mantiene y controla, los recursos compartidos para alcanzar una meta común

Conduce soluciones integradas que facilitan la colaboración virtual.

Máximizando la interoperabilidad a través de construcción de estandar

La computación en GRID

- Unificación de los recursos geográficamente distribuidos

Campos de AplicaciónSupercomputación• Simulaciones• Cálculo Numérico• Análisis de datos

Sistemas distribuidos a tiempo real• Medicina

Procesos intensivos de datos• B.D. Distribuidas

Servicios puntualesAcceder a distancia hardware específicos

3

Ejemplos de AplicacionesDiseños e ingeniería aereo-espaciales.Visualización científica del clima y análisis de los

terabyte datos de una simulación.Ingenieros de compañias multinacionales colaborando sobre el diseño de un nuevo producto. Empresa configurando recursos internos y externos para soportar la carga de trabajo para eBusiness. Bioquimica explotando 10,000 computadoras.Físicos en el mundo necesitando recursos para procesar peta-op y analizar petabytes de datos.

Heterogeneous resources, users, apps

Varies: different resources, users, time

Cost / Price

HeterogeneousQoS requirements

Heterogeneous & decentralised

Policies and strategies

Varies with timeResource Availability/Capability

Geographically Distributed

Users, Resources, Owners

CharacteristicsEntities/Issues

Caracteristica Grid y desafios

* Resource Management* Application Construction

challenges

share accessto high-performancecomputer systems

share accessto high-performancecomputer systems

Compute Compute gridsgrids

share accessto databases

and files systems

share accessto databases

and files systems

Data Data gridsgrids

share access toapplication software

and computingresources

share access toapplication software

and computingresources

Services or Services or utility gridsutility grids

Tipos de Grid

4

Organización de las máquinasTipos:

Flat : las máquinas se comunican directamente unas conotras, sin pasar a través de intermediarios.

Celdas : máquinas organizadas por celdas. Dentro de unaestructura de celda las máquins se comunican usando alguna organización. Se tienen máquinas

designadas que actuan como elementos boundary, responsable de la comunicación fuera de la celda. Su estructura interna no es visible a otras celdas.

Jerárquico : máquinas en algún nivel pueden comunicarse directamente con máquinas directamente debajo de ellas o encima de ellas o con pares en la jerarquía.

Arquitectura de una GRID

Application

Fabric

Connectivity

Resource

Collective

Fabric: donde se encuentra recursos computacionales que serán compartidos, además de la infraestructura de red y sus mecanismos de gestión y control. Los recursos pueden ser entidades físicas o lógicas: Clústers de computadoras, Bases de datos , Sistemas de archivos distribuidos

Connectivity: trata con protocolos de comunicación y seguridad que permiten a los recursos computacionales comunicarse. La seguridad es un punto muy importante de la computación en Grid por su propia naturaleza distribuída ya que se comparten recursos entre distintas organizaciones que pueden tener distintas políticas de seguridad. En comunicación, protocolos de internet: TCP/IP, routing,etc.Protocolo de seguridad (SSL o X.509): brindan mecanismos de criptografía para identificar usuarios y recursos

Arquitectura de una GRID

5

Resource: se centra en la gestión de un único recurso y permite tener información y control sobre el mismo.

- Protocolos que permiten obtener la información de un recurso: sus características técnicas, la carga actual, el precio, etc.

- Protocolos que permiten el control del recurso: el acceso al mismo, el arranque de procesos, la gestión, la parada, la monitorización, la contabilidad de uso y la auditoria del recurso.

Collective: Protocolos y servicios que le permita gestionar un conjunto de recursos. Ej servicio de directorio, monitoreo y diagnostico de fallas, replicación de datos, balanceo de carga, schedulers distribuidos, etc.

Appl: Protocolos que permitan el acceso a la estructura grid. Según el tipo de aplicación será necesario conectarse a las distintas capas o acceder directamente a una de ellas e incluso a la de Fabric.

Arquitectura de una GRID

Desafios a resolver

A nivel de ProgramaciónFacilidades de desarrollo para aplicaciones sofisticadasFacilidades de compartir código.Ambientes de programación

APIs, SDKs,tools, etc.A nivel de sistemas

Facilidades de coordinar uso de recursos dispersos.Facilidades de compartir infraestructura

Autorización de certificación,servicios de información

Requerimientos del sistemaProtocolos y servicios.

Tools basicos de la Grid

Security

Resource Allocation & Scheduling

Data locality

System ManagementUniform Access

Computational Economy

Application Construction

Resource Discovery

Network Management

6

Servicios básicos

Seguridad.Gerencia del sistema.Planificación y asignación de recursos.Descubrimiento de recursos.Administración de la red.Localización de la data.Auditoria y cobro del cómputo.Ambiente para el desarrollo de aplicaciones.

Autenticación y seguridad.Acceso basado sobre un simple punto de autenticación originado en el escritorio.Interacción segura a través de la grid.

Servicios básicos

Servicios básicos de Información

Descubrir recursosComo encontrar un objectos con un conjuntos de

propiedades?.Como instalar un nuevo objeto/servicio en la grid?.Como se hace conocido el objeto al broker de la

grid?. Como se describe el mismo?.

Servicios de información y directorios de datos.Acceso a todo el catálogo de datos del grid y

directorios de servicios.Método de acceso estandar para adquirir la

metadata.

7

Servicios básicos nivel de usuariosUn shell global para el control de acceso del job y otros servicios.

Servicios de colaboración distribuidos.Muchas aplicaciones son diseñadas para ser

accesadas por multiples usuarios desde multiples sitios simultaneamente.

Servicios comunes de auditoría y contabilidad.Quienes estan autorizados a usar un conjunto de

recursos y como cobrar por los servicios.

Servicios de Monitoreo/scheduler • Mantenimiento de servicios vivos. Una red de agentes autónomos son requeridos para monitorear la grid y mantener los recursos yservicios vivos.

•El servicio de scheduler distribuido es una de las aplicaciones más complejas de un desarrollo Grid ya que existen tres scheduler distintos: • el planificador de trabajos (Job Scheduler) que intenta maximizar la cantidad de trabajo realizado (trabajos por unidad de tiempo).• el planificador de recursos que intenta maximizar el uso de losrecursos. •el planificador de la aplicación que divide la aplicación en tareas, asigna los recursos para su ejecución y vigila el desarrollo de los mismos.

GridFabricNetworked Resources across

OrganisationsComputers Clusters Data Sources Scientific InstrumentsStorage Systems

Local Resource Managers

Operating Systems Queuing Systems TCP/IP & UDP

Libraries & App Kernels …

Distributed Resources Coupling Services

Comm. Sign on & Security Information … QoSProcess Data Access

Development Environments and Tools

Languages Libraries Debuggers … Web toolsResource BrokersMonitoring

Applications and Portals

Prob. Solving Env.Scientific …CollaborationEngineering Web enabled AppsGridApps.

GridMiddleware

GridTools

Componentes de una Grid

8

Un usuario tiene un problema con necesidades computacionales especiales. Implementa un “job” que se pueda ejecutar en el grid

• Se conecta al grid por medio de una interfaz software que ejecuta en su equipo ( capa de aplicación)

• El usuario debe validarse correctamente para asegurar la seguridad (capa de conectividad)‏

• Tras validarse, el usuario se podrá comunicar con el núcleo del grid, el Resource Broker (capa Collective) , que se encarga de buscar los recursos óptimos en cada caso.• El Resource Broker consulta al Information Service acerca de los recursos disponibles en el Grid; y al Replica Catalog para conocer donde se localizan los datos existentes

¿Cómo funciona el grid?

¿Cómo funciona el grid?

• Una vez localizados los recursos que más convienen, el Resource Broker le envía al job, y se ejecuta.

• En cualquier momento, el usuario puede consultar al Resource Broker por el estado del proceso.

• Cuando se ha terminado de ejecutar el job, el RB nos devuelve los resultados.

Principales VentajasDescentralización: pueden agregarse recursos sin importar su localización geográfica.

Heterogeneidad: todo recurso puede ser integrado. Pueden ser de 2 tipos:

Hardware: Ordenadores o dispositivos electrónicos. Software: Los recursos agregados pueden ser de todo tipo

(servicios, documentos, imágenes, bases de datos...) y estar presentes en cualquier sistema operativo (Windows, UNIX, MacOSX...).

Escalabilidad: La infraestructura puede ser aumentada continuamente sin alterar procesos y sin que se resienta su eficiencia.

Multipropósito: La infraestructura puede utilizarse para todo tipo de aplicaciones.

9

Grid/cluster/P2P Un grid no es un cluster de máquinas (en un grid puede haber integrados muchos o ningún cluster).

Se puede considerar a la tecnología GRID como una versión mejorada de P2P. Permite compartir todos los recursos de un equipo (no sólo archivos) y garantiza calidades de servicio no triviales. Además es multipropósito.

NetSolve NetSolve

Client/Server/Agent -- Based Computing

• Client-Server design••••

Load Balancing

Fault Tolerance

• Interfaces to Fortran, C, Java, Matlab , more

Easy-to-use tool to provide efficient and uniformaccess to a variety of scientific packages on UNIX and

Window´s platforms

NetSolve Client NetSolve Agent

Network ResourcesSoftware Repository

Software is availablewww.cs.utk.edu/netsolve/

request

choicereply

Non-hierarchical system

Heterogeneous Environment SupportedMultiple and simple client interfaces

Built on standard components•

Open Science Grid (USA)‏

El Open Science Grid es una infraestructura gestionada por el OSG Consortium que facilita la computación distribuida para usos científicos.Integra a: Proveedores de recursos y servicios, Investigadores de

universidades y laboratorios nacionales, Centros de computación

Utilización del OSG:Para tareas de análisis de datos que computacionalmente son excesivas

para un solo centro de computación o un solo supercomputadorÁrea principal: física de partículas, pero hay otras: química, biología,

astronomía, …Creado para facilitar el análisis de datos provenientes del LHC (70% de

dedicación)‏Arquitectura del OSG:

Compuesta de >25.000 computadores en >70 institucionesLos computadores ejecutan una distribución de Linux

Utiliza múltiples herramientas: Condor, Globus, PBS, LSF, Sun Grid Engine

Interopera con otros Grids: EGEE, LHC Computing Grid, TeraGrid

10

TeraGrid

Financiada por NSF (National Science Foundation) e Integra 11 entidades: University of Chicago, San Diego Supercomputer Center,National Institute for Computational Sciences, National Center for Supercomputing Applications, National Center for Atmospheric Research, etcUnas de las mayores “cyber infrastruture” para open scientific research: Procesadores, Bases de datos, Almacenamiento, Herramientas

Proporciona múltiples “Science Gateways”Astronomy, Atmospheric Sciences, Biochemistry, Chemistry, Earth

Sciences, Cosmology, Seismology, Genetics, Geophysics, Neuroscience, Materials Research, Visualization

Usuarios: > 4000 de >200 Universidades USA

Tecnología:Enviar trabajos: Condor-G, Globus, PBS, etcTransferencia de archivos: GridFTP Tgcp Almacenamiento de datos: SRB, HPSS, …

TeraGrid (USA)‏

Enabling Grids for E-scienceESerie de proyectos financiados por la Comisión Europea:El proyecto generó el software gLite V3.1 (25-Feb-2009)‏

[ Lightweight middleware for Grid Computing ]http://glite.web.cern.ch/

Infraestructura:- Controla los recursos de 250 centros de todo el mundo ( >10PBytes)‏- Utilizada diariamente por varios miles de científicos federados en

>200 organizaciones virtuales- Infraestructura estable, bien gestionada, basada en el middleware

gLite

- Proporciona acceso a los servicios Grid para realizar pruebas

- Se encarga de coordinar EGEE con los proveedores de red (GEANT2 / NRENs)‏

EGEE (gran grid de e-science europeo) ‏

11

Tier2 Centre ~1 TIPS

Online System

Offline Processor Farm

~20 TIPS

CERN Computer Centre

FermiLab ~4 TIPSFrance Regional Centre

Italy Regional Centre

Germany Regional Centre

InstituteInstituteInstituteInstitute ~0.25TIPS

Physicist workstations

~100 MBytes/sec

~100 MBytes/sec

~622 Mbits/sec

~1 MBytes/sec

There is a “bunch crossing” every 25 nsecs.There are 100 “triggers” per secondEach triggered event is ~1 MByte in size

Physicists work on analysis “channels”.Each institute will have ~10 physicists working on one or more channels; data for these channels should be cached by the institute server

Physics data cache

~PBytes/sec

~622 Mbits/sec or Air Freight (deprecated) ‏

Tier2 Centre ~1 TIPS

Tier2 Centre ~1 TIPS

Tier2 Centre ~1 TIPS

Caltech ~1 TIPS

~622 Mbits/sec

Tier 0Tier 0

Tier 1Tier 1

Tier 2Tier 2

Tier 4Tier 4

1 TIPS is approximately 25,000 SpecInt95 equivalents

Data Grid para física de alta energía

Large Hadron Collider Computing Grid (LHC-CG = LCG)‏Grid diseñado por el CERN para procesar las masivas cantidades de información generadas por el LHC

Colaboran mas de 140 centros de computación de 33 países

Arquitectura por capas o jerarquicaTier 0: CERN (Gestiona: 27TB raw data/ día + 10TB summary data/ día

envia datos mediante enlaces dedicados de 10 GbpsTier 1: 11 centros (Sirven de repositorio/backup de los datos)‏

envia datos usando redes nacionales de investigacionTier 2: 140 centros agrupados en federaciones Los computadores que componen el LCG se basan en Scientific Linux

Middleware : Globus Toolkit, Condor, EGEE: (Virtual Data Toolkit + gLite Toolkit)‏

LCG (Worldwide LHC Computing Grid) ‏

La iniciativa D-Grid tiene como objetivo construir una infraestructura Grid sostenible para educación e investigación (e-Science) en Alemaniahttp://www.d-grid.de

GRIDs Nacionales

D-Grid

INFN: Instituto Nazionale di FisicaNucleareIntegración de Italia en las acciones Grid de la UEIntegración de tecnología Grid en la Industria y el Comercio

Grid Nacional Italiano: INFN

Grid Nacional Griego: HellasGridProporciona soporte a la red de educación e investigación griega

12

GlobusSu intención principal es crear una plataforma completa donde compartir aplicaciones y recursos informáticos en Internet. Es un proyecto creado en el año 1996, que surge como una iniciativa para la investigación y el desarrollo de tecnologías fundamentales para Grids. Desde entonces, el equipo de desarrollo de Globus se ha ampliado de unos pocos individuos, a una distribuida comunidad internacional. En respuesta a este crecimiento, surge la “Globus Alliance”. Surge del proyecto Globus y se creó oficialmente en el año 2003. Es una comunidad internacional de organizaciones y particularesdedicada a desarrollar las tecnologías necesarias para construir infraestructuras de computación Grid. Lleva a cabo la investigación y desarrollo para elaborar la tecnología, estándares y sistemas que conforman el Grid.

Proyecto Globus El Globus Toolkit, un conjunto de servicios y librerías de

software capáz de soportar aplicaciones tipo Grid.Sus 5 principales partes son:1- Common run time

Librerías y servicios.2- Security

Componentes para proveer acceso seguro3- Execution Management

Ejecución, monitoreo y gerencia de jobs4- Data Management

Descubrir acceso y transferencia de datos.5- Information

Descrubrir y monitorear recursos y servicios

Proyecto Globus componentes GSI (Grid Security Infrastructure) ‏

Provee un ambiente de seguridad alrededor de los recursos del grid.

MDS (Monitoring and Discovery Service) ‏Para descubrir recursos y sus estatus.

GRAM (Globus/Grid Resource Allocation Management) ‏Componente básico de Globus para gerenciar la ejecución.Usado para resolver y gerenciar jobs

GridFTPPara transferir archivos entre recursos.

13

Globus Toolkit‏Seguridad (GSI: Globus Security Infrastructure): recursos distribuidos deben estar protegidos de accesos no autorizados.

Requiere que cada usuario esté autenticado (su identidad probada).Usa criptografia de clave pública (bases de la seguridad en

Internet)‏Cada usuario debe poseer un certificado digital emitido por una

autoridad certificadora en la cual todos confian. Los usuarios generalmente necesitan autorización sobre los

recursos que quieren usar.Usuarios necesitan delegar privilegios a la grid, para que un

servicio pueda recuperar datos de un recurso independiente del usuario.

Globus Toolkit‏Gestión de recursosLa arquitectura de gestión de recursos permite el acceso transparente, unificado y seguro a los distintos gestores de recursos locales de cada centro o institución. Los principales componentes de esta arquitectura son:

GRAM (Grid Resource Allocation Manager): gestor de asignación de recursos (procesa las peticiones de recursos para la ejecución de aplicaciones remotas, maneja los jobs activos y devuelve la información actualizada de las capacidades y de la disponibilidad de los recursos de cómputo).

RSL: lenguaje de especificación de recursos.

DUROC( Dynamically-Updated Request Online Coallocator ): para la asignación múltiple de recursos.

Globus Toolkit‏Servicios de Información

El MDS (Monitoring and Discovering System) es el sistema de información de Globus y usa el protocolo LDAP para la consulta uniforme de la información referente a los sistemas en el Grid.

El GRIS (Grid Resource Information Service), provee de manera uniforme la búsqueda de recursos obteniendo como resultado la configuración actual, capacidades, el estado y el desempeño de cada recurso del Grid.

14

Globus Toolkit‏Gestión de datos

Para copiar datos entre recursos: GridFTP : protocolo de transferencia de archivos seguro y de alto rendimiento basado en el popular protocolo FTP, optimizado para redes de área amplia con grandes anchos de banda.

Para la replicación de datos en los recursos de un grid: Replica Location Service ( RLS ): mantiene y proporciona acceso a información sobre la localización física de copias de datos. Data Replication Service ( DRS ): crea réplicas de un conjunto de archivos en la ubicación especificada y registra las réplicas creadas en el RLS.

Usuario usando Globus servicios y facilidades

Globus Toolkit‏Está implementado según un modelo de capas: Seguridad: comprende los servicios de seguridad.

Gestión de datos: se encuentran los servicios básicos como la gestión de jobs, los servicios de directorio y monitorización y los de transferencia de archivos.

Gestión de recursos: núcleo donde se encuentran las factorías de recursos y los servicios de notificaciones, persistencia y ciclo de vida.

Servicios de información: servicios de gestión de grandes cantidades de datos.

15

Bibliografía‏• “The Grid: Blueprint for a New Computing Infrastructure”. I. Foster and C. Kesselman. Morgan Kaufmann. 1998.

• “The Anatomy of the Grid: Enabling Scalable VirtualOrganizations”. I. Foster, C. Kessleman and S. Tuecke.

International Journal of Supercomputer Applications. 2001

•“Physiology of the Grid. An Open Grid Service Architecture for Distributed Systems Integration”. I. Foster, C. Kessleman, J. M.Nick and S. Tuecke. Global Grid Forum. 2002

• “Open Grid Services Infrastructure (OGSI) version 1.0”. S.Tuecke et. at. Global Grid Forum. 2003.

• “Grid-2: Blueprint for a New Computing Infrastructure”. I.Foster and C. Kesselman. Morgan Kaufmann. 2004.