57
Prof. Luiz Fernando Bittencourt IC - UNICAMP MO809L Tópicos em Sistemas Distribuídos 1° semestre, 2014

MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

MO809L Tópicos em Sistemas Distribuídos 1° semestre, 2014

Page 2: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

(...) Cluster Computing

Page 3: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Cluster Computing • Necessidade crescente de processamento

•  1. Melhorar a velocidade de processadores e outros componentes •  Restrito pela velocidade da luz, leis da termodinâmica e pelos

altos custos de fabricação de processadores

•  2. Conectar múltiplos processadores e coordenar seus esforços computacionais. •  Computadores paralelos •  Permitir o compartilhamento de tarefas computacionais entre

processos

Page 4: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Cluster Computing • No geral, 3 maneiras de melhorar desempenho:

•  Trabalhar mais •  Trabalhar de forma mais inteligente •  Pedir ajuda

•  Traduzindo para a computação: •  Usar hardware mais rápido •  Otimizar algoritmos e técnicas utilizadas para resolver os problema

computacionais •  Utilizar múltiplos computadores para realizar uma tarefa particular

• Computação paralela •  Uma das melhores maneiras de transpor os gargalos de um único

processador •  Importante: preço/desempenho

Page 5: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Cluster Computing

Page 6: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Cluster Computing •  Tornaram-se populares pela razão preço/desempenho.

•  Estações mais potentes e mais baratas •  Rede melhor

• Computação intensiva paralela (ou alta disponibilidade) • Ex.: Beowulf. Fig 22.

•  Mestre •  Alocação de nós / fila / escalonamento •  Interface para usuário •  Executa middleware para execução de programas e gerência do

cluster. •  Nós de computação: SO padrão pode ser suficiente.

•  Bibliotecas de execução em sistemas paralelos •  Migração de processos: nó nativo para qualquer outro nó.

Page 7: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Arquiteturas paralelas

• Massively Parallel Processors (MPP) • Symmetric Multiprocessors (SMP) • Cache-Coherent Nonuniform Memory Access (CC-NUMA) • Distributed Systems • Clusters

Page 8: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

• MPP •  Sistema de processamento paralelo sem compartilhamento de

recursos. •  Centenas de nós ligados por um switch/rede de alta velocidade. •  Cada nó consiste de uma memória principal e um ou mais

processadores. •  Rodam diferentes cópias do SO.

• SMP •  2-64 processadores. •  Arquitetura com tudo compartilhado. •  Todos os processadores compartihlam todos os recursos

disponíveis globalmente. •  Roda única cópia do SO.

Arquiteturas paralelas

Page 9: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Arquiteturas paralelas •  CC-NUMA

•  Sistema escalável multiprocessado NUMA que possui coerência de cache

•  Cada processador tem uma visão global de toda a memória •  Sistemas distribuídos

•  Rede com computadores independentes. •  Múltiplas imagens de sistema com diferentes SOs. •  Máquinas individuais podem ser combinação de MPPs, SMPs, clusters

e computadores individuais.

•  Clusters •  Uma coleção de PCs interconectados por uma rede de alta velocidade

– network of workstations (NOW). •  Funciona como uma coleção integrada de recursos. •  Tem uma única imagem de sistema em todos os nós.

Page 10: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Características

Page 11: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Motivação para uso de NOW

• Estações de trabalhos tornaram-se mais potentes. • Comunicação tornou-se mais rápida. • Estações de trabalho são fáceis de integrar em redes

existentes. • Computadores são tipicamente subutilizados. •  Ferramentas de desenvolvimento para estações de trabalho

são mais maduras. • Estações de trabalhos são baratas e com disponibilidade

imediata. • Clusters podem ser facilmente expandidos.

Page 12: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Possibilidades

• Processamento paralelo: construir sistemas MPP (massively parallel processors)/DSM (distributed shared memory) para processamento paralelo.

• Utilizar memória de cada estação como um cache DRAM agregado.

• Software RAID •  Array redundante de discos. •  Barato, escalável, alta disponibilidade de dados, redundância. •  Possibilidade de I/O paralelo para as aplicações.

• Múltiplas redes •  Utilização de múltiplas redes para realizar interconexão dos nós. •  Transferência paralela de dados entre nós.

Page 13: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Clusters

• Um cluster (ou aglomerado) é um tipo de sistema de processamento paralelo ou distribuído, consistindo de uma coleção de computadores independentes interconectados e trabalhando cooperativamente como um único e integrado recurso computacional.

• Um nó •  Sistema mono ou multi-processado com memória, dispositivos de I/O e

sistema operacional. •  2 ou mais computadores (nós) conectados. •  Em apenas um gabinete ou separado e conectado por uma LAN. •  Se mostra como um único sistema a usuários e aplicações.

•  Fig. 41.

Page 14: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Clusters - Componentes

• Múltiplos computadores de alto desempenho. • PCs • Estações de trabalho • SMPs (CLUMPS) • Sistemas HPC distribuídos (metacomputing).

• Sistemas operacionais • Linux (Beowulf) • Windows server • SUN Solaris • MOSIX (Multicomputer OS)

Page 15: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Clusters - Componentes

• Redes / switches • Ethernet (fast/giga) > • SCI (Scalable Coherent Interface) < • ATM < • Myrinet <

• TOP500%: 28.2 (2005); 15.8 (2006); 3.6 (2007); 0.8 (2011).

•  Infiniband >

Page 16: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Clusters - Componentes

Page 17: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Clusters - Classificação

• Aplicação alvo • High performance cluster – aplicações desafiadoras • High availability cluster – aplicações críticas

• Domínio/posse do nó • Clusters dedicados • Clusters não dedicados

•  Computação paralela adaptativa •  Multiprocessamento comunitário

Page 18: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Clusters - Classificação

• Hardware do nó • Clusters de PCs (CoPs) / Pilhas de PCs (PoPs). • Clusters de Workstations (CoWs). • Clusters de SMPs (CLUMPs).

• Configuração do nó • Clusters homogêneos

• Todos os nós tem arquitetura similar e mesmo SO. • Clusters heterogêneos

• Nós têm arquitetura diferente e rodam SOs diferentes.

Page 19: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Clusters - Classificação

• Nível de aglomeração • Cluster de grupo (até 99 nós) • Cluster departamental (dezenas a centenas) • Cluster organizacional (várias centenas) • Metacomputadores nacionais (WAN / Internet-based).

• Metacomputadores internacionais (Internet-based, milhares a milhões). •  Metacomputação •  Computação baseada em web. •  Computação baseada em agentes.

Page 20: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Clusters - Rede

• Parâmetros de QoS importantes no serviço de comunicação (protocolos/roteamento):

• Latência • Largura de banda • Confiabilidade • Tolerância a falhas • Controle de jitter

• Rede provê meio para implementação de métodos de comunicação • RPC, MPI, streaming, multicast, DSM, etc.

Page 21: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Clusters – Single System Image (SSI)

• SSI – ilusão criada por software ou hardware que apresenta a coleção de recursos como um único e mais poderoso recurso computacional.

• Faz com que o cluster pareça ser uma máquina única para o usuário, aplicações, sistema operacional e rede.

Page 22: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Clusters – Single System Image (SSI)

• Fornece visão direta e simples dos recursos e atividades no sistema, de qualquer nó do cluster.

• Livra o usuário da necessidade de saber onde uma aplicação executará.

• Livra o operador de saber onde um recursos está localizado.

• Facilita administração do sistema e das aplicações.

• Fornece migração de processos e balanceamento de carga transparentes.

Page 23: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Clusters – Single System Image (SSI)

•  Suportado por um middleware que reside entre o SO e o ambiente de usuário.

• Middleware consiste de basicamente 2 subcamadas: •  Infraestrutura de SSI

•  “Cola” SOs dos nós para fornecer acesso unificado aos recursos.

•  Infraestrutura de disponibilidade • Permite serviços como checkpointing, failover automático, recuperação de falhas,

Page 24: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Clusters – Single System Image (SSI)

• Ponto de entrada único •  Há único endereço para conectar no cluster, apesar de o login

remoto poder ser fornecido por diversos nós.

•  Interface de usuário única •  Usuário deve poder utilizar o cluster por uma única interface.

• Espaço de processos único •  Todos os processos têm id glogal, não importa em que nó estão

executando. Comunicação remota pode ser através de sinais e pipe. Suporte à gerência global de processos como se estivessem em uma única máquina.

Page 25: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Clusters – Single System Image (SSI)

• Espaço de memória único •  Ilusão de única memória, que pode ser na verdade um conjunto

de memórias distribuídas.

• Espaço de E/S único •  Permite que qualquer nó realize operações de E/S em

dispositivos locais ou remotos. • Hierarquia de arquivos única

•  Ao entrar no sistema o usuário vê um único sistema de arquivos sob a mesma raiz de diretórios, integrando discos locais e remotos.

Page 26: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Clusters – Single System Image (SSI)

• Sistema de gerência de tarefas único •  Sob um único escalonador global, tarefas podem ser submetidas

de qualquer nó e podem requisitar qualquer quantidade de nós para execução paralela.

• Ponto único de gerência e controle •  O cluster todo, e cada nó individualmente, pode ser configurado,

monitorado, testado e controlado utilizando uma única interface.

• Checkpointing e migração de processos • Armazena estado do processo e resultados intermediários

em memória ou disco para suportar recuperação quando ocorre falha.

• Migração de processos para balanceamento de carga.

Page 27: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Clusters – Single System Image (SSI)

•  Fig. 42. • Fornece visão global simples dos recursos e atividades no sistema.

• Livra o usuário da necessidade de saber onde uma aplicação executará.

• Livra o operador de saber onde um recursos está localizado.

• Permite centralizar/descentralizar controle e gerência do sistema.

• Simplifica gerência / reduz custos. • Promove desenvolvimento de ferramentas padronizadas.

Page 28: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Clusters – Objetivos do middleware

• Transparência na gerência de recursos •  Permite a utilização do cluster sem conhecimento da infra-

estrutura do sistema. •  Usuário recebe uma visão globalizada do sistema de arquivos,

processos e rede. • Desempenho escalável

•  Expansão fácil com desempenho. •  SSI deve suportar balanceamento de carga e paralelismo

através da distribuição de carga entre nós. • Disponibilidade

•  Serviços do middleware devem estar disponíveis sempre. •  Falhas devem ser recuperável sem afetar aplicações. •  Tratar de consistência de dados quando replicados.

Page 29: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Clusters – Objetivos do middleware

• Espaço de I/O único •  Qualquer nó pode acessar qualquer periférico/disco sem conhecimento

sobre sua localização.

• Espaço de processos único •  Processos são criados no sistema como em um único recurso;

comunicam-se por sinal, pipes, etc., como se estivessem em um único nó.

• Checkpointing e migração de processos

Page 30: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Clusters – Sistemas/ferramentas

• Nimrod – parametric applications • Condor / HTCondor (Fig. 43) • DAGMan • Beowulf • Paradyn / parmon • Cluster on-the-fly (P2P scheduling).

Page 31: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Clusters – Pontos a considerar

• Aumento de desempenho de disco > 10% / ano (até SSDs...).

• Network RAM: paginar para memória distribuída ao invés de usar disco local.

• RAID distribuído. • Rede com múltiplos caminhos. • Eficiência de energia.

Page 32: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Grades Computacionais

Page 33: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Metacomputadores • Um ambiente dinâmico que possui um conjunto de recursos que podem entrar e sair do ambiente quando desejarem. • Nós são máquinas independentes

• “The use of powerful computing resources transparently available to the user via a networked environment” (Catlett & Smarr).

• Supercomputador virtual em uma rede.

Page 34: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Metacomputadores • Um metacomputador precisa:

•  Integração de recursos software e hardware em rede.

•  Implementação de middleware para fornecer transparência dos recursos disponíveis.

• Desenvolvimento e otimização de aplicações para utilização eficiente dos recursos.

Page 35: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Metacomputação – porque é necessaria?

• Necessidades computacionais são infinitas. • Recursos computacionais e financeiros são finitos.

• Usuários sempre querem computadores mais “potentes”.

• Utilizar de alguma forma unificada os milhões de computadores existentes e já interconectados.

• Necessário acesso “sem costuras”.

Page 36: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Grades Computacionais • Ambiente de metacomputação. • Descreve uma fonte universal de computação.

• Fornece meios para acessar recursos computacionais avançados, bases de dados, sensores, e outros dipositivos.

• Fracamente acopladas, heterogêneas e geograficamente distribuídas.

• Analogia com grids elétricos.

Page 37: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Page 38: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Page 39: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Grades Computacionais • Uma grade é uma infraestrutura que agrega:

• Computadores (PCs, estações de trabalho, clusters, supercomputadores, laptops, pdas, smartphones, ...)

• Software (por exemplo, uso sob demanda de aplicações caras).

• Bancos de dados (por exemplo, acesso transparente a bancos de dados de genomas/proteínas).

•  Instrumentos especiais (microscópios, lasers, telescópios,...).

• Pessoas (ou animais...?).

Page 40: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Grades Computacionais • Acesso pela internet, apresentando-se como um único recurso integrado.

Page 41: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Grades Computacionais • Supercomputação distribuída. • Engenharia colaborativa. • High Throughput Computing.

• Simulações de larga escala e estudo de parâmetros.

• Acesso remoto a software / aluguel de software. • Computação com uso intensivo de dados. • Computação sob demanda.

Page 42: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Grades Computacionais

“The global computational grid is expected to drive the economy of the 21st century similar to the electric

power grid that drove the economy of the 20th century”

Page 43: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Grades Computacionais • Arquitetura virtual de computação. •  Individualmente, componentes não são tão importantes.

• Chave: como esses componentes trabalham em conjunto como único recurso.

• Componentes: • Processadores e memória. • Redes e software de comunicação. • Ambiente virtual

•  Configurar, gerenciar e manter o sistema computacional virtual.

• Acesso e recuperação de dados remotos / geograficamente distribuídos.

Page 44: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Grades Computacionais

Page 45: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Princípios gerais (1/2) • Não interferir na administração ou autonomia dos sites participantes.

• Não comprometer segurança de usuários ou sites remotos.

• Não precisar trocar sistema operacional, protocolos de rede ou serviços.

• Permitir sites entrarem ou sairem do ambiente como quando desejarem.

• Não forçar utilização de paradigmas de programação, linguagens ou ferramentas.

Page 46: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Princípios gerais (2/2) • Fornecer infra-estrutura confiável e tolerante a falhas, sem único ponto de falha.

• Prover suporte a componentes heterogêneos. • Utilizar padrões e tecnologias existentes • Ser capaz de interagir com aplicações legadas. • Operar sobre um espectro completo de tecnologias de hardware e software.

•  Idealmente, deve fornecer acesso “sem costura”, onde descontinuidades físicas/lógicas entre plataformas, protocolos e domínios administrativos devem ser completamente transparentes.

Page 47: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Middleware para grades • Hierarquia administrativa

•  Definir como o ambiente se divide para tratar de sua extensão global.

• Serviços de diretório •  Mecanismos para registrar e obter informações sobre a estrutura

computacional, recursos, serviços e seus estados.

• Processos, threads, controle de concorrência •  Compartilhar dados e manter consistência com múltiplos acessos.

• Tempo/relógios •  Algoritmos dependem de sincronização de relógios. •  Manter consistência de dados e utilizado em protocolos de

autenticação (Kerberos).

Page 48: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Middleware para grades • Serviço de nomes

•  Fornecer um espaço de nomes uniforme dentro da infraestrutura multi-institucional.

• Sistema de arquivos distribuído e cache •  Espaço de nomes global e uniforme. •  Suportar diferentes protocolos de E/S/. •  Necessitar de pouca ou nenhuma modificação nas aplicações. •  Prover mecanismos para otimização de desempenho.

Page 49: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Middleware para grades • Segurança e autenticação

• Confidencialidade: prevenir revelação/publicação não autorizada de dados.

•  Integridade: prevenir adulteração de dados. • Autorização: verificar identidade. • Accountability/Responsabilização: saber a quem culpar.

• Estado do sistema e tolerância a falhas • Gerência de recursos e escalonamento

• Distribuir eficientemente as aplicações que utilizam o ambiente computacional distribuído.

Page 50: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Grid Computing • Termo surgiu no meio da década de 90. • Originalmente para colaborações científicas.

• Análise de dados computacionalmente caras, dividindo computação e armazenamento.

•  Federação de conjuntos de dados científicos distribuídos. • Visualização colaborativa de conjuntos de dados

científicos. • Congregação de instrumentos e computadores/arquivos

remotos. • Necessidade de compartilhamento de recursos coordenado e

resolução de problemas em organizações virtuais dinâmicas e multi-institucionais.

Page 51: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Organizações virtuais • Diversos cenários onde há variação do número e tipo de participantes, tipos de atividades, duração e escala das interações e recursos compartilhados. • Contratação de empresas de análise de risco / viabilidade. • Consórcios industriais para desenvolvimento de produtos. • Resposta a desastres. • Petabytes de dados de aceleradores de partículas. •  Jogos em larga escala com processamento de dados

distribuído. • Simulações biológicas e químicas que envolvem diferentes

conjuntos de dados espalhados por diversas universidades/centros de pesquisa.

Page 52: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Organizações virtuais • Como compartilhar os recursos para alcançar os objetivos das tarefas? •  Mais do que apenas troca de documentos. •  Acesso direto a sistemas e softwares remotos, computadores, dados,

sensores, etc. •  Necessidade de compartilhamento de recursos coordenado e

resolução de problemas em organizações virtuais dinâmicas e multi-institucionais.

•  Compartilhamento necessário, controlado, com consumidores e fornecedores de recursos definindo claramente e precisamente o que pode ser compartilhado e sob quais condições.

• Um conjunto de indivíduos e/ou instituições definidas por tais regras de compartilhamento formam a chamada Organização Virtual.

Page 53: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Organizações virtuais • Organizações virtuais permitem que grupos díspares de organizações e/ou indivíduos compartilhem recursos de forma controlada de forma que seus membros colaborem para alcançar um objetivo global.

• Podem variar amplamente em escopo, propósito, tamanho, duração, estrutura, comunidade.

• Necessidade de relacionamentos de compartilhamento altamente flexíveis.

Page 54: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Organizações virtuais

Page 55: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Organizações virtuais • Compartilhamento de recursos pode ser condicional

• Quando, onde, o que pode ser feito

• Restrições de uso e propriedades requerem mecanismos para expressar políticas, estabelecer identidades, e determinar quando uma operação é consistente com a relação de compartilhamento (autorização).

• Relações podem variar com o tempo •  Recursos envolvidos, natureza do acesso permitido, quem pode

acessar. •  Caracterização da natureza das relações em um ponto específico do

tempo.

Page 56: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Organizações virtuais • Delegar autoridade torna-se importante para coordenar operações sobre múltiplos recursos.

• Qualidade de serviço, antes necessária em dados e processamento concentrado, agora precisa ser tratada em um sistema amplamente distribuído e compartilhado entre organizações.

Page 57: MO809L - Instituto de Computaçãobit/ensino/mo809_1s14/aula08... · 2014. 4. 3. · Conectar múltiplos processadores e coordenar seus ... • Fornece visão direta e simples dos

Prof. Luiz Fernando Bittencourt IC - UNICAMP

Projetos • OurGrid •  Integrade • Globus • Legion • WebFlow • Pegasus • WLCG • Grid5000