Вы находитесь на странице: 1из 57

OurGrid

O que so Grids?
Walfredo Cirne
walfredo@dsc.ufcg.edu.br

Laboratrio de Sistemas Distribudos - LSD Universidade Federal de Campina Grande - UFCG

Grids Computacionais
A metfora da Rede Eltrica

Grid Computacional
(fonte de servios e recursos)

Para que serve um Grid?

Para que serve um Grid?

Para que serve um Grid?

Para que serve um Grid?

O Impacto de Grids
VR Simul
MegaCiclos

Databank Inc.

Embratel

Mastercard
Grid Auditing
7

Histrico de Grids
A idia de Grid surgiu na comunidade de Computao de Alto Desempenho h pouco menos de 10 anos
Agora os primeiros Grids para Alto Desempenho comeam a entrar em produo

H 3 anos, o mainstream da computao percebeu a possibilidade de usar tecnologia Grid para transformar computao em servio
A tecnologia Grid est se fundindo com Web Services

Grids para Alto Desempenho = Grids de Servio + Servio de Execuo Remota


8

Agenda
Histrico Grids de Servios
Aspectos Fundamentais

Grids para Alto Desempenho


Desafios adicionais

Servios Computacionais
Definio de Servio
Mercadoria imaterial provida por uma entidade legal para satisfazer as necessidades de outra entidade

Arquiteturas Orientadas a Servios (SOA) J existiam tecnologias para SOA


Ex.: CORBA, RMI, etc...

Interoperabilidade muito importante


Padronizao Fraco acoplamento Web Services

10

Grids de Servios
Infra-estrutura de Servios sob Demanda Caractersticas
Heterogeneidade Disperso Controle Distribudo Vrios Domnios Administrativos

Interoperabilidade
Padronizao

11

Aspectos Fundamentais
Descoberta de Servios Autenticao e Autorizao Auditoria de Servios Composio de Servios Padronizao

12

Descoberta de Servios
Fundamental para Servios sob Demanda Uma viso simples da arquitetura
Catlogo publica consulta

requisio Cliente Provedor de Servios


13

resposta

Descoberta de Servios
Universal Description, Discovery and Integration (UDDI)

14

MDS
Monitoring and Discovery System
Index Service Trigger Service Aggregator Service

Utilizao
Escalonamento e seleo de rplicas Avaliar estado dos servios Notificao sobre a situao de servios e recursos

Globus Toolkit 4 (MDS4)

15

Aspectos Fundamentais
Descoberta de Servios Autenticao e Autorizao Auditoria de Servios Composio de Servios Padronizao

16

Autenticao e Autorizao
Com vrios domnios administrativos, como se d a autenticao e autorizao? Idealmente gostaramos de ter um login nico Segurana um aspecto muito importante Algumas especificaes
WS-Security
Mensagens SOAP assinadas e criptografadas

WS-SecureConversation
Contexto seguro para troca de mensagens

WS-Policy
Define polticas de uso do servio
17

Autenticao e Autorizao
Globus GSI Grid Security Infrastructure
Transport-level security
Privacidade no canal de comunicao

Message-level security
Proteo das mensagens SOAP

Autenticao baseada em:


Certificados X.509 / Login

Autorizao baseada em:


grid-mapfile SAML Security Association Markup Language
18

Aspectos Fundamentais
Descoberta de Servios Autenticao e Autorizao Auditoria de Servios Composio de Servios Padronizao

19

Auditoria de Servios
Clientes e Provedores desejam garantias SLA Service Level Agreements (contrato) Falta de confiabilidade entre as partes
Provedor pode no fornecer o servio como prometido no contrato Cliente pode no cumprir o contrato de utilizao do servio

Mecanismos de Auditoria Monitorao de Servios e Clientes


20

Aspectos Fundamentais
Descoberta de Servios Autenticao e Autorizao Auditoria de Servios Composio de Servios Padronizao

21

Composio de Servios
Construo de novos servios atravs da agregao de funcionalidades Novos servios baseados em servios mais bsicos Uma agncia de turismo fornece o servio de venda de pacotes de viagens compondo servios de reserva em hotis, locadora de carros, consulta em administradoras de cartes de crdito, etc...
22

Composio de Servios
Vantagens
Abstrao da Complexidade Reutilizao de funcionalidades

Linguagens para composio


Definem um fluxo para integrao de servios XLANG, WSFL, BPEL BPEL = WSFL (IBM) + XLANG (Microsoft)

23

Aspectos Fundamentais
Descoberta de Servios Autenticao e Autorizao Auditoria de Servios Composio de Servios Padronizao

24

Padronizao
Open Grid Services Architecture OGSA
Define padres arquiteturais e requisitos para a infra-estrutura OGSA = O que?

Open Grid Services Infrastructure OGSI


Define o comportamento e relacionamento dos componentes da arquitetura OGSI = Como? Globus Toolkit 3

Alinhamento com Web Services


Web Service Resource Framework - WSRF
25

WSRF
Stateless ou Stateful OGSI define:
Stateful Web Services = Grid Services

WSRF evoluiu de OGSI


Stateful Web Services = Web Service + Stateful Resources Introduo do conceito WS Resource Quem possui estado agora um Recurso controlado pelo Servio Padronizao no gerenciamento de estados Recurso tem uma conotao diferente daquela usada pela comunidade de Alto Desempenho, o que torna esta discusso um pouco confusa

26

Padronizao ainda complexa


ASAP (Asynchronous Service Access Protocol), BPEL4WS (Business Process Execution Language), ebSOA TC (Electronic Business Service Oriented Architecture), ebXML (Electronic Business XML), International Health Continuum TC, oBIX TC , SAML (Security Assertion Markup Language), SOAP (Simple Object Access Protocol), SOAP MTOM (SOAP Message Transmission Optimization Mechanism), ranslation WS TC , UBL (Universal Business Language), UDDI (Universal Description, Discovery, and Integration), WS-Addressing, WS-AtomicTransaction, WSBPEL (Business Process Execution Language), WS-CAF (WS Composite Application Framework ), WS-CF (WS Coordination Framework), WS-Choreography , WS-CDL (Web Services Choreography Description Language), WS-Coordination, WS-CTX, WS Context, WS-Discovery (Web Services Dynamic Discovery), WSDL (WS Description Language), WSDM (WS Distributed Management), WSEnumeration, WS-Eventing, WS-Federation (Web Services Federation Language), WSIL (WS Inspection Language), WS-Manageability, WS-MetadataExchange (Web Services Metadata Exchange), WS-MessageDelivery, WS-Notification, WS-Policy, WS-Provisioning, WS-Reliability, WS Reliable Messaging, WS-RF (WS-Resource Framework), WS-Reliablemessaging , WSRP (WS Remote Portals), WS-Security, WS-SecureConversation, WS-SecurityPolicy, WS Security Services TC, WS-TM (WS Transaction Management), WS-Transfer, WS-Trust, XML-Encryption, XML-Signature, CDDLM (Configuration Description, Deployment, and Lifecycle Management) 27

Agenda
Histrico Grids de Servios
Aspectos Fundamentais

Grids para Alto Desempenho


Desafios Adicionais

28

Grids para Alto Desempenho


Grids surgiram como plataformas de execuo de aplicaes paralelas
So os grids para alto desempenho

Grids para alto desempenho necessitam do servio de execuo remota


Maior flexibilidade
Servio pode ser convertido em qualquer outro

Maior complexidade
Segurana Escalonamento
29

Plataformas de Execuo de Aplicaes Paralelas


SMPs MPPs NOWs Grids acoplamento

distribuio

30

SMP: Symmetric MultiProcessor

CPU

Memria

CPU

...
CPU

31

MPP: Massive Parallel Processor

Escalonado r CPU CPU ... Mem. Mem. Mem. requisies CPU

32

NoW: Network of Workstations


requisies requisies requisies

CPU

CPU
...

CPU

Mem.

Mem.

Mem.

33

Grids
CPU CPU ... Mem. Mem. Mem. CPU

Internet

34

Caractersticas das Plataformas de Execuo


SMPs MPPs NOWs Grids

Conectividade
Heterogeneidade Compartilhado

excelente
nula no

muito boa
baixa no

boa
mdia sim

mdia/ruim
alta sim

Imagem
Escala

nica
10

comum
1.000

comum
1.000

mltipla
100.000

35

Grids podem diferir bastante


TeraGrid
4 centros de supercomputao norte-americanos Cada centro com milhares de processadores dedicados ao TeraGrid Canais de altssima velocidade (40 GBits/s) Poder agregado de 13,6 TeraFlops

SETI@home
Ciclos ociosos de 3.6 milhes de processadores espalhados em 224 pases Computa em mdia a uma velocidade de 14 Teraflops

36

Desafios Adicionais em Grids para Alto Desempenho


Execuo Remota e Identidade Local Imagem do Sistema Proteo dos Recursos e das Aplicaes Escalonamento

37

Globus GRAM e GSI


Mapeamento seguro da identificao GSI global para um userid local
Global: C=US, O=University of California San Diego, OU=Grid Computing Lab, CN=Walfredo Cirne Local: walfredo (em thing1), u15595 (em bh)

Submisso e controle de tarefas via GRAM


Independncia do escalonador de recurso Proxy para delegao de autenticao
38

Imagem do Sistema
Imagem do sistema so as abstraes que nos permite lidar com um sistema computacional
Arquivo, diretrio, processo, usurio, grupo, etc

Com vrios domnios administrativos, a imagem do sistema heterognea


Complica tremendamente o uso do Grid

Solues
Imagem do sistema implementada a nvel de usurio [exemplo: Condor] Novas abstraes para se lidar com o Grid [exemplo: MyGrid]
39

Redirecionamento de System Calls do Condor

40

Abstraes OurGrid
Mquina base mquina do grid Tarefa = inicial + remota + final
inicial e final rodam na mquina do grid remota roda na mquina do grid

Armazenamento
Playpen Storage Transferncia de arquivos/Espelhamento

41

Fatorando com OurGrid


task: init: put ./Fat.class $PLAYPEN remote: java Fat 3 18655 34789789799 output-$TASK final: get $PLAYPEN/output-$TASK results task: init: put ./Fat.class $PLAYPEN remote: java Fat 18656 37307 34789789799 output-$TASK final: get $PLAYPEN/output-$TASK results task: init: put ./Fat.class $PLAYPEN remote: java Fat 37308 55968 34789789799 output-$TASK final: get $PLAYPEN/output-$TASK results ....
42

Segurana
Autenticao e Autorizao
Requisito de qualquer grid, porm insuficiente quando h execuo remota

Proteo do Recurso
Recurso roda cdigo de terceiros

Proteo da Aplicao
Aplicao roda em recurso de terceiros

Privacidade dos Dados


Dado processado em recurso de terceiros Problema muito complexo!!
43

Proteo ao Recurso
Poltica por aplicao atravs de interceptao de system call
Fcil de instalar, suporta qualquer linguagem, difcil de configurar para garantir segurana

Virtualizao especfica: Java


Fcil de instalar, suporta linguagem especfica, fcil de configurar

Virtualizao geral: VMWare, Virtual PC, Xen


Difcil de instalar, suporta qualquer linguagem, fcil de configurar
44

GridBox: Interceptao de System Call


Interceptao pela substituio de shared libraries Define poltica de acesso por aplicao
#Allow read-write access #to "input.txt"and "output.txt" rule fopen allow input.txt rule fopen allow output.txt #Allow read-only access to #/etc/hosts file rule fopen readonly /etc/hosts #Disable all other accesses rule fopen deny * #Limit maximum file size limit FILE_SIZE 1000000 #Allow connections to trusted machines rule connect allow 200.18.98.120:80 rule connect allow 200.18.98.132:80 rule connect allow 200.18.99.221:80 #Allow SSH connection rule connect allow 200.18.98.22:22 #Disallow any other connection rule connect deny *:*

45

SWAN: Segurana no OurGrid


Aplicaes Bag-of-Tasks s precisarem se comunicar para receber a entrada e devolver a sada
Isto feito pelo prprio OurGrid

A tarefa remota roda dentro de uma mquina virtual Xen, sem acesso a rede, e com acesso a disco limitado por hardware a uma partio especifica

46

Escalonamento de Aplicao
No possvel ter um escalonador controlando o Grid
Tamanho e disperso Mltiplos domnios administrativos

Escalonadores de recurso
Controlam alguns recursos no Grid

Escalonadores de aplicao
Escolhem quais recursos usar Particionam o trabalho da aplicao
47

Escalonamento de Aplicao
...

...

Escalonador Application de Aplicao Scheduler

...

Escalonador Application de Aplicao Scheduler

Escalonador Resource de Recurso Scheduler

Escalonador Resource de Recurso Scheduler

...

Escalonador Resource de Recurso Scheduler

48

Escalonador de Aplicao
Necessita de informaes sobre o Grid
Sistemas de monitoramento: NWS, Remos Informaes de monitorao so usadas em previses de performance

Necessita de um modelo de performance da aplicao


Portanto, funciona apenas para uma classe de aplicaes

49

Distribuio de Trabalho Jacobi para um MPP

50

Jacobi AppLeS
Escalonador pioneiro para Jacobi 2D
Escolhe quais processadores usar Distribui o trabalho entre os processadores escolhidos

Usa predies NWS


Usa um modelo de performance de Jacobi
Ti = Ai Pi + Ci, onde: Ti o tempo para o processador i executar uma iterao Ai a rea da submatriz alocada ao processador i Pi o tempo que o processador i leva para computar um elemento Ci o tempo que o processador i leva para comunicar suas fronteiras

51

Distribuio de Trabalho AppLeS Jacobi

52

Work Queue with Replication


Soluo de escalonamento para aplicaes Bag of Tasks No depende de informao sobre o Grid ou sobre as tarefas Envia uma tarefa para cada mquina disponvel Quando no h mais tarefas para enviar, as ainda em execuo so replicadas Eficiente, mas desperdia ciclos Escalonador do OurGrid
53

Desempenho do WRQ

54

Concluses e Tendncias
Grids de Alta Performance esto se consolidando Grids de Servios fazem parte do futuro da computao distribuda
Interoperabilidade e Padronizao so palavras de ordem

57

Algumas Referncias
http://www.ourgrid.org http://www.globus.org http://www.cs.wisc.edu/condor/ http://ggf.org http://gridcafe.web.cern.ch/gridcafe/

58

Fim

59

Вам также может понравиться