quinta-feira, 28 de outubro de 2010


Nos anos 90 uma nova infra-estrutura de computação distribuída foi proposta, através de estudos de várias universidades e centros de pesquisa, como: A NASA, LLNL, UFCG, PUC-RS, UFRGS, depois passarao a adoptar a IBM, a SUN e a Google visando auxiliar atividades de pesquisa e desenvolvimento científico. Vários modelos desta infra-estrutura foram especificados, dentre elas, a Tecnologia em Grade, em analogia às redes elétricas (“power grids”) se propõe em apresentar ao usuário como um computador virtual, mascarando toda a infra-estrutura distribuída, assim como a rede elétrica para uma pessoa que utiliza uma tomada sem saber como a energia chega a ela. Seu objetivo era casar tecnologias heterogêneas (e muitas vezes geograficamente dispersas) formando um sistema robusto, dinâmico e escalável onde se pudesse compartilhar processamento, espaço de armazenamento, dados, aplicações, dispositivos, entre outros. Mas o conceito de Grid em computação naquela altura ficou sem sustentabilidade por falta de recursos.
Atualmente podemos dizer que uma das áreas mais “quentes” da computação é a Computação em Grid. Área esta que tem despertado o grande interesse seja para resolução de problemas da Física, da Matemática ou Engenharia ou para resolução de grandes desafios.
A computação em grade vem ganhando destaque nos últimos tempos com algumas empresas apostando alto nessa tecnologia. Um bom exemplo é a IBM que tem feito grande investimento em pesquisa e desenvolvimento de ferramentas em grade para ambiente corporativo.

Um dos principais objetivos de Computação em Grid é a criação de uma infra-estrutura de software e hardware para a integração de recursos computacionais, geograficamente dispersas de modo a formar um ambiente colaborativo de trabalho.

A computação em grid é tida como a solução actual de muitos sistemas eficientes como é o caso das videos conferência em alta qualidade, possiblitatando cada vez mais meios de interação para os utilizadores que apoiam-se para facilitar deslocações, como é o caso daqueles que utilizam os métodos de ensino a distância.

ARQUITECTURA DO PROJECTO EM GRIDA idéia principal do grid computing é que os recursos de computação deveriam ser reutilizáveis e escalonados de forma transparente aos utilisadores. Ou seja, tratar os recursos de software e hardware como commodities, não importando onde a aplicação está hospedada ou que tipo de recursos que ela necessita. Fazendo uma analogia, isso seria como os serviços de energia elétrica, que utilizamos na medida que precisamos e na hora que precisamos, não nos importando “quem” ou “o quê” está nos provendo isso.
A proposta dessa arquitectura para este projeto vai possibilitar um ou mais utilizadores compartilhar recursos computacionais com outros utilizadores, mesmo que distintamente separados de forma bem eficiente. Os recursos compartilhados não se resumem a ciclos de CPU, podem ser recursos de armazenamento e recursos de rede.

A arquitetura em grid permite coordenar recursos, compartilhar recursos e dar solução a problemas de organizações virtuais


AS CAMADAS DA ARQUITECTURA EM GRID

A arquitetura foi divida nas seguintes camadas: Base, Conectividade, Recursos, Coletiva e de Aplicações.

Fig. 3.1

CAMADA DE 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.
· 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 infra-estrutura da Grade será simplificada Ref(1).

CAMADA DE 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.

· Login único.

· Relação de confiança baseada no usuário: se um usuário tem acesso a um sítio A e um B, devem poder acessar os 2 ao mesmo tempo Ref(1).


CAMADA DE RECURSOS

· Define protocolos 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.

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 Ref(1).

CAMADA 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 sem colocar novos requisitos nos recursos sendo compartilhados.
Serviço de Diretório - permite as usuários pesquisar por recursos pelo nome ou tributos 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
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.

CAMADA DE APLICAÇÃO

É a camada em que após a recolha dos dados mediante a camada colectiva, está ira deixar disponivela a informação a um determinado utilisador, para que este sobre ela possa interagir além de visualisar

Vantagens da arquitetura em grid:

· Organizações podem agregar recursos - a computação em Grid permite que as organizações possam agregar recursos com toda a infraestrutura dos ITs, não importando localização global. Isso elimina situações onde um site esteja sendo executado com sua capacidade máxima, enquanto outros tenham ciclos disponíveis.
· Poderosa plataforma de suporte a Organizações Virtuais - organizações podem melhorar dramaticamente sua qualidade e velocidade de produtos e serviços disponibilizados, enquanto os custos de IT são reduzidos por habilitar a colaboração transparente dos recursos compartilhados
· Acesso distribuído a diversos tipos de recursos - permite que empresas acessem e compartilhem bases de dados de forma remota. Isto é essencialmente benéfico para as ciências da saúde ou comunidades de pesquisa, onde volumes grandiosos de dados são gerados e analisados durante todo dia.
· Colaboração entre centro de pesquisas - possibilita a larga dispersão das organizações para que facilmente possam colaborar em projetos pela criação da habilidade do compartilhamento de tudo, desde aplicações a dados, até projetos de engenharia, etc.
· Melhor utilização de largura de banda - pode-se criar a mais robusta e resistente infraestrutura de informações.
· Aproveitamento de recursos ociosos – pode-se aproveitar os ciclos de processamento idle disponíveis dos PCs desktops que se encontram em várias localidades pelo planeta.

Assim concluímos que um sistema em Grid pode ser um conjunto de vários Cluster, sendo que iremos desenvolver o conceito de cluster abaixo .

CLUSTER

Cluster é um sistema que compreende dois ou mais computadores , muitas vezes constituído de computadores convencionais (pc’s), que tem por objetivo realizar processamento pesado. Cada computador de um cluster é chamado de nó ou nodos, os quais são ligados em rede e comunicam-se através de um sistema, trabalhando como se fossem uma única máquina de grande porte.
A cada dia cresce o número de aplicações que exigem um grande poder computacional, entre as quais podemos encontrar exemplos nas áreas de multimídia, cálculos, gerenciamento de grandes volumes de dados, entre outros.
Essa é uma boa alternativa para suprir essa demanda tem sido a utilização de clusters de computadores construídos com máquinas comuns e sistemas operacionais abertos e de distribuição livre, como o Linux. Essa alternativa tem sido viável, pois apresenta um desempenho satisfatório e um custo baixo se comparada a outras alternativas como máquinas multiprocessadas e supercomputadores.
Existem vários mecanismos que podem ser utilizados na construção de clusters, alguns deles distribuição livre como o PVM (Paralell Virtual Machine), que é um pacote de software que apresenta um conjunto de máquinas trabalhando como um único recurso computacional paralelo.
Um cluster pode possuir vários tipos de configurações diferentes, tanto em relação ao hardware quanto à configuração do sistema, de acordo com a finalidade do mesmo. Alguns exemplos são:
Cluster de alta performance de computação: cada vez que o cluster recebe uma tarefa para executar, como a renderização de um filme, divide os pedaços da mesma tarefa para cada um dos nós realizar parte da execução. O principal objetivo desse tipo cluster é aumentar desempenho da execução da tarefa através do balanceamento da carga entre os nós.
Cluster de alta disponibilidade: esse tipo de cluster tem como principal funcionalidade manter um sistema ou recuso sempre ativo, mesmo que um nó deixe de executar, ou seja, a maior preocupação é com a confiabilidade e o tratamento de falhas. Esse tipo de configuração é utilizada em aplicações que executam tarefas críticas.
De acordo com as pesquisas realizadas percebe-se que os clusters têm proporcionado uma alternativa viável com alto poder computacional e baixo custo, tornando o processamento de alto desempenho acessível a instituições com poucos recursos financeiros, possibilitando aproveitar o hardware existente. Este fato estimula a realização de pesquisas nessa área.
Essas tecnólogias possibilitam a solução de diversos problemas que envolvem grande volume de processamento. As aplicações que um cluster pode ter são diversas, indo desde a simples melhoramento no desempenho de um determinado sistema ou a hospedagem de sites, até o processo de pesquisas científicas complexas.

7 comentários:

  1. Aqui poderás saber um pouco tendo condições para a Contribuição de Arquitecturas de Redes de informática e telecomunicações vindouras...

    ResponderEliminar
  2. Muito legal o seu blog! Parabéns... Hercilio

    ResponderEliminar
  3. Oi é a Custódia achei super interessante e criativo,tens mesmo muita arte e continua não pares por aqui.bjss

    ResponderEliminar
  4. Opah... Super Interessante...

    ResponderEliminar
  5. puto isso xta o maximo, pena é k pude dar-te mais explicações sobre o tema, neste momento xtou um bocado ocupado mas qdo xtiver livre vou dar o meu contributo pra melhorar essa cena, wilsonbr

    ResponderEliminar
  6. Oh Wilson! queres me dar explicações sobre contabilidade haha!

    ResponderEliminar
  7. Puta que pariu, faz mesmo todo sentido...

    ResponderEliminar