Arquitetura De Computadores
Monografias: Arquitetura De Computadores. Pesquise 862.000+ trabalhos acadêmicosPor: renanrcc • 7/9/2014 • 1.825 Palavras (8 Páginas) • 290 Visualizações
O que é cluster
Cluster (ou clustering) é, em poucas palavras, o nome dado a um sistema que relaciona dois ou mais computadores para que estes trabalhem de maneira conjunta no intuito de processar uma tarefa. Estas máquinas dividem entre si as atividades de processamento e executam este trabalho de maneira simultânea.
Cada computador que faz parte do cluster recebe o nome de nó (ou nodo). Teoricamente, não há limite máximo de nós, mas independentemente da quantidade de máquinas que o compõe, o cluster deve ser "transparente", ou seja, ser visto pelo usuário ou por outro sistema que necessita deste processamento como um único computador.
Os nós do cluster devem ser interconectados, preferencialmente, por uma tecnologia de rede conhecida, para fins de manutenção e controle de custos, como a Ethernet. É extremamente importante que o padrão adotado permita a inclusão ou a retirada de nós com o cluster em funcionamento, do contrário, o trabalho de remoção e substituição de um computador que apresenta problemas, por exemplo, faria a aplicação como um todo parar.
A computação em cluster se mostra muitas vezes como uma solução viável porque os nós podem até mesmo ser compostos por computadores simples, como PCs de desempenho mediano. Juntos, eles configuram um sistema de processamento com capacidade suficiente para dar conta de determinadas aplicações que, se fossem atendidas por supercomputadores ou servidores sofisticados, exigiriam investimentos muito maiores.
Não é necessário haver um conjunto de hardware exatamente igual em cada nó. Por outro lado, é importante que todas as máquinas utilizem o mesmo sistema operacional, de forma a garantir que o software que controla o cluster consiga gerenciar todos os computadores que o integram.
Tipos de clusters
Há uma enormidade de aplicações que só podem ser atendidas satisfatoriamente com computação de alto desempenho: sistemas meteorológicos, ferramentas de mapeamento genético, simuladores geotérmicos, programas de renderização de imagens tridimensionais, entre tantos outros. Com o advento da computação em nuvens, este cenário se torna ainda mais amplo: pode-se ter uma infra-estrutura tecnológica respondendo a vários clientes simultaneamente de maneira remota, por exemplo.
Em todos estes casos e em qualquer outro tipo de aplicação crítica - que não pode parar de funcionar ou não pode perder dados (os sistemas bancários, por exemplo), o cluster pode se mostrar como uma solução viável, desde que o tipo mais adequado seja escolhido.
Há vários tipos de cluster, mas os principais são: cluster de alto desempenho, cluster de ata disponibilidade e cluster de balanceamento de carga.
Cluster Características
Alto Desempenho tem uma configuração destinada a fornecer um grande poder computacional do que somente um único computador poderia lhe fornecer em capacidade de processamento.
sua diversas aplicações podem ser executadas em nível de usuário.
essa arquitetura possibilita resolver problemas complexos através de processamento paralelo e/ou distribuído, o que diminui o tempo de resolução do problema com um baixo custo.
O foco deste tipo é o de permitir que o processamento direcionado à aplicação forneça resultados satisfatórios em tempo hábil
Nenhum hardware especialmente feito sob encomenda é requerido, sendo necessário para criação, apenas componentes de hardware comuns e o sistema operacional.
Alta Disponibilidade o foco está em sempre manter a aplicação em pleno funcionamento: não é aceitável que o sistema pare de funcionar, mas se isso acontecer, a paralisação deve ser a menor possível.
com isso haverá uma perda de desempenho por conta dessa gerência, mas o principal objetivo dessa proposta será alcançado, ou seja, não paralisar o serviço e/ou aplicação.
podem contar com diversos recursos: ferramentas de monitoramento que identificam nós defeituosos ou falhas na conexão, replicação (redundância) de sistemas e computadores para substituição imediata de máquinas com problemas, uso de geradores para garantir o funcionamento em caso de queda de energia,entre outros.
são utilizados para base de dados de missões criticas, correio,servidores de arquivos e aplicações.
Balanceamento
de
Carga as tarefas de processamento são distribuídas o mais uniformemente possível entre os nós. O foco aqui é fazer com que cada computador receba e atenda a uma requisição e não, necessariamente, que divida uma tarefa com outras máquinas.
Recebe os pedidos de requisição de serviço de vários clientes e distribuiu (balanceia a carga de trabalho) tais serviços as maquinas que constituem o cluster de forma que nenhuma maquina fique sobrecarregada e/ou ociosa. Se um nó falhar, as requisições são redistribuídas entre os nós disponíveis no momento.
Todos os servidores mantêm uma cópia integral de todos os dados, já que de qualquer forma cada servidor precisará de todos os dados para atender as requisições que chegarem até ele.
Caso algum dos servidores precise ser desligado, seja por alguma falha, ou então para algum tipo de manutenção, os outros continuam trabalhando normalmente. Ao voltar, o programa de controle sincroniza o servidor com os demais e ele volta à ativa.
O cluster de balanceamento de carga, apesar de ter como objetivo principal o aumento do desempenho, difere do modelo de cluster de alto desempenho pois as requisições dos clientes são atendidas completamente pelo nó ao qual a requisição foi direcionada. O objetivo neste caso é dividir as requisições e não as sub-tarefas nelas envolvidas. Este modelo de cluster é muito utilizado na internet para distribuir a carga de servidores de páginas e e-mail.
Razões para utilização de um Cluster
Os clusters ou combinações de clusters são utilizados a fim de processar conteúdos críticos ou disponibilização de serviços durante a maior parte do tempo. Os clusters de Alta Disponibilidade e Balanceamento de Carga geralmente são utilizados por lojas virtuais. Clusters paralelos normalmente são utilizados pela indústria cinematográfica a fim de renderizar gráficos de altíssima qualidade e animações.
...