Title: Computa
1Computação em Grade
- Um proposta de Arquitetura para protocolos entre
grades.
2Um 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.
3Um 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. -
4Um 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.
5O 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.
6O 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
7Para 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.
8O 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.
9Descriçã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.
10As camadas
11Base
- É 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.
12Base
- 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 infra-estrutura da Grade será
simplificada.
13Conectividade
- 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.
14Conectividade 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.
15Recursos
- 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.
16Recursos
- 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.
17Coletiva
- 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.
18Coletiva
- 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
19Coletiva
- 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.
20Coletiva
- 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.
21Aplicações
22Relaçã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
23Relação com outras tecnologias
- Sistemas de computação distribuída
- CORBA, Java Beans, J2EE e DCOM.
- A forma principal de interação é do tipo
cliente-servidor, 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.
24Relaçã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.
25Relação com outras tecnologias
- Internet e Computação Ponto a Ponto
- Emule (Edonkey), Kazaa, Gnutella compartilham
arquivos. - SETI_at_home e ProteinFolding_at_Home compartilham
ciclos de cpu. - Não inter-operam entre si.
- Compartilham arquivos, por exemplo, mas sem
nenhum controle de acesso
26Relaçã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.
27Outras 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.
28Outras 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.
29Outras 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.
30Globus
- 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.
31Globus
- 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 ?
32NetSolve
- 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.
33NetSolve
- 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.
34NetSolve
- 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.
35Condor
- 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.
36Condor
- 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.
37Condor - 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.
38Conclusã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.
39Links
- 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/
40Perguntas
41Aplausos
- Clap, Clap, Clap, Clap, Clap, Clap, Clap, Clap,
Clap, Clap, Clap, Clap, Clap, Clap, Clap, Clap,
Clap, Clap, Clap, Clap, Clap.