Computação em
Grade
Redes de computadores em grid.
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
camada 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 ) 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 interfaces 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
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.
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
Iniciado em 1997
 Consórcio: Argone National labs, U. of
chicago e U. of southern california
 www.globus.org
 Sistema de grade mais popular
 Código aberto
 Atualmente versão 3.x (terceira versão)
 Escrito em c.

30
Globus
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.

31
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

32
Condor
Iniciado em 1988
 University of wisconsin of madson.
 www.cs.wisc.edu/condor
 Derivado de um projeto antigo para Unix.
Remote Unix (1986)
 Pioneiro dos sistemas de computação em
grade.

33
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.

34
Condor
Pioneiro no conceito de HTC (High
throughput computing): Necessidade de
processamento por longos períodos (dias,
meses, anos).
 Utiliza tempo ocioso para cumprir tarefas
de HTC.

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 Condor:
www.cs.wisc.edu/condor/

39
Download

Aula 15 - professordiovani.com.br