Grades Computacionais: Uma Introdução Prática



Documentos relacionados
InteGrade: Middleware para Computação em Grade Oportunista

Tipos de Sistemas Distribuídos (Cluster e Grid)

Bancos de dados distribuídos Prof. Tiago Eugenio de Melo

O que é Grid Computing

1

SISTEMAS DISTRIBUÍDOS

Supercomputadores dominavam o mercado

MÓDULO 8 ARQUITETURA DOS SISTEMAS DE BANCO DE DADOS

Arquitetura dos Sistemas de Informação Distribuídos

Projeto de Sistemas Distribuídos. Prof. Andrêza Leite

Profs. Deja e Andrei

Aula 03-04: Modelos de Sistemas Distribuídos

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Estratégia de Implantação do GridUNESP. II Brazilian LHC Computing Workshop - GridUNESP

SISTEMAS DISTRIBUIDOS

Padrões Arquiteturais. Sistemas Distribuídos: Broker

Projetos I Resumo de TCC. Luiz Rogério Batista De Pieri Mat:

Introdução ao Modelos de Duas Camadas Cliente Servidor

Servidor Proxy armazenamento em cache.

Sistemas Operacionais

Padrões Arquiteturais e de Integração - Parte 1

Resumo. Introdução Cluster Cluster Beowulf Curiosidades Conclução

Organização de Computadores 1

Intranets. FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO

MPICH-IG UNIVERSIDADE FEDERAL DE GOIÁS INSTITUTO DE INFORMÁTICA MARCELO DE CASTRO CARDOSO

MINICURSO WINDOWS SERVER 2008 UTILIZANDO O VMWARE PLAYER

Sistemas Distribuídos. Introdução

Computação em Grid e em Nuvem

BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING

Sistemas Distribuídos Capítulos 3 e 4 - Aula 4

Sistemas Distribuídos

Introdução. Definição de um Sistema Distribuído (1) Definição de um Sistema Distribuído(2) Metas de Sistemas Distribuídos (2)

Prof. Luiz Fernando Bittencourt MC714. Sistemas Distribuídos 2 semestre, 2013

RC e a Internet: noções gerais. Prof. Eduardo

Sistemas Operacionais Gerência de Dispositivos

PROJETO E IMPLANTAÇÃO DE INTRANETS

Planejamento para Implantação do GridUnesp. II Workshop GridUnesp Outubro de 2006

Evolução na Comunicação de

PEER DATA MANAGEMENT SYSTEM

Fundamentos de Banco de Dados

Arquitetura NUMA 1. Daniel de Angelis Cordeiro. INRIA MOAIS project Laboratoire d Informatique de Grenoble Université de Grenoble, França

WINDOWS NT SERVER 4.0

Arquitetura de Sistemas Distribuídos. Introdução a Sistemas Distribuídos

3 SCS: Sistema de Componentes de Software

05/08/2013. Sistemas Distribuídos Cluster. Sistemas Distribuídos Cluster. Agenda. Introdução

Aumento da Capacidade de Armazenamento do SPRACE

Disciplina de Banco de Dados Introdução

Administração de Sistemas de Informação Gerenciais

REDES DE COMPUTADORES

MODELO CLIENTE SERVIDOR

Sistemas Distribuídos Aula 2

EAGLE TECNOLOGIA E DESIGN CRIAÇÃO DE SERVIDOR CLONE APCEF/RS

Instalação Cliente Notes 6.5

Programação com acesso a BD. Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br

Modelo. Grades Computacionais Oportunistas: Alternativas para Melhorar o Desempenho das Aplicações

SISTEMAS DISTRIBUÍDOS

Gerência e Administração de Redes

Sistemas Cliente-Servidor

INDICE 1. INTRODUÇÃO CONFIGURAÇÃO MÍNIMA INSTALAÇÃO INTERLIGAÇÃO DO SISTEMA ALGUNS RECURSOS SERVIDOR BAM...

A consolidação de servidores traz uma séria de vantagens, como por exemplo:

Sistemas Distribuídos. Fundamentos. Nazareno Andrade. Universidade Federal de Campina Grande 02/2008


3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio

Balanceamento de Carga

UFF-Fundamentos de Sistemas Multimídia. Redes de Distribuição de Conteúdo (CDN)

CollA: Uma Plataforma Colaborativa para Programas Java e Java Cá & Lá. Bruno Cerqueira Hott Prof. Joubert de Castro Lima

Setores Trilhas. Espaço entre setores Espaço entre trilhas

ADMINISTRAÇÃO DE SISTEMA OPERACIONAL DE REDE (AULA 1)

Introdução a Computação nas Nuvens

Camadas de Serviço de Hardware e Software em Sistemas Distribuídos. Introdução. Um Serviço Provido por Múltiplos Servidores

Sistemas Distribuídos

Analista de Sistemas Ambiente GRID para física experimental de altas energias

1. CAPÍTULO COMPUTADORES

Sistema Operacional Correção - Exercício de Revisão

Arquitetura e Organização de Computadores I

Documento de Análise e Projeto VideoSystem

Noções de. Microsoft SQL Server. Microsoft SQL Server


Unidade 1. Conceitos Básicos

5 Mecanismo de seleção de componentes

Introdução. Uso do disco Vantagens Desvantagens Baixo custo, facilidade de manutenção do software e do hardware, simetria e flexibilidade

GUIA INTEGRA SERVICES E STATUS MONITOR

4 Um Exemplo de Implementação

Introdução a computação móvel. Middlewares para Rede de Sensores sem Fio. Uma avaliação na ótica de Adaptação ao Contexto

Gerência de Redes. Arquitetura de Gerenciamento.

GT-ATER: Aceleração do Transporte de Dados com o Emprego de Redes de Circuitos Dinâmicos. RP1 - Relatório de detalhamento das atividades

IW10. Rev.: 02. Especificações Técnicas

Modelos e Arquiteturas de Sistemas Computacionais

Características Carlos Ferraz

Guia de Especificação. Vijeo Citect

Transcrição:

Grades Computacionais: Uma Introdução Prática Raphael Y. de Camargo Ricardo Andrade Departamento de Ciência da Computação Instituto de Matemática e Estatística Universidade de São Paulo, Brasil São Paulo, 23 de novembro de 2007

Resumo I. Grades Computacionais 1. Conceito 2. Tipos de grades computacionais 3. Exemplos de sistemas de grade II. InteGrade 1. Motivação e características 2. Arquitetura 3. Execução de aplicações no InteGrade 4. Tolerância a falhas 2

PARTE I Grades Computationais 3

Computação de Alto-Desempenho Aplicações paralelas Seqüenciamento de genes (genoma) Mineração de dados (mercado financeiro) Enovelamento de proteínas (ind. farmacêutica) Análise de sinais (SETI) Previsão do tempo (INPE/CPTEC) Alto poder computacional Grandes quantidades de dados 4

Computação de Alto-Desempenho Computação de alto-desempenho Abordagens Tradicionais: Supercomputadores Custam milhões de dólares Alto custo de manutenção Clusters dedicados (Beowulf) Computadores pessoais e redes TCP/IP Baixo preço de aquisição e manutenção Alta disponibilidade 5

Grades Computacionais Grades computacionais Infra-estrutura de software que permitem a interligação e compartilhamento de recursos computacionais. Estes recursos normalmente são: Altamente heterogêneos Servidores de dados Clusters de computadores pessoais Supercomputadores Geograficamente dispersos Pertencentes a diferentes instituições 6

Grades Computacionais Infra-estrutura computacional sofisticada Principais sistemas de grades para e-science Supercomputadores, aglomerados de computadores Recursos dedicados à grade Sistemas de armazenamentos de dados Armazenamento de Terabytes e Petabytes Redes de comunicação de alta-velocidade Largura de banda de vários Gbps 7

Grades Computacionais Computação de alto-desempenho Grades computacionais Recursos dedicados Recursos compartilhados Configuração estática Configuração dinâmica Gerenciamento central Gerenciamento distribuído Ambiente controlado Ambiente não controlado Máquinas homogêneas Máquinas heterogêneas 8

Grades Computacionais Computação de alto-desempenho Grades computacionais Dezenas ou centenas de máquinas Dezenas de milhares de máquinas Máquinas localizadas no mesmo espaço físico Máquinas geograficamente distribuídas Falhas pouco freqüentes Falhas constantes 9

Principais Desafios Segurança Para os donos dos recursos Para os usuários da grade Tolerância a Falhas Para os componentes da grade Para as aplicações em execução na grade Escalonamento Determinar onde uma aplicação deve executar 10

Grades Computacionais Gerenciamento de recursos Busca de recursos computacionais Entrada e saída de recursos computacionais Gerenciamento de dados Determinar onde dados devem ser armazenados Busca por dados armazenados Disponibilidade e desempenho outros desafios 11

Grades de Dados Grades onde a ênfase é no gerenciamento e distribuição de dados Física de Altas Energia Dados gerados em um acelerador de partículas são utilizados por pesquisadores do mundo todo Precisam gerenciar Petabytes de dados Armazenamento e transmissão dos dados Tolerância a falhas (Replicação) Serviços de busca e diretórios de dados 12

Globus O middleware de grade mais conhecido atualmente Pode ser baixado gratuitamento (Versão 4.0.5) Padrão OGSA (Open Grid Services Architecture) Utiliza o conceito de Grid Services Comunicação baseada em Web Services Baixo acoplamento entre os recursos Desempenho ruim Adiciona funcionalidades a Web Services Descoberta de serviços Serviços nomeados Serviços com estado 13

Globus É composto por um conjunto de serviços Segurança Baseado em GSS + Kerberos GridFTP Transferência eficiente de dados Armazenamento e gerenciamento de réplicas Tolerância a falhas e maior desempenho Monitoramento e descoberta de recursos Escalonamento Provê apenas a interface para o escalonador 14

Consórcios Worldwide LHC Grid (Europa) Criado para permitir a análise de aproximadamente 15 Petabytes de dados que serão gerados no LHC Muitos dados para serem armazenados e analisados por uma única instituição Criar e manter uma infraestrutura de armazenamento e análise dos dados gerados pelo LHC Motivação para uso de Grades: Melhor aproveitamento de recursos Menos pontos únicos de falhas http://lcg.web.cern.ch/lcg/ 15

Consórcios Open Science Grid (EUA) Consórcio de provedores de software, serviços e recursos computacionais Prover um sistema distribuído para processamento e armazenamento de dados Interligado ao Worldwide LHC Grid http://www.opensciencegrid.org/ HEPGrid (Brasil) Permitirá a instituições brasileiras ter acesso a dados do LHC e do Open Science Grid http://www.hepgrid.uerj.br/ 16

Grades Oportunistas Foco na utilização ciclos computacionais ociosos estações de trabalho compartilhadas Máquinas de laboratórios, professores, etc. Deve manter a Qualidade de Serviço dos donos das máquinas compartilhadas Máquina passa do estado ocioso para utilizada Aplicações da grade devem ser migradas para outras máquinas 17

Grades Oportunistas Vantagens Baixo custo: utiliza hardware já existente Economia de recursos naturais Eletricidade, refrigeração, espaço físico. Desvantagens Gerenciamento de recursos é mais complicado Menor desempenho: Utiliza apenas períodos ociosos das máquinas 18

Grades Oportunistas: Desafios Segurança Donos de recursos compartilhados Usuários da grade Gerenciamento de recursos Escalonamento de aplicações Qualidade de serviço Máquinas compartilhadas 19

Grades Oportunistas: Desafios Tolerância a falhas Componentes da grade Execução robusta de aplicações paralelas Dados de usuários e aplicações Gerenciamento de repositórios de dados Gerenciamento dos dados armazenados 20

Exemplo: SETI@HOME Sistema de computação distribuída Análise de sinais de rádio-telescópios Objetivo é por procurar por padrões não-naturais nos sinais obtidos Quebra o problema em blocos independentes Não existe comunicação entre os nós Distribui grupos de blocos a cada computador Computador realiza análise dos dados contidos nos blocos recebidos Dados são enviados de volta a um servidor central 21

Exemplo: SETI@HOME Ótimo exemplo do poder computacional Desempenho total até Janeiro de 2006 7.745.000.000.000 Gflops Mais de 5 milhões de usuários Core 2 Duo (2.16GHz): ~ 3 Gflop/s 259.200 Gflops por dia Computador mais rápido do mundo: Blue Gene/L (212.992 processadores) 478.200 Gflops/s 187 dias no Blue Gene/L Seti@Home 22

Exemplo: Folding@home Folding@home Sistema para realizar simulações computacionais do enovelamento de proteínas Aplicações: cura de doenças, como o câncer, Alzheimer, Parkinson, etc. Possui versão que pode ser executada em Playstation 3. 23

Exemplo: Condor Grade oportunista Desenvolvido na University of Wisconsin-Madison Permite utilizar ciclos ociosos de estações de trabalho compartilhadas Condor pools: grupos de computadores Condor pools podem ser conectados entre si Suporte a aplicações seqüencias, bag-of-tasks e paralelas MPI 24

Exemplo: Condor Computadores fazem anúncios dos recursos disponibilizados Estes recursos são então monitorados pelo Condor Aplicação é submetida para execução Match-maker repassa a execução a máquinas que possuam os recursos necessários para executar a aplicação Caso uma máquina seja requisitada pelo dono Aplicação é migrada para outro nó Aplicações paralelas rodam em nós dedicados 25

Exemplo: OurGrid Grade oportunista do tipo peer-to-peer Desenvolvida na UFCG Parceria com a HP Labs Suporte a aplicações paralelas onde os processos não se comunicam Bag-of-tasks Mecanismo para estimular a doação de recursos Rede de favores 26

Exemplo: OurGrid Imagem retirada de http://www.ourgrid.org 27

PARTE II InteGrade Infra-estrutura de software para Grades Oportunistas 28

InteGrade Motivação Desenvolver um middleware que permita utilizar recursos ociosos de máquinas compartilhadas Objetivo é realizar a execução de aplicações paralelas computacionalmente intensivas Armazenamento de dados de aplicações no espaço livre em disco das máquinas compartilhadas Importante para instituições com recursos financeiros escassos 29

InteGrade: Características Foco na utilização de computadores pessoais Suporte a aplicações seqüenciais e paralelas Bag-of-tasks, BSP e MPI Portal web para submissão de aplicações Em desenvolvimento: Armazenamento distribuído de dados Preservação da Qualidade de Serviço dos donos de máquinas compartilhadas Segurança baseada em redes de confiança 30

InteGrade: Arquitetura Arquitetura orientada-aobjetos baseada em CORBA Java, C++ e Lua Aglomerados compostos por grupos de máquinas 31

Principais componentes Global Resource Manager (GRM) Gerencia os recursos de um aglomerado Seleciona em quais máquinas cada aplicação submetida será executada Local Resource Manager (LRM) Gerencia uma máquina provedora de recursos Inicia a execução de aplicações na máquina Application Repository (AR) Armazena os binários das aplicações dos usuários 32

Principais componentes Application Submission and Control Tool (ASCT) Permite a submissão de aplicações e a obtenção e visualização de resultados Portal Web Versão web da ferramenta ASCT Local Usage Pattern Analyser (LUPA) Analisa o padrão de uso das máquinas da grade Permite ao escalonador realizar melhores escolhas no momento de definir máquinas que executarão uma aplicação 33

Portal InteGrade 34

Federação de Aglomerados Federação de aglomerados Aglomerados conectados em estrutura hierárquica Aglomerados possuem informações aproximadas sobre recursos disponíveis em aglomerados filhos 35

Execução de Aplicações 36

Execução de Aplicações 1. Usuário submete aplicações através do Portal Pode ser executado a partir de qualquer máquina 2. GRM determina em quais máquinas a aplicação será executada (escalonamento) 3. Requisição é repassada para as máquinas selecionadas 4. Máquinas obtêm dados de entrada e os binários da aplicação e realizam sua execução 5. Após o término da execução, arquivos de saída são enviados à máquina executando o portal 37

Execução de Aplicações Paralelas Cada processo é enviado a um LRM diferente 38

Execução Robusta de Aplicações Aplicações executadas durante ciclos ociosos de máquinas não-dedicadas Podem ficar indisponíveis ou mudar de ociosa para ocupada inesperadamente Execução da aplicação é comprometida É preciso reiniciar a execução do início Mecanismo de tolerância a falhas Permite reiniciar a aplicação de um ponto intermediário de sua execução 39

Recuperação por Retrocesso Recuperação por retrocesso baseada em checkpointing Checkpoints contendo o estado da aplicações são gerados periodicamente Checkpoints são armazenados nas máquinas do aglomerado Em caso de falha durante execução, aplicação é reiniciada a partir do último checkpoint gerado 40

Abordagens para checkpointing O estado de uma aplicação pode ser obtido de diferentes modos Checkpointing no nível do sistema Dados obtidos diretamento do espaço de memória Transparente à aplicação Requer uso de máquinas homogêneas Checkpointing no nível da aplicação Aplicação fornece dados a serem salvos Checkpoints portáveis Precisa modificar código-fonte da aplicação 41

Checkpointing de Aplicações Paralelas Checkpoints locais checkpoint global Aplicações paralelas desacopladas Aplicações bag-of-tasks Basta gerar um checkpoint para cada processo Aplicações paralelas acopladas Aplicações BSP e MPI Dependências entre processos É preciso coordenar a criação de checkpoints locais 42

Checkpointing de Aplicações Paralelas Checkpoint 1 é inconsistente e 2 é consistente Protocolo coordenado de checkpointing Sincroniza os processos antes de gerar checkpoint Deste modo os checkpoints gerados são sempre consistentes 43

Armazenamento Distribuído Aplicações da grade podem utilizar ou produzir grandes quantidades de dados Dados de aplicações podem ser compartilhados Abordagem tradicional: servidores dedicados Grade oportunista Máquinas com grandes quantidade de espaço livre Ambiente altamente dinâmico Composto por dezenas de milhares de máquinas Utilizar somete períodos ociosos Máquina entram e saem do sistema continuamente 44

OppStore Middleware que permite o armazenamento distribuído de dados da grade Provê armazenamento confiável e eficiente Utiliza o espaço livre de máquinas compartilhadas Organizado como federação de aglomerados Similar à maioria das grades oportunistas Aglomerados do OppStore são mapeados em aglomerados da grade oportunista Facilita o gerenciamento do dinamismo do sistema Aglomerados conectados por uma rede peer-to-peer 45

Arquitetura do OppStore Repositório Autônomo de Dados (ADR) Gerenciador de Repositórios de Dados (CDRM) Intermediador de Acesso (Access Broker) 46

Armazenamento de arquivos Arquivos codificados em fragmentos redundantes Fragmentos armazenados em aglomerados distintos Vantagens Maior tolerância a falhas Bom desempenho, pois fragmentos são transferidos em paralelo 47

Implantação sobre o InteGrade CDRM Máquina gerenciadora do aglomerado ADRs e Brokers Provedores de recursos Interface com o InteGrade em desenvolvimento

Estado Atual do OppStore Estamos realizando a integração do InteGrade com o OppStore Dados de entrada e saída de aplicações passarão a ser armazenados no sistema de armazenamento distribuído Máquina de onde aplicação foi submetida deixa de ser um ponto único de falhas 49

Estado Atual do InteGrade Atualmente na versão 0.4 Execução em dois aglomerados do IME-USP e em aglomerados de outras universidades Portal permite realizar remotamente requisições de execução Permite execução de aplicações paralelas MPI, BSP e Bag-of-tasks Precisam ser realizados mais testes Para tal, precisamos de mais usuários 50

Resumo Grades Computacionais Grades de Dados Grades Oportunistas InteGrade Protocolo de execução Armazenamento distribuído de dados 51

Mais informações Sítio do InteGrade http://www.integrade.org.br Suporte do InteGrade integrade-support@integrade.org.br 52