1 projetos e experiências em computação em grade grupo sld – informática ufrgs fórum de sw...
TRANSCRIPT
1
Projetos e Experiências em Computação em Grade
Grupo SLD – Informática
UFRGS
Fórum de SW Livre – Abril 2008
Grid Computing
Autoria
Autores Cláudio Geyer Marko Petek Diego Gomes Eder Fontoura
Fórum Software Livre 2008
Grid Computing
SLD
Grupo SLD Grupo de pesquisa em Sistemas Largamente
Distribuídos Membro do GPPD – Grupo de Processamento
Paralelo e Distribuído GPPD é um dos grupos do PPGC da UFRGS
PPGC: Pós-Graduação em Computação SLD coopera com
UCPel, UFSM, Unisinos, Lasalle, ... LGI (Grenoble), Caltech (CA, EUA)/UERJ, Cern
(Genebra), LRI (Paris), Coimbra, ...
Grid Computing 4
Sumário
Sumário
Conceitos de Computação em Grade Caso Globus Grade UFRGS Experimental Grade HEP Projetos SLD
Gerência de dados Escalonamento “Global Computing” Outros
Grid Computing 5
Histórico
“primeira” (?) proposta em 1989, por Larry Smarr do projeto CASA (USA)
metacomputing = compartilhamento, ação em comum
Projeto Condor Iníciado em 1988 http://www.cs.wisc.edu/condor/
background.html “support High Throughput Computing (HTC) on
large collections of distributively owned computing resources”
Grid Computing
Histórico a partir de 1995, começam a surgir propostas de
ferramentas para computação distribuída na Web FAFNER e I-WAY
Final da década de 1990 Surgimento do projeto/mw Globus Edição do livro “Grid Computing”, eds. Foster e
Kesselman atualmente, centenas de universidades e
empresas ao redor do mundo estão envolvidas em projetos nessa área
Grid Computing
Definições
Grid is a hardware and software infrastructure that provides dependable, consistent, pervasive, and inexpensive access to high-end computational capabilities I. Foster e C. Kesselman, 1998
Grids are persistent environments that enable software applications to integrate instruments, displays, computational and information resources that are managed by diverse organizations in widespread locations GGF 2002
Grid Computing
Definições
Grid is a type of parallel and distributed system that enables the sharing, selection, and aggregation of geographically distributed "autonomous" resources dynamically at runtime depending on their availability, capability, performance, cost, and users' quality-of-service requirements http://www.cs.mu.oz.au/~raj/GridInfoware/
gridfaq.html Principal autor: Buya Preocupação com aspectos de custos
Grid Computing
Definições
Three point checklist: Grid is a system that: (1) coordinates resources that are not subject to
centralized control... (2) ... using standard, open, general-purpose
protocols and interfaces... (3) ... to deliver nontrivial qualities of service I. Foster, 2002 Não usa termos (características) como;
Largamente distribuídos Sw ou mw próprio Diversas organizações (implícito?)
Grid Computing 10
Grid Problem Principais problemas de uma grade
Coordenação distribuída, cooperativa Compartilhamento de recursos em larga escala Solução de problemas (aplicações) Diversas organizações virtuais de multi-instituições Recursos e VO espalhados geograficamente Não há controle central Não há conhecimento total Confiança mútua entre as Vos Qualidade de entrega Gerência de recursos dinâmica Segurança
Grid Computing 11
Grid Computing: Principais Aspectos
Aplicações computação distribuída computação de alto desempenho computação sob demanda computação intensiva de dados computação colaborativa
Diferentes soluções
Grid Computing
Considerações finais
Ainda alguma diversidade em definições Ver lista a seguir
Diferentes arquiteturas conforme objetivos
Grid Computing 13
TaxonomiaEscalonadores
Grid Service Broker
Nimrod/G
AppLes
Condor/G
Ninf
DISCWorld
SILVER
ST-ORM
PC2
Portais
UNICORE
XCAT
JiPANG
PUNCH
GridSphere
Economia
Grace
CPM
Mariposa
FORTH
Share Meta
D´Agent
Data grids
CERN
GriPhyN
Particle Physics
DIDC
http://www.gridcomputing.com/
Grid Computing: Principais Aspectos
Grid Computing 14
Sistemas
XtremWeb
Javelin
MILAN
HARNESS
PUNCH
MoBiDiCK
MetaNEOS
MultiCluster
TaxonomiaAmbientes
MetaMPI
DCE
GrADS
Java CoG Kit
ProActive PDC
REDISE
JACO3
Cactus
Middleware
Globus
Legion
NetSolve
GRACE
Testbeds
Polder
NASA IPG
NPACI
DAS
GUSTO
SF-Express
distributed.net
SETI@home
Grid Computing: Principais Aspectos
Grid Computing 15
Global Grid Forum Global Grid Forum:
Desenvolvimento de protocolos e APIs padrões para computação Grid
www.gridforum.org 2 ou mais workshops anuais Centenas de participantes
Grid Computing
Caso Globus
Grid Computing17
GT 4 - Introdução
Principais projetistas: Ian Foster e Carl Kesselman Um dos mw para grades mais usados e referenciados
Confunde-se com Grid (arquitetura) O Globus Toolkit é
uma coleção de componentes que procuram solucionar os problemas freqüentes da construção de aplicações distribuídas
colaborativas heterogeneidade
simplificação da heterogeneidade para desenvolvedores de aplicações
Grid Computing18
GT 4 - Introdução
Objetivos Permitir compartilhamento de
Poder computacional Bases de dados E outras ferramentas
Passando por limites de instituições e geográficos
Sem sacrificar a autonomia local
Grid Computing19
GT 4 - Introdução
Histórico GT v1.0: 1998 GT v2.0: 2002 GT v3.0: pouco sucesso GT v4.0: 2005
Grid Computing20
GT 4 - Introdução
Distinções New York Times: padrão de fato em sw para
grade 2002
Mais promissora tecnologia entre 100 Pela R&D Magazine
2003 Foster, Kesselman e Tuecke nomeados
entre os 10 inovadores do ano pela InfoWorld magazine
Grid Computing21
GT 4 - Introdução
Distinções (cont.) 2003
Globus: uma das 10 tecnologias que devem mudar o mundo
Pelo MIT Technologu Review 2003
Globus recebe o prêmio “2003 Federal Laboratory Consortium”
Pelos excelentes resultados em transferência de tecnologia
Devido adoção por inúmeras instituições em todo o mundo
Grid Computing
GT 4 – Introdução
Exemplos de usos/aplicações (motivação) Gerência da carga computacional em
empresas SAP AG + GT 4
Captura de dados com alto desempenho Empresa precisa receber, processar, armazenar e
disponibilizar dados entre 5 a 10 Gigabits por segundo
Grid Computing23
GT 4 – Introdução
Exemplos de usos/aplicações (motivação) Simulação (de Engenharia) de Terremotos
NEES (EUA) agrupa engenheiros “de terremotos” distribuídos em o país
Earth System Grid (EUA) Simulação e controle de clima Instalação de diversos serviços em vários
laboratórios dos EUA
Grid Computing24
GT 4 – Introdução
Exemplos de usos/aplicações (motivação) Open Science Grid (EUA)
Multi-organizações virtuais Laboratório em grade para aplicações diversas 30 sites, 3000 processadores Cargas de 10 distintas aplicações em 1300
jobs simultâneos Transferências de dados diárias de 2 Terabytes GT 4 usado para gerência de organizações
virtuais, acesso a recursos, transferência de dados, autenticação, ...
Grid Computing25
GT 4 - Introdução
O que têm no Globus Toolkit: Ambiente de desenvolvimento Grid
Desenvolvimento de Web Services OGSA-compliant
Desenvolvimento de aplicações Conjunto de serviços Grid Ferramentas e exemplos Documentação, tutoriais, artigos
Empacotados de forma a serem usados independentemente ou em conjunto
Grid Computing26
GT 4 - Introdução
Principais Componentes: Core Runtime;
Infra-estrutura para construção de novos serviços;
Segurança; Aplicação uniforme de políticas através
de domínios distintos;
Grid Computing27
GT 4 - Introdução
Principais Componentes: Serviços de Informação;
Descoberta e monitoramento de serviços dinâmicos;
Gerência de Dados; Descoberta, transferência e acesso a
dados; Gerência de execução;
Provisão de recursos, execução de jobs e gerência de serviços;
Grid Computing28
GT 4 - Introdução Protocolos Web Service:
WSDL, SOAP; WS Addressing, WSRF, WSN; WS Security, SAML, XACML; WS-Interoperability profile
Demais Protocolos: GridFTP (baseado em padrões); Customizados;
Grid Computing29
GT 4 - Introdução
Grid Computing30
novonovo
Grid Computing31
GT 4 - Introdução
Grid Computing32
GT 4 - Introdução
• Projetos com participantes da aliança Globus
Grid Computing GT 4.0 - Segurança33
Versões
Última versão GT 4.0.5
Acesso em 03/10/2007 Release notes
http://www.globus.org/toolkit/releasenotes/4.0.5/
Principais modificações Correção de bugs Melhorias nos módulos
MDS: Monitoring and Discovery System GRAM: Execution management tools
Grid Computing GT 4.0 - Segurança34
Bibliografia
A Globus® Primer: What is the Grid and How Do I Use It? www.globus.org/toolkit/docs/4.0/key/
GT4_Primer_0.6.pdf Home Globus. http://www.globus.org/toolkit/ http://www-unix.globus.org/toolkit/tutorials/
BAS/APAC/APACGlobusIntro.pdf. http://www.globus.org/toolkit/docs/4.0/
Grid Computing
Caso Grade UFRGS
Grid Computing
O que é GradeUFRGS
Iniciativa de conceber um ambiente operacional
baseado em grade computacional para execução de aplicações paralelas
agregando recursos computacionais das diferentes unidades da UFRGS e do
CESUP/RS.
GradeUFRGSGradeUFRGS
Grid Computing
Instituto de Química
Instituto de Matemática
Instituto de Informática
Centro Nacional de Supercomputação
CESUP/RS
Instituto de Física
GradeUFRGSGradeUFRGS Quem GradeUFRGS
Até o presente momento!!!
Grid Computing
Centro Nacional de Supercomputação
CESUP/RS
VO Física
VO Química
VO Matemática
VO Informática
VO CESUP/RS
Cada VO implementa diferentes políticas de utilização de recursos computacionais.
Gerenciamento distribuído.
GradeUFRGSGradeUFRGS Organização Funcional
GradeUFRGS
VO InformáticaVO
Química
VO Física
Centro Nacional de Supercomputação
CESUP/RS
Grid Computing
Campus do Vale
2,5 Gb1 Gb
100 Mb
GradeUFRGSGradeUFRGS Conexões GradeUFRGS
Grid Computing
Centro Nacional de Supercomputação
CESUP/RS
VO Física
VO Química
VO Matemática
VO Informática
VO CESUP/RS
Os recursos de hardware da GradeUFRGS podem ser obtidos de:
http://saloon.inf.ufrgs.br/twiki/view/GradeUFRGS/WebHome
http://pascal.cesup.ufrgs.br:8080/gridsphere/gridspherePortal :
HP :
GradeUFRGSGradeUFRGS Recursos de hardware
GradeUFRGS
VO Química
VO Informática
VO Física
Centro Nacional de Supercomputação
CESUP/RS
Grid Computing
Centro Nacional de Supercomputação
CESUP/RS
VO Física
VO Química
VO Matemática
VO Informática
VO CESUP/RS
Portable Batch System (PBS): gerência local das filas de jobs e processos.
Linux: sistema operacional.
GradeUFRGSGradeUFRGS GradeUFRGSRecursos de software
GridSphere: utilizado como portal.
Globus: middleware para construção e gerência de grade.
Grid Computing
Grids e HEP
Grid Computing
HEP
Grade da Física Experimental de Altas Energias Grade estruturada, hierarquizada Inúmeros países e instituições
Incluindo Brasil (UERJ, USP) Coordenada pelo CERN (Genebra, Suiça) Interessante pelo tamanho, requisitos e organização Fonte de dados
Inúmeros dispositivos sofisticados de física Objetivos
Conhecimento sobre origem do universo
Grid Computing
Grid Computing
Diagrama dos Equipamentos HEP
Vários km;Subterrâneos;França, Suiça, ...
Grid Computing
Interior do Anel
Grid Computing
Interior do Detector CMS
Grid Computing
Concorde(15 Km)
Balloon(30 Km)
CD stack with1 year LHC data!(~ 20 Km)
Mt. Blanc(4.8 Km)1015 Bytes
103 Terabytes1 Petabyte
106 Gigabytes
109 Megabytes
1012 Kilobytes
Um ano de dados no LHCUm ano de dados no LHC(~ 20 Petabyte)
Como analisar estes dados?
Grid Computing
High throughput
and steering
1000 Gb/s + QoS for Control Channel
100s of users0.091 Gb/s(1 TBy/day)
Genomics Data & Computation
Computat’l steering and
collaborations
1000 Gb/sN*N multicast0.013 Gb/s(1 TByte/week)
Astrophysics
Time critical throughput
N x 1000 Gb/s0.198 Gb/s(500MB/
20 sec. burst)
0.066 Gb/s(500 MB/s
burst)
Fusion Energy
Remote control and time critical throughput
1000 Gb/s + QoS for Control Channel
1 Gb/sNot yet started
SNS NanoScience
High bulk throughput
N x 1000 Gb/s160-200 Gb/s0.5 Gb/sClimate (Data & Computation)
High bulk throughput
1000 Gb/s100 Gb/s0.5 Gb/sHigh Energy Physics
Remarks5-10 Years End2End
Throughput
5 years End2End
Throughput
Today End2End
ThroughputScience Areas
Evolving Quantitative Science Requirements for Networks (DOE High Perf. Network Workshop)
Slide courtesy of H. Newman
Grid Computing
CMS Experiment
DISUN: Data Intensive Science University Network
Online System
CERN Computer Center
FNALKorea RussiaUK
UCSB
0.2 - 1.5 GB/s
~10 Gb/s
10 Gb/s
~10 Gb/s
Tier 0
Tier 1
Tier 3
Tier 2
Physics caches PCs
UCR
UFlUCSDCaltech
10s of Petabytes/yr by ~2008 1000 Petabytes in < 10 yrs? > 50% of CPU in Tier2s
UCLA
Tier 4
DISUN
10+ Gb/s
UERJ
USP
Grid Computing
HEPGRID-BRAZIL is a project to build a Grid that at-Regional Level will include CBPF,UFRJ,UFRGS,UFBA,UERJ & UNESP -International Level will be integrated with CMS Grid based at CERN; focal points include iVGDL & bilateral projects with the Caltech Group
Tier2 HEPGRID Brazil
France Italy USAGermany BRAZIL622 Mbps
UFRGS
UERJUFRJ
T1
IndividualMachines
On line systems
Brazilian HEPGRID
CBPF
UNESP/USPSPRACE
GIGA
CERN 2.5 - 10 Gbps
UFBA
UERJ RegionalTier2 Ctr
T4
T0 +T1
T2 T1T3 T2
EU
622 Mbps
Grid Computing
Ambiente de Análise Grid
Grid Computing
SERVERSRaid Disks
NOBREAKS
All Switches are behind the racks. 5 LCD Monitors to be used for: Monitor, Monalisa, Communication and so on. We leave one for a group member to be trainning and develop software.
100 –Double CPU of Itautec/Pentium 4 2.4 GHz, 1 GB RAM, 40 GB HDStarting with 7 TB Raid HD. (Now at UERJ)
T2 – HEPGRID BRAZIL
Grid Computing
US CMS and UERJ Tier2s and US CMS and UERJ Tier2s and DISUN DISUN in Grid3 & the Open Science in Grid3 & the Open Science GridGrid
Grid3: A National Grid Infrastructure
35 sites, 3500 CPUs: Univ. + 4 Nat’l labs
Part of LHC Grid
Running since October 2003
HEP, LIGO, SDSS, Biology, Computer Sci.
Transition to Open Science Grid: http://www.openscience.org
+Brazil (UERJ, USP)
7 US CMS Tier2s; Caltech, Florida, UCSD, UWisc Form 7 US CMS Tier2s; Caltech, Florida, UCSD, UWisc Form DISUNDISUN
Grid Computing
Grid Computing
Principais Sws em uso
Linux Globus Monalisa Ganglia Phedex (BD Centralizado) Condor Monarc Sws de análise física (Fortran e C++)
Grid Computing
Projeto Gerência da Dados
HEP, Cern
Marko Petek e Diego Gomes
Grid Computing
Gerência de Dados em Grades
Motivação: 1a geração de suporte a dados em Grades:
ferramentas para transferência e catalogação de réplicas:
Globus: GridFTP, RLS, RFT, DRS EU DataGrid: ReplicaManager
Uso de servidores dedicados, controlados por presença humana
Ferramentas não voltadas para o usuário final
Grid Computing
Gerência de Dados em Grades
Objetivos: Fornecer uma mídia de armazenamento
global para tarefas colaborativas Reduzir custos na construção de Grades
para aplicações intensivas em dados Prover durabilidade aos dados coletados
pelos recentes experimentos do HEP Facilitar o acesso aos dados fornecendo
serviços voltados ao usuário final
Grid Computing
Gerência de Dados em Grades
JavaRMS: Máquinas organizadas segundo um modelo
P2P: uso do algoritmo Kademlia (mesmo do eMule)
Uso de máquinas ociosas, não dedicadas e em grande quantidade
Cada máquina gerencia um número de arquivos proporcional ao espaço fornecido
Arquivos replicados para garantir sua durabilidade na ocorrência de falhas
Grid Computing
Gerência de Dados em Grades
JavaRMS: Arquivos imutáveis ou com poucas exigências
de escrita Segurança:
Comunicação (XML-RPC sobre HTTPS) Controle de acesso e cotas de
armazenamento Proteção das operações (via doc. digital)
Paralelismo nas operações que envolvem transferência de dados para melhor desempenho
Grid Computing
Gerência de Dados em Grades
Serviços fornecidos: Inserção, recuperação e remoção de
arquivos Inserção e remoção de usuários: controle de
cotas Controle de uso do espaço em disco
fornecido ao sistema Busca por arquivos baseado em
informações sobre seu conteúdo Interface: Sistema de Arquivos Virtual
Grid Computing
Gerência de Dados em Grades
Grid Computing
Projeto Escalonador XtremWeb
Eder Fontoura
Rafael Dal Zotto
Grid Computing
O que é XtremWeb (XW)?
Projeto de pesquisa relacionado a light-weight Grids
Plataforma Open Source para a elaboração de grades
baseadas em PCs, desenvolvida por IN2P3 e INRIA
Utiliza:
Recursos(PCs, Workstations, Servers) conectados
através da Internet e/ou recursos em uma LAN
Os recursos cooperam proporcionando ciclos de CPU
quando ociosos
Grid Computing
task
submission
task
submissiontask
task
Server
Arquitetura do XW
Grid Computing
Arquitetura do XW
Semelhante à arquitetura de projetos de Global
Computing como Boinc
Arquitetura composta por 3 elementos:
Client: Submete tarefas ao servidor para
execução
Server: Elemento central que mantem registro de
tarefas submetidas e workers registrados
Worker: recurso que quando ocioso, busca tarefas
no servidor, executa e retorna o resultado
Grid Computing
AVSched Trabalho de mestrado em desenvolvimento
Proposta
escalonador que considere a disponibilidade nas
decisões de escalonamento
Objetivo
reduzir o impacto causado em um ambiente tipo XW
onde os recursos (workers) tem a liberdade de sair do
sistema sem avisar
causando a interrupção da execução das tarefas
Grid Computing
AVSched
Cada recurso determina o seu padrão de
disponibilidade:
Determinação de períodos de disponibilidade
comuns para o recurso
Ex: em hora do almoço a máquina sempre
está ociosa
Recurso somente requisita tarefa ao servidor
quando estiver em um período de
disponibilidade considerado como padrão
Grid Computing
AVSched
Quando envia uma requisição
o recurso envia também o tempo de
disponibilidade (estimado)
que terá para executar uma tarefa
O escalonador seleciona a tarefa mais adequada
conforme a disponibilidade informada
e entrega ao recurso
Desta forma pode-se reduzir o número de erros de
escalonamento
Grid Computing
AVSched
Testes:
Em desenvolvimento
Protótipo para testes foi desenvolvido e integrado ao
XW Testar inicialmente em um conjunto de 90
máquinas + servidor Objetiva-se utilizar a Grade5K em parceria com a
França para números maiores de nodos
Simulação com SimBoinc/SimGrid em
desenvolvimento
Grid Computing
Outros Projetos SLD
Grid Computing
Outros Projetos SLD
Framework Aplicações Mestre-Escravo Parte do projeto ISAM UFRGS, UCPel, UFSM, Unisinos
Grand: gerência de recursos e escalonador Doutorado de Patrícia Vargas (COPPE, UFRJ)
Grade Ubíqua Projeto RNP entre UFRGS, UCPel, UFSM
Grid Computing
Referências: conceituais/surveys
checkpoint list: http://www.gridtoday.com/02/0722/100136.html
BUYYA - {The Grid}: International Efforts in Global Computing : http://www.cs.mu.oz.au/~raj/papers/TheGrid.pdf
ROURE, - {T}he Evolution of the {G}rid : http://www.semanticgrid.org/documents/evolution/evolution.pdf
NEMETH, - {A} comparison of conventional distributed computing environments and computational grids : http://www.mathcs.emory.edu/harness/pub/general/zsolt1.ps.gz
74
Grid Computing75
Projetos e Experiências em Computação em Grade
Grupo SLD – Informática
UFRGS
Fórum de SW Livre – Abril 2008