Anda di halaman 1dari 32

Universidade Federal do Rio de Janeiro

Instituto de Matemtica / Departamento de Cincia da Computao

Cluster e Virtualizao
Computao de Alto Desempenho

A computao de alto desempenho uma das reas da Cincia


da Computao. Ela serve para resolver vrios tipos de problemas
nas mais diversas reas do conhecimento humano, como:

Previso do Tempo (+72 horas)


Simulao de Oceanos
Bioinformtica (DNA)
Sntese de Protenas
Dinmica dos Fluidos (Aerodinmica)
Fsica Quntica
Astronomia
Medicina
Farmcia (Medicamentos)

2
Medicina Assistida por Computao

3
Os Supercomputadores

4
Os Supercomputadores

Esses problemas s conseguiam ser resolvidos antigamente com o


uso de supercomputadores.
Esses supercomputadores tinham como caracterstica principal a

capacidade de realizar milhes de clculos por segundo em apenas


um nico processador.
O processador o dispositivo responsvel pela realizao

controle e execuo dos programas em um computador.


Os processadores dos supercomputadores eram muito

sofisticados e complexos, exigindo tecnologias especiais para sua


fabricao e ambientes especiais para sua operao.
Deste modo, apenas os pases mais ricos possuam recursos

financeiros para a aquisio desses supercomputadores.


No Brasil, o nmero de supercomputadores existentes era

bastante reduzido e o acesso restrito a poucos pesquisadores.

5
Supercomputador Cray 2

6
Clusters

7
Os Clusters

Um cluster, ou aglomerado de computadores, formado por um


conjunto de computadores ligados por uma rede de comunicao,
que utilizam um tipo especial de sistema operacional classificado
como sistema distribudo.
Uma rede de comunicao permite que um computador envie
informaes em alta velocidade para outros computadores atravs
de cabos e equipamentos especiais (chamados de roteadores).
Hoje em dia as redes de computadores podem ser interligadas

umas s outras, permitindo a comunicao de computadores de um


lado a outro do planeta em fraes de segundo.
O sistema operacional conjunto de programas que controla o

computador, permitindo o acesso ordenado aos recursos do


computador, tais como unidades de disco, impressoras e rede de
comunicao.
O sistema operacional mais conhecido o Microsoft Windows,
mas existem vrios outros, to bons ou melhores, como o
GNU/Linux, Solaris, Unix ou Mac OS.
8
Clusters x Supercomputadores
Os clusters (ou aglomerado de computadores) surgiram na ltima
dcada como uma alternativa para os supercomputadores.
Ao invs de termos um nico supercomputador, com o uso
de centenas ou mesmo milhares de computadores
convencionais, de baixo custo de aquisio, possvel
conseguir uma alta capacidade de processamento.
No cluster os computadores trabalham cooperativamente, cada

um sobre uma pequena parte do problema at obter uma soluo


final.
Uma figura de comparao, os supercomputadores seriam como

grandes elefantes e os cluster so como formigas que realizam todo


o trabalho coletivamente.
Essa tecnologia foi criada para ser uma alternativa barata para
os pases, como o Brasil, que no podiam adquirir um
supercomputador.

9
Diagrama de um Cluster

10
Diagrama de um Cluster

11
Potencial do Cluster
O potencial de processamento de um cluster depende de:
Infra-estrutura da rede de comunicao.
Os ns do cluster se comunicam atravs da rede para trocar
informaes entre eles mesmos e tambm com o n principal.
Quanto mais rpida a rede, mais rpido o problema ser
resolvido, pois a comunicao entre os computadores ser
facilitada.
Potencial de processamento dos ns.
Cada mquina depende do seus recursos para executar as
tarefas (jobs) determinadas pelo n principal. Do mesmo modo,
quanto mais velozes forem os processadores dos
computadores que compe o cluster, mais rapidamente a
soluo ser obtida.
Quantidade de ns disponveis.
Quanto maior for o nmero de mquinas disponveis para
execuo de tarefas (jobs), menos tarefas cada n ter que
executar e, portanto, menos tempo ser gasto.
12
Tipos de Clusters

Existem clusters especficos para cada tipo de aplicao:


Cluster para Alta Disponibilidade:
So clusters que possuem uma topologia de rede projetada
para situaes de emergncia. Quando o funcionamento
de algum n interrompido, um n substituto assume
suas tarefas at que o n possa ser utilizado novamente.
Cluster para Balanceamento de Carga:
Balanceamento de Carga se refere distribuio equilibrada
de processamento aos ns do cluster. No caso de ocorrer uma
falha, o funcionamento do cluster pode ser interrompido.
Cluster Alto Desempenho:
So clusters voltados para obteno do mximo de
desempenho. So utilizados computadores de alta
performance e redes de alta velocidade. Usado especialmente
para aplicaes cientficas.
13
IBM BlueGene/L
Localizado no Laboratrio Nacional Lawrence Livermore,
utilizado por cientistas para simulaes biolgicas (interao
molecular) e fsicas (turbulncia e dinmica dos fluidos).

Possui 65.536 ns com 32.768 GB de memria principal e uma


rede de comunicao de 1.024 Gigabits-por-segundo.

Cada n possui 2 processadores PowerPC 440, com relgio de


700 MHz e capacidade de processamento de 2.8 GigaFLOPS.

Esse cluster um cluster de alto desempenho e foi desenvolvido


pelo Centro de Pesquisas Watson da IBM em parceria com outros
centros de pesquisas nos EUA e alcana o poder de
processamento de 360 TeraFLOPS.

Esse o computador mais rpido do mundo na atualidade.


14
IBM BlueGene/L

15
Virtualizao

16
Recursos Computacionais

Os computadores tem evoludo muito na sua capacidade de


processamento.
Hoje em dia, comum encontrarmos nas empresas, computadores

que ficam ociosos a maior parte do tempo ou que no tem seus


recursos utilizados adequadamente
Isto um desperdcio de recurso que antigamente no podia ser
evitado, j que os computadores tinham que ser dimensionados
para atender a demanda computacional mxima que poderia ser
requisitada durante o seu uso.
Acontece, muitas vezes, que esta demanda de pico ocorre em

diferentes tempos para todas as mquinas de uma mesma


empresa.
Atualmente os computadores possuem muito mais recursos

do que seria necessrio para as atividades do cotidiano.

17
Virtualizao

Virtualizao uma tecnologia que permite a execuo de


diversos Sistemas Operacionais num nico equipamento. Isso
possvel pois o software virtualizador, chamado de hypervisor,
cria uma espcie de hardware virtual que funciona exatamente igual
ao hardware verdadeiro.
O sistema operacional virtualizado, chamado de convidado,
compartilha os recursos do equipamento, atravs do hypervisor,
com o sistema operacional principal, chamado de hospedeiro.
Apesar disso a mquina virtual um ambiente operacional
completo e se comporta como se fosse um computador
independente.

18
O que Virtualizao ?

19
Porque usar Virtualizao ?
Aproveitamento melhor dos recursos do servidor:
Sabemos que na maior parte dos servidores, os seus recursos no
so usados ao mximo. Portanto poderamos oferecer em um nico
equipamento mais de um servio.

Melhor gerenciamento:
Ao usar servidores virtuais torna-se irrelevante a infraestrutura fsica
dos equipamentos. Conseqentemente podemos migrar os
servidores virtuais para diferentes equipamentos sem precisar
reconfigur-los.

Aumento da segurana:
Usando mquinas virtuais podemos impedir que servios
vulnerveis interrompam outros servios disponibilizados pelo
mesmo equipamento, j que estaro em ambientes diferentes.

20
Softwares Virtualizadores
VMWare Server:
um programa que cria um servidor de mquinas virtuais.
Acessando o servidor via localhost (127.0.0.1) pode-se utiliza-lo
localmente sem necessidade de uma infraestrutura de rede. Ele
pode ser obtido em: http://www.vmware.com/download/server/

VirtualBox:
um programa mais simples que o VMWare Server. Ele
cria/gerencia mquinas virtuais locais e licenciado como Software
Livre. Ele pode ser obtido em http://www.virtualbox.org/

Xen:
Distingue-se do VMware por rodar mais prximo do hardware (por
vezes, e a mquina virtual pode compartilhar o mesmo ncleo do
sistema base). Ele licenciado como cdigo aberto.Ele pode ser
obtido em http://www.xensource.com
21
VMWare Server

22
Inotek VirtualBox

23
Xen

24
Pesquisa
Computao Sob-Demanda com uso de Agregados de
Computadores e Virtualizao

25
Proposta da Pesquisa
O objetivo de nossa pesquisa desenvolver ferramentas que
permitam o uso efetivo de agregados de computadores com uso de
virtualizao.

Produtividade:
Melhor utilizao dos recursos, caracterstica marcante dos
sistemas que utilizam virtualizao.
Gerenciamento:
Ao submeter as aplicaes ao cluster por meio de mquinas
virtuais, poderemos determinar como sero usados os recursos
alm de tornar a infraestrutura real dos computadores
irrelevante.
Segurana:
As mquinas virtuais isolam uma aplicao da outra, o que
impede que falhas em uma aplicao comprometa outras
aplicaes em execuo.
26
Metodologia

Iremos montar um agregado de computadores com sistemas


operacionais de cdigo aberto e ferramentas tradicionais de
clusterizao, avaliando o desempenho de diversos monitores de
mquinas virtuais (hypervisor).

Depois da escolha dos programas adequados haver um esforo


de desenvolver os aplicativos para facilitar o gerenciamento do
cluster com virtualizao, eventualmente com uso da linguagem
de programao Python.

27
Infraestrutura

Possumos 20 computadores IBM, compostos por processadores


Intel Pentium 4 HT de 3.2GHz com 1GB de memria. Ligados a
uma rede convencional de 100Mbps.

A UFRJ est adquirindo, mediante parceria com a Petrobrs, um


cluster com 256 ns com 2 processadores AMD Opteron Quad-
Core de 64 bits, perfazendo um total de 2048 ncleos
processadores. Cada n tambm possui 16 GB de memria RAM e
100 GB de disco e interface para uma rede de alto desempenho
do tipo Infiniband com largura de banda de 20 Gbps.

28
Softwares Utilizados

GNU/Linux CentOS 5
Sistema operacional livre baseado no Red Hat Enterprise Linux.
Usado como n principal e como sistema virtualizador.
TORQUE Resource Manager

Torque um gerenciador de recursos que proporciona o controle


sobre os ns e seus trabalhos.
Maui Cluster Scheduler

Maui um agendador de tarefas para clusters e


supercomputadores. Ele permite que seja feito mais
detalhamentos dos trabalhos a serem submetidos.
GNU/Linux Fedora 7

Sistema operacional livre paseado no Red Hat mas voltado para


Desktops. Usado, virtualizado, como n convencional.

29
Resultados Previstos

Pretendemos obter no prazo de 24 meses um prottipo de um


cluster com as ferramentas de gerenciamento instaladas e realizar
a avaliao de resultados reais com execuo de aplicaes
reais.

As ferramentas resultantes do projeto estaro disponveis


publicamente com o fonte sob a licena padro FSF (Free
Software Fundation).

30
Dvidas !?

Prof. Gabriel Pereira da Silva / Davi Vercillo C. Garcia


gabriel.silva@ufrj.br davi.vercillo@ufrj.br
31
Bibliografia

Wikipedia (Ingls):
http://en.wikipedia.org
Wikipedia (Portugus):
http://br.wikipedia.org
TOP500 Supercomputing Sites:
http://www.top500.org
HP Brasil:
http://www.compaq.com.br/pyme/solucoes/apr_solucoes_01.html

32

Anda mungkin juga menyukai