Computação em Grade Um proposta de Arquitetura para protocolos entre grades.

Download Report

Transcript Computação em Grade Um proposta de Arquitetura para protocolos entre grades.

Computação em Grade
Um proposta de Arquitetura para
protocolos entre grades.
Um pouco de História.
Em 50 anos de inovações, a velocidade dos
computadores cresceu em torno e um
milhão de vezes, mas mesmo assim ainda
são lentos para poder resolver muitos
problemas científicos.
2
Um pouco de história
► Para
se conseguir resolver problemas complicados
eram necessários super computadores, que
custavam rios de dinheiro.
►A
evolução do hardware chegou a tal ponto que
um computador pessoal tem mais capacidade
computacional que alguns supercomputadores.
► Com
o advento da Internet, o acesso a dados e
computadores ficou muito mais fácil.
3
Um pouco de história.
► No
começo da década de 80, a idéia de
clusters de computadores foi desenvolvida.
► A um custo muito menor, poderia se ter o
poder de um supercomputador.
► Apesar do custo, toda a infra-estrutura
necessária para se montar um cluster
grande é cara.
4
O que é computação em Grade?
►
Por todo o mundo, muitos recursos
computacionais são desperdiçados.
►
Enquanto uma pessoa deixa seu
computador ligado e vai pegar um café,
milhares de ciclos de CPU que poderiam
estar sendo usados são perdidos.
5
O que é computação em Grade?
► Computação
em Grade é compartilhar
recursos computacionais com outros
usuários.
►O
recursos compartilhados não se resumem
a ciclos de CPU, podem ser recursos de
armazenagem, utilização de sensores e
recursos de rede
6
Para que Computação em Grade?
► Existe
realmente um problema específico
para grades, que faça ser necessária a
existência de uma tecnologia de grades?
►O
problema existe, é a coordenação de
compartilhamento de recursos e solução de
problemas de organizações virtuais.
7
O que é uma organização virtual?
► Chamamos
de Organização Virtual quando
temos participantes que desejam
compartilhar recursos para poder concluir
uma tarefa. Além disso, o compartilhamento
esta além de apenas troca de documentos,
isto pode envolver acesso direto a software
remoto, computadores, dados, sensores e
outros recursos.
8
Descrição da Arquitetura de Grades
O objetivo na definição dessa arquitetura
não é definir todos os protocolos, serviços e
APIs requeridos, mas ao contrário identificar
requisitos para classes genéricas de
componentes.
► A arquitetura foi divida nas seguintes
camadas: Base, Conectividade, Recursos,
Coletiva e de Aplicações.
►
9
As camadas
10
Base
►É
a interface para controle local dos
recursos.
► Os componentes da camada Base
implementam localmente, operações
especificas de cada recurso, seja físico ou
lógico.
► Existe então uma interdependência forte
entre as funções implementadas no nível da
camada Base e as operações de
compartilhamento suportadas.
11
Base
► Funcionalidades
mais ricas da camada Base
habilitam operações de compartilhamento
mais sofisticadas.
► se exigirmos menos dos elementos da
camda Base, a distribuição da infraestrutura da Grade será simplificada.
12
Conectividade
► Esta
camada define o núcleo dos protocolos
necessário de comunicação e autenticação para
transações pela rede, específicas para a Grade.
► Protocolos de comunicação habilitam a troca de
dados entre recursos da camada Base.
► Protocolos de autenticação são construídos sobre
os serviços de comunicação para poder prover
mecanismos criptografados e seguros para
verificar se identidade de usuários e recursos.
13
Conectividade: Autenticação
► Login
único.
► Delegação.
► Integração com soluções de segurança
local: A segurança da Grade deve ser capaz
de agir em conjunto as varias soluções
locais como Kerberos ou o sistema Unix.
► Relação de confiança baseada no usuário :
se um usuário tem acesso a um sítio A e um
B, deve poder acessar os 2 ao mesmo
tempo.
14
Recursos
► Define
protocolos (APIs e SDKs) para
negociação, monitoramento, controle,
pagamento de operações compartilhadas
em recursos individuais de forma segura.
► As implementações da camada de Recurso
desses protocolos chamam as funções da
camada Base para acessar e controlar
recursos locais.
15
Recursos
► Protocolos
de informação são usados para obter
informação sobre a estrutura e o estado dos
recursos compartilhados. ex: configuração, carga
atual e políticas de uso, como custo.
► Protocolos de gerenciamento são usados para
negociar acesso a recursos compartilhados. Ex:
requisitos de recurso e as operações a serem
feitas, como criação de processos ou acesso a
dados.
16
Coletiva
► Camada
associada com recursos globais e
captura interações entre coleções de
recursos.
► Por essa razão tem esse nome.
► Implementa uma ampla variedade de
comportamentos de compartilhamento sem
colocar novos requisitos nos recursos sendo
compartilhados.
17
Coletiva
► Serviço
de Diretório - permite as usuários
pesquisar por recursos pelo nome ou
atributos como tipo, disponibilidade ou
carga.
► Alocação Conjunta e Agendamento
► Serviços de Monitoração e Diagnóstico
► Serviços de Replicação de Dados
18
Coletiva
► Sistema
de programação para Grades (MPI
para grades).
► Sistemas de gerenciamento de Carga de
Trabalho e Arcabouços de colaboração.
► Serviços de Descobrimento de Software.
► Serviços de autorização de comunidade.
► Serviço de Colaboração.
19
Coletiva
► As
Funções da camada Coletiva podem ser
implementadas como um serviço
persistente, com protocolos associados ou
como SDKs com APIs associadas projetadas
para serem linkadas com aplicações. Em
ambos os casos, sua implementação pode
ser sobre a camada de Recursos.
20
Aplicações
21
Relação com outras tecnologias
► WWW
 A variedade da tecnologia da Web faz com seja
um ambiente atrativo para a construção
sistemas e aplicações.
 faltam a eles características necessárias para
ocorrer um modelo mais rico de iteração
 Os navegadores atuais normalmente utilizam
TLS para fazer autenticação, mas não suportam
login único e delegação
22
Relação com outras tecnologias
► Sistemas
de computação distribuída
 CORBA, Java Beans, J2EE e DCOM.
 A forma principal de interação é do tipo clienteservidor, e não de uso coordenado de recursos
múltiplos.
 Tornam mais fácil compartilhar recursos com
uma única organização.
 No entanto, esses mecanismos não resolvem os
requisitos específicos listados anteriormente.
23
Relação com outras tecnologias
► Sistemas
de computação distribuída
 As tecnologias de desenvolvimento de
aplicações distribuídas teriam que ser
adaptadas aos requisitos da Grade.
 Uma opção seria construir um serviço de Nomes
que utiliza o serviço de informação da Grade
para procurar fontes distribuídas de informação
através de grandes organizações virtuais.
24
Relação com outras tecnologias
► Internet
e Computação Ponto a Ponto
 Emule (Edonkey), Kazaa, Gnutella compartilham
arquivos.
 SETI@home e ProteinFolding@Home
compartilham ciclos de cpu.
 Não inter-operam entre si.
 Compartilham arquivos, por exemplo, mas sem
nenhum controle de acesso
25
Relação com outras tecnologias
► Internet
e Computação Ponto a Ponto
 Com a evolução dessas aplicações elas
acabaram por inter-operar e haverá uma
convergência de interesses entre computação
ponto a ponto, Internet e computação em
Grade.
26
Outras Perspectivas sobre Grades
► “Computação
em Grade é próxima geração
da Internet” – são protocolos adicionais que
são construídos sobre a tecnologia da
Internet. Qualquer recurso que esteja na
Grade, também está na Rede.
27
Outras Perspectivas sobre Grades
► “A
Grade é uma fonte de ciclos grátis” –
computação em Grade é controle de
compartilhamento. Os donos dos recursos
terão políticas de restrição ao acesso a eles,
dependendo do usuário.
28
Outras Perspectivas sobre Grades
► “A
Grade torna super computadores
desnecessários” – muitos problemas
precisam de super computadores para
serem resolvidos, com baixa latência e
comunicação rápida. Com a grade o acesso
a esses supercomputadores fica muito mais
fácil, fazendo com que aumente a demanda
por eles aumente.
29
Globus
►O
projeto do Kit de Ferramentas Globus tem
código fonte aberto.
► Incluem serviços e bibliotecas para
monitoração, descobrimento e
gerenciamento de recursos, tal como
segurança e gerenciamento de arquivos.
► As ferramentas são o centro dos projetos
científicos e de engenharia que somam
aproximadamente meio bilhão de dólares
por todo o mundo.
30
Globus
►A
pesquisa é o centro do projeto Globus.
► Os ramos de pesquisa atual são:
Gerenciamento de Recursos, Gerenciamento
e Acesso a Dados, Ambientes de
Desenvolvimento de Aplicações, Serviços de
Informação e Segurança.
► Não tem uma versão pra Windows ainda 
31
NetSolve
► Sistema
de cliente servidor que habilita
usuários a resolver problemas científicos
complexos remotamente.
► Permite que usuários acessem tanto
hardware quanto recursos de software
distribuídos pela rede.
32
NetSolve
► Alguns
dos objetivos do projeto são:
 facilidade de usar
 uso eficiente dos recursos
 habilidade de integrar componentes de software
arbitrários como recursos no sistema.
► Condor
– atualmente o NetSolve consegue
acessar os conjuntos Condor como um
conjunto computacional.
33
NetSolve
► Globus
– é usado pelo NetSolve, utiliza
serviços para detectar servidores com
problemas.
► Esta sua fase de teste o novo cliente
NetSolve que implementa um Proxy que
permite o cliente utilizar a infra-estrutura da
grade Globus disponível.
34
Condor
► Não
exatamente voltado para grades, mas
sim para clusters.
► O objetivo é desenvolver, distribuir e avaliar
mecanismos e políticas para suporte a
Computação de Alta Disponibilidade em
grandes coleções de recursos
computacionais distribuídos.
35
Condor
► Para
utilizar-se um software no sistema não
precisa ser recompilado.
► Se um software é linkado com a biblioteca
Condor, poderá fazer checkpoints.
► Permite a quase qualquer aplicação que
rode sem interação do usuário ser
gerenciado.
36
Condor - G
► Permite
acesso transparente a grades do
sistema Globus de forma transparente.
► É uma parte do gerenciador de tarefas do
Condor.
► Os usuários do sistema CONDOR têm então
uma janela para a Grade.
37
Conclusão
► Já
existem muitos sistemas de Grade.
► Mas estão tentando se comunicar de uma
forma ou de outra.
► Uma versão do Globus para Windows esta
em desenvolvimento.
► Com isso acontecerá uma maior
popularização das Grades.
38
Links
► Site
oficial do projeto Globus :
www.globus.org/
► Site oficial do projeto NetSolve:
icl.cs.utk.edu/netsolve/
► Site oficial do projeto Condor:
www.cs.wisc.edu/condor/
39
Perguntas
►?
40
Aplausos
► Clap,
Clap, Clap, Clap, Clap, Clap, Clap,
Clap, Clap, Clap, Clap, Clap, Clap, Clap,
Clap, Clap, Clap, Clap, Clap, Clap, Clap.
41