Grids
Computacionais
O Projeto OurGrid
www.ourgrid.org
Walfredo Cirne/Jacques Sauvé
[email protected]
Universidade Federal de Campina Grande
© 2004 Hewlett-Packard Development Company, L.P.
The information contained herein is subject to change without notice
Drivers para grids Computacionais
no domínio científico
• Cientistas e engenheiros podem usar todo
o poder computacional que você pode
juntar para eles
• Eles geram petabytes de informação e
sempre querem ciclos, memória, ...
• Demandas mais recentes:
−Mais colaboração entre sites remotos
−Muito mais dados dispersos
Drivers para grids no domínio de
negócios
• Demandas para o CIOs
−Melhorar confiabilidade
−Aumentar a relevância da TI para o negócio
−Reduzir a complexidade
−Facilitar mudanças rápidas
−Diminuir custos
• Grids podem servir para o que está em
negrito
A missão em termos tecnológicos
• Fornecer alta qualidade de serviço em
sistemas distribuídos
−Incluindo recursos dentro e fora da empresa
• As dificuldades
−Como agüentar largas escalas com grandes
variações na demanda?
−Como cruzar domínios administrativos com
segurança?
−Como lidar com o alto TCO de TI?
−Como lidar com os novos provedores de
serviço (e-Utilities)?
Solução: O que queremos?
• Desacoplar produção e consumo
−Funções especializadas e serviços comuns
podem se transformar em commodities
• Acesso sob demanda aos recursos
• Transparência
O que é um Grid?
Grid Computacional
(Recursos)
O que é um grid?
• A figura anterior parece a Web??
−Sim, mas dentro da nuvem temos recursos e
não informação
• Semelhante a um “Grid Elétrico”
−Não preciso ter um gerador de energia em
casa para ter eletricidade
−Posso fazer o mesmo com recursos
computacionais?
• Forte tendência de prover uma “orientação
a serviços”
−Casamento com Web Services
Aplicações de grids
• Supercomputação distribuída
−Para agregar recursos computacional (ao
mesmo tempo) para resolver problemas que
não podem sê-lo num computador único
• Computação de alta vazão
(Scavenging grid)
−Aproveita recursos livres (idle) para aumentar a
vazão agregada de tarefas
Aplicações de grids
• Computação intensiva em dados
−Foco em sintetizar nova informação a partir de
dados mantidos em repositórios, BDs e
bibliotecas digitais geograficamente
distribuídos
• Computação sob demanda
−Uso de grid para satisfazer, no curto prazo,
demandas de recursos que não podem ser
satisfeitas localmente de forma barata
• Computação colaborativa
−Foco em grids que incluem formas intensivas
de interação humano-humano
Grids comerciais
• Mais perto dos últimos dois tipos (on-demand,
collaborative), mas ...
− Aplicações de negócio rodam de forma contínua ...
− Por longos períodos de tempo ...
− E possuem requisitos mais fortes de QoS, segurança e
contabilização
• Virtualização de Ativos de TI
• Marketing usa várias frases
− “utility computing,” “e-business on demand,” “planetary
computing,” “autonomic computing,” “enterprise grids”
• Ainda não estamos perto de chegar a “The Grid”
Obrigado.
Estão convidados à palestra de
desdobramento na qual falarei do
projeto OurGrid.
Solução de um problema real
• Para terminar meu Ph.D., tive que rodar
centenas de milhares de simulações
independentes
• Já que as simulações são independentes,
esta é uma aplicação perfeita para o grid
• Eu trabalhava num dos melhores
laboratórios do mundo na pesquisa grid,
mas não consegui usar o grid
−“O grid” com todo seu middleware, ainda não
existe
A Motivação para MyGrid
• Usuários de aplicações frouxamente
acopladas poderiam de beneficiar do grid
agora
• Porém, não usam o grid hoje porque a
infraestrutura do grid ainda não está
implantada em larga escala
• Que tal construirmos uma solução que não
dependa de nenhuma instalação de
infraestrutura grid?
MyGrid
• MyGrid permite que um usuário execute
aplicações paralelas do tipo Bag-of-Tasks
em quaisquer recursos a que tenha acesso
−Aplicações Bag-of-Tasks são formadas de
tarefas independentes
• Seu grid consiste de todos os recursos a
que você tem acesso
−Não precisa de middleware de grid
−Middleware de grid pode ser usado se estiver
disponível
Aplicações Bag-of-Tasks
• Mineração de dados
• Pesquisas massivas (como pesquisar por
chaves de criptografia)
• Varreduras de parâmetros
• Simulações Monte Carlo
• Fractals (tais como Mandelbrot)
• Manipulação de imagens (ex. tomografia)
• E muitas outras…
O que é MyGrid?
• Um broker (ou escalonador de aplicações)
• Um conjunto de abstrações para esconder
do usuário a heterogeneidade do grid
Um Exemplo: fatoração com MyGrid
• init
mg-services put $PROC ./Fat.class $PLAYPEN
• grid1
java Fat 3 18655 34789789798 output-$TASK
• collect
mg-services get $PROC $PLAYPEN output-$TASK
• grid2
java Fat 18655 37307 34789789798 output-$TASK
Definindo seu Grid pessoal
proc:
name = ostra.lsd.ufcg.edu.br
attributes = lsd, linux
type = user_agent
proc:
name = memba.ucsd.edu
attributes = lsd, solaris
type = grid_script
rem_exec = ssh %machine%command
copy_to = scp %localdir/%file %machine:%remotedir
copy_from = scp %machine:%remotedir/%file %localdir
[...]
MyGrid pode usar quaisquer
recursos …
Home
Machine
Scheduler
GridMachine Interface
Globus
Proxy
UA
Proxy
Globus
GRAM
User
Agent
Grid Machine
Grid Machine
Grid
Script
...
...
Grid Machine
Lidando com Firewalls, IP privados,
e máquinas Space-Shared
Scheduler (Home Mac.)
User Agent
Grid Script
Globus Proxy
Grid Machine Gateway
Space-Shared Gateway
Prova de conceito
• Durante um período de 40 dias,
executamos 600.000 simulações usando
178 processadores localizados em 6
domínios administrativos diferentes
• Usamos apenas GridScript and
escalonamento simples
• MyGrid usou 16.7 dias para terminar
• Minha máquina pessoal teria levado mais
de 5 anos para fazer o mesmo
• Aceleração de 116 com 178 processadores
Pesquisa em HIV com MyGrid
?
HIV-1
HIV-2
B,c,F
O
N
M
A
B
C
D
F
G
H
J
K
prevalent in Africa
prevalent in Europe and Americas
majority in the world
18% in Brazil
HIV protease + Ritonavir
RMSD
Subtype F
Subtype B
O Grid para a pesquisa HIV
• 55 máquinas em 6 domínios
administrativos nos EUA e Brasil
−Máquinas acessadas via User Agent, UA + Grid
Machine Gateway, UA + ssh tunnel, e Grid
Scripts
• Tarefa = 3.3 MB entrada, 1 MB saída, 4 a
33 minutos de execução dedicada
• Executou 60 tarefas em 38 minutos
• Aceleração de 29 usando 55 máquinas
Status do MyGrid
• Projeto realizado em parceria com HP
• MyGrid é open source e está disponível em
http://www.ourgrid.org/mygrid
−Temos 150 downloads
−Versão 2.0 liberada em fevereiro 2004
−Base do Grid PAUÁ, sendo desenvolvido pela
HP Brazil
• Aplicações paralelas Bag-of-tasks podem
se beneficiar do Grid agora
−Firewalls, IP privados e outros problemas do
mundo real dificultaram muito a solução
Colaboração/Interesse em
MyGrid/OurGrid
• HP Brazil R&D
• Parceiros HP
−LNCC, UniSantos, UniFor, Instituto Atlântico
−CESAR/UFPE, Instituto Eldorado, IPT, AMR
−PUCRS, UniSinos, UFRGS, USP
• Outros
−UnB, UFBA, UCS, UniCap, UFPB, USP, ...
Demandas de Usuários MyGrid
 OurGrid
−Pessoas querem acessar mais recursos do que
aqueles a que têm acesso
• Mais recursos
 GridDoc
−Boa sinergia com Failure Spotter, um outro
projeto colaborativoentre UFCG e HP
• Facilidade de depuração
• Mais segurança  SWAN
−Proteger recursos locais
−Uso de uma máquina grid como plataforma de
ataque
• Modelo de programação mais rico
Outras atividades conjuntas entre
HP + UFCG
• OurGrid Comunidade peer-to-peer baseada
na troca de favores
• Failure Spotter se foca no projeto,
implementação e uso de Detetores de falhas
em sistemas distribuídos assíncronos
• Bottom Line provê soluções de baixa
intrusão para a gerência de TI pela
perspectiva do negócio
−Business Impact Management usando métricas
de negócio
−Governância de TI
Obrigado!
Visite www.ourgrid.org
© 2004 Hewlett-Packard Development Company, L.P.
The information contained herein is subject to change without notice
Download

Grids Computacionais (Evento SERPRO)