slide1
Download
Skip this Video
Download Presentation
Grids Computacionais

Loading in 2 Seconds...

play fullscreen
1 / 57

Grids Computacionais - PowerPoint PPT Presentation


  • 54 Views
  • Uploaded on

O que são Grids? Walfredo Cirne [email protected] Laboratório de Sistemas Distribuídos - LSD Universidade Federal de Campina Grande - UFCG. Grids Computacionais. A metáfora da Rede Elétrica. Grid Computacional (fonte de serviços e recursos). Para que serve um Grid?.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Grids Computacionais' - mallory-berry


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1
O que são Grids?Walfredo [email protected] Laboratório de Sistemas Distribuídos - LSDUniversidade Federal de Campina Grande - UFCG
grids computacionais
Grids Computacionais

A metáfora da Rede Elétrica

Grid Computacional

(fonte de serviços e recursos)

o impacto de grids
MegaCiclos

Databank Inc.

Embratel

Mastercard

O Impacto de Grids

VR Simul

Grid Auditing

hist rico de grids
Histórico de Grids
  • A idéia de Grid surgiu na comunidade de Computação de Alto Desempenho há pouco menos de 10 anos
    • Agora os primeiros Grids para Alto Desempenho começam a entrar em produção
  • Há 3 anos, o mainstream da computação percebeu a possibilidade de usar tecnologia Grid para transformar computação em serviço
    • A tecnologia Grid está se fundindo com Web Services
  • Grids para Alto Desempenho = Grids de Serviço + Serviço de Execução Remota
agenda
Agenda
  • Histórico
  • Grids de Serviços
    • Aspectos Fundamentais
  • Grids para Alto Desempenho
    • Desafios adicionais
servi os computacionais
Serviços Computacionais
  • Definição de Serviço
    • Mercadoria imaterial provida por uma entidade legal para satisfazer as necessidades de outra entidade
  • Arquiteturas Orientadas a Serviços (SOA)
  • Já existiam tecnologias para SOA
    • Ex.: CORBA, RMI, etc...
  • Interoperabilidade é muito importante
    • Padronização
    • Fraco acoplamento
    • Web Services
grids de servi os
Grids de Serviços
  • Infra-estrutura de Serviços sob Demanda
  • Características
    • Heterogeneidade
    • Dispersão
    • Controle Distribuído
    • Vários Domínios Administrativos
  • Interoperabilidade
    • Padronização
aspectos fundamentais
Aspectos Fundamentais
  • Descoberta de Serviços
  • Autenticação e Autorização
  • Auditoria de Serviços
  • Composição de Serviços
  • Padronização
descoberta de servi os
publica

consulta

requisição

resposta

Descoberta de Serviços
  • Fundamental para Serviços sob Demanda
  • Uma visão simples da arquitetura

“Catálogo”

Cliente

Provedor de Serviços

descoberta de servi os1
Descoberta de Serviços
  • Universal Description, Discovery and Integration (UDDI)
slide15
MDS
  • Monitoring and Discovery System
    • Index Service
    • Trigger Service
    • Aggregator Service
  • Utilização
    • Escalonamento e seleção de réplicas
    • Avaliar estado dos serviços
    • Notificação sobre a situação de serviços e recursos
  • Globus Toolkit 4 (MDS4)
aspectos fundamentais1
Aspectos Fundamentais
  • Descoberta de Serviços
  • Autenticação e Autorização
  • Auditoria de Serviços
  • Composição de Serviços
  • Padronização
autentica o e autoriza o
Autenticação e Autorização
  • Com vários domínios administrativos, como se dá a autenticação e autorização?
  • Idealmente gostaríamos de ter um login único
  • Segurança é um aspecto muito importante
  • Algumas especificações
    • WS-Security
      • Mensagens SOAP assinadas e criptografadas
    • WS-SecureConversation
      • Contexto seguro para troca de mensagens
    • WS-Policy
      • Define políticas de uso do serviço
autentica o e autoriza o1
Autenticação e Autorização
  • Globus GSI – Grid Security Infrastructure
    • Transport-level security
      • Privacidade no canal de comunicação
    • Message-level security
      • Proteção das mensagens SOAP
  • Autenticação baseada em:
    • Certificados X.509 / Login
  • Autorização baseada em:
    • grid-mapfile
    • SAML – Security Association Markup Language
aspectos fundamentais2
Aspectos Fundamentais
  • Descoberta de Serviços
  • Autenticação e Autorização
  • Auditoria de Serviços
  • Composição de Serviços
  • Padronização
auditoria de servi os
Auditoria de Serviços
  • Clientes e Provedores desejam garantias
  • SLA – Service Level Agreements (contrato)
  • Falta de confiabilidade entre as partes
    • Provedor pode não fornecer o serviço como prometido no contrato
    • Cliente pode não cumprir o contrato de utilização do serviço
  • Mecanismos de Auditoria
  • Monitoração de Serviços e Clientes
aspectos fundamentais3
Aspectos Fundamentais
  • Descoberta de Serviços
  • Autenticação e Autorização
  • Auditoria de Serviços
  • Composição de Serviços
  • Padronização
composi o de servi os
Composição de Serviços
  • Construção de novos serviços através da agregação de funcionalidades
  • Novos serviços baseados em serviços mais básicos
  • Uma agência de turismo fornece o serviço de venda de pacotes de viagens compondo serviços de reserva em hotéis, locadora de carros, consulta em administradoras de cartões de crédito, etc...
composi o de servi os1
Composição de Serviços
  • Vantagens
    • Abstração da Complexidade
    • Reutilização de funcionalidades
  • Linguagens para composição
    • Definem um fluxo para integração de serviços
    • XLANG, WSFL, BPEL
    • BPEL = WSFL (IBM) + XLANG (Microsoft)
aspectos fundamentais4
Aspectos Fundamentais
  • Descoberta de Serviços
  • Autenticação e Autorização
  • Auditoria de Serviços
  • Composição de Serviços
  • Padronização
padroniza o
Padronização
  • Open Grid Services Architecture – OGSA
    • Define padrões arquiteturais e requisitos para a infra-estrutura
    • OGSA = O que?
  • Open Grid Services Infrastructure – OGSI
    • Define o comportamento e relacionamento dos componentes da arquitetura
    • OGSI = Como?
    • Globus Toolkit 3
  • Alinhamento com Web Services
    • Web Service Resource Framework - WSRF
slide26
WSRF
  • Stateless ou Stateful
  • OGSI define:
    • Stateful Web Services = Grid Services
  • WSRF evoluiu de OGSI
    • Stateful Web Services = Web Service + Stateful Resources
    • Introdução do conceito WS Resource
    • Quem possui estado agora é um “Recurso” controlado pelo Serviço
    • Padronização no gerenciamento de estados
    • Recurso tem uma conotação diferente daquela usada pela comunidade de Alto Desempenho, o que torna esta discussão um pouco confusa
padroniza o ainda complexa
Padronização ainda complexa

ASAP (Asynchronous Service Access Protocol), BPEL4WS (Business Process Execution Language), ebSOA TC (Electronic Business Service Oriented Architecture), ebXML (Electronic Business XML), International Health Continuum TC, oBIX TC , SAML (Security Assertion Markup Language), SOAP (Simple Object Access Protocol), SOAP MTOM (SOAP Message Transmission Optimization Mechanism), ranslation WS TC , UBL (Universal Business Language), UDDI (Universal Description, Discovery, and Integration), WS-Addressing, WS-AtomicTransaction, WSBPEL (Business Process Execution Language), WS-CAF (WS Composite Application Framework ), WS-CF (WS Coordination Framework), WS-Choreography , WS-CDL (Web Services Choreography Description Language), WS-Coordination, WS-CTX, WS Context, WS-Discovery (Web Services Dynamic Discovery), WSDL (WS Description Language), WSDM (WS Distributed Management), WS-Enumeration, WS-Eventing, WS-Federation (Web Services Federation Language), WSIL (WS Inspection Language), WS-Manageability, WS-MetadataExchange (Web Services Metadata Exchange), WS-MessageDelivery, WS-Notification, WS-Policy, WS-Provisioning, WS-Reliability, WS Reliable Messaging, WS-RF (WS-Resource Framework), WS-Reliablemessaging , WSRP (WS Remote Portals), WS-Security, WS-SecureConversation, WS-SecurityPolicy, WS Security Services TC, WS-TM (WS Transaction Management), WS-Transfer, WS-Trust, XML-Encryption, XML-Signature, CDDLM (Configuration Description, Deployment, and Lifecycle Management)

agenda1
Agenda
  • Histórico
  • Grids de Serviços
    • Aspectos Fundamentais
  • Grids para Alto Desempenho
    • Desafios Adicionais
grids para alto desempenho
Grids para Alto Desempenho
  • Grids surgiram como plataformas de execução de aplicações paralelas
    • São os grids para alto desempenho
  • Grids para alto desempenho necessitam do serviço de execução remota
    • Maior flexibilidade
      • Serviço pode ser convertido em qualquer outro
    • Maior complexidade
      • Segurança
      • Escalonamento
plataformas de execu o de aplica es paralelas
Plataformas de Execução de Aplicações Paralelas
  • SMPs acoplamento
  • MPPs
  • NOWs
  • Grids distribuição
smp symmetric multiprocessor
SMP: Symmetric MultiProcessor

Memória

CPU

CPU

...

CPU

mpp massive parallel processor
Escalonador

CPU

CPU

CPU

...

Mem.

Mem.

Mem.

requisições

MPP: Massive Parallel Processor
now network of workstations
NoW: Network of Workstations

requisições

requisições

requisições

CPU

CPU

CPU

...

Mem.

Mem.

Mem.

grids
Grids

CPU

CPU

CPU

...

Mem.

Mem.

Mem.

Internet

caracter sticas das plataformas de execu o
SMPs

MPPs

NOWs

Grids

Conectividade

excelente

muito boa

boa

média/ruim

Heterogeneidade

nula

baixa

média

alta

Compartilhado

não

não

sim

sim

Imagem

única

comum

comum

múltipla

Escala

10

1.000

1.000

100.000

Características das Plataformas de Execução
grids podem diferir bastante
Grids podem diferir bastante
  • TeraGrid
    • 4 centros de supercomputação norte-americanos
    • Cada centro com milhares de processadores dedicados ao TeraGrid
    • Canais de altíssima velocidade (40 GBits/s)
    • Poder agregado de 13,6 TeraFlops
  • [email protected]
    • Ciclos ociosos de 3.6 milhões de processadores espalhados em 224 países
    • Computa em média a uma velocidade de 14 Teraflops
desafios adicionais em grids para alto desempenho
Desafios Adicionais em Grids para Alto Desempenho
  • Execução Remota e Identidade Local
  • Imagem do Sistema
  • Proteção dos Recursos e das Aplicações
  • Escalonamento
globus gram e gsi
Globus GRAM e GSI
  • Mapeamento seguro da identificação GSI global para um userid local
    • Global: C=US, O=University of California San Diego, OU=Grid Computing Lab, CN=Walfredo Cirne
    • Local: walfredo (em thing1), u15595 (em bh)
  • Submissão e controle de tarefas via GRAM
    • Independência do escalonador de recurso
    • Proxy para delegação de autenticação
imagem do sistema
Imagem do Sistema
  • Imagem do sistema são as abstrações que nos permite lidar com um sistema computacional
    • Arquivo, diretório, processo, usuário, grupo, etc
  • Com vários domínios administrativos, a imagem do sistema é heterogênea
    • Complica tremendamente o uso do Grid
  • Soluções
    • Imagem do sistema implementada a nível de usuário [exemplo: Condor]
    • Novas abstrações para se lidar com o Grid [exemplo: MyGrid]
abstra es ourgrid
Abstrações OurGrid
  • Máquina base  máquina do grid
  • Tarefa = inicial + remota + final
    • inicial e final rodam na máquina do grid
    • remota roda na máquina do grid
  • Armazenamento
    • Playpen
    • Storage
    • Transferência de arquivos/Espelhamento
fatorando com ourgrid
Fatorando com OurGrid

task:init: put ./Fat.class $PLAYPENremote: java Fat 3 18655 34789789799 output-$TASKfinal: get $PLAYPEN/output-$TASK results

task:init: put ./Fat.class $PLAYPENremote: java Fat 18656 37307 34789789799 output-$TASKfinal: get $PLAYPEN/output-$TASK results

task:init: put ./Fat.class $PLAYPENremote: java Fat 37308 55968 34789789799 output-$TASKfinal: get $PLAYPEN/output-$TASK results

....

seguran a
Segurança
  • Autenticação e Autorização
    • Requisito de qualquer grid, porém insuficiente quando há execução remota
  • Proteção do Recurso
    • Recurso roda código de terceiros
  • Proteção da Aplicação
    • Aplicação roda em recurso de terceiros
  • Privacidade dos Dados
    • Dado é processado em recurso de terceiros
    • Problema muito complexo!!
prote o ao recurso
Proteção ao Recurso
  • Política por aplicação através de interceptação de system call
    • Fácil de instalar, suporta qualquer linguagem, difícil de configurar para garantir segurança
  • Virtualização específica: Java
    • Fácil de instalar, suporta linguagem específica, fácil de configurar
  • Virtualização geral: VMWare, Virtual PC, Xen
    • Difícil de instalar, suporta qualquer linguagem, fácil de configurar
gridbox intercepta o de system call
GridBox: Interceptação de System Call
  • Interceptação pela substituição de shared libraries
  • Define política de acesso por aplicação

#Allow read-write access

#to "input.txt"and "output.txt"

rule fopen allow input.txt

rule fopen allow output.txt

#Allow read-only access to

#/etc/hosts file

rule fopen readonly /etc/hosts

#Disable all other accesses

rule fopen deny *

#Limit maximum file size

limit FILE_SIZE 1000000

#Allow connections to trusted machines

rule connect allow 200.18.98.120:80

rule connect allow 200.18.98.132:80

rule connect allow 200.18.99.221:80

#Allow SSH connection

rule connect allow 200.18.98.22:22

#Disallow any other connection

rule connect deny *:*

swan seguran a no ourgrid
SWAN: Segurança no OurGrid
  • Aplicações Bag-of-Tasks só precisarem se comunicar para receber a entrada e devolver a saída
    • Isto é feito pelo próprio OurGrid
  • A tarefa remota roda dentro de uma máquina virtual Xen, sem acesso a rede, e com acesso a disco limitado “por hardware” a uma partição especifica
escalonamento de aplica o
Escalonamento de Aplicação
  • Não é possível ter um escalonador controlando o Grid
    • Tamanho e dispersão
    • Múltiplos domínios administrativos
  • Escalonadores de recurso
    • Controlam alguns recursos no Grid
  • Escalonadores de aplicação
    • Escolhem quais recursos usar
    • Particionam o trabalho da aplicação
escalonamento de aplica o1
Escalonador de Aplicação

Escalonador de Aplicação

Escalonador de Recurso

Escalonador de Recurso

Escalonador de Recurso

Escalonamento de Aplicação
escalonador de aplica o
Escalonador de Aplicação
  • Necessita de informações sobre o Grid
    • Sistemas de monitoramento: NWS, Remos
    • Informações de monitoração são usadas em previsões de performance
  • Necessita de um modelo de performance da aplicação
    • Portanto, funciona apenas para uma classe de aplicações
jacobi apples
Jacobi AppLeS
  • Escalonador pioneiro para Jacobi 2D
  • Escolhe quais processadores usar
  • Distribui o trabalho entre os processadores escolhidos
  • Usa predições NWS
  • Usa um modelo de performance de Jacobi
    • Ti = AiPi + Ci, onde:
    • Ti é o tempo para o processador i executar uma iteração
    • Ai é a área da submatriz alocada ao processador i
    • Pi é o tempo que o processador i leva para computar um elemento
    • Ci é o tempo que o processador i leva para comunicar suas fronteiras
work queue with replication
Work Queue with Replication
  • Solução de escalonamento para aplicações Bag of Tasks
  • Não depende de informação sobre o Grid ou sobre as tarefas
  • Envia uma tarefa para cada máquina disponível
  • Quando não há mais tarefas para enviar, as ainda em execução são replicadas
  • Eficiente, mas desperdiça ciclos
  • Escalonador do OurGrid
conclus es e tend ncias
Conclusões e Tendências
  • Grids de Alta Performance estão se consolidando
  • Grids de Serviços fazem parte do futuro da computação distribuída
    • Interoperabilidade e Padronização são palavras de ordem
algumas refer ncias
Algumas Referências
  • http://www.ourgrid.org
  • http://www.globus.org
  • http://www.cs.wisc.edu/condor/
  • http://ggf.org
  • http://gridcafe.web.cern.ch/gridcafe/
ad