Semana de Estudos
em Cloud Computing
Outubro de 2011
Oficina para a Construção de um Cluster
de Computadores de Balanceamento de
Carga para Servidor Web
Prof. Dr. José Luís Zem
[email protected]
http://www.unimep.br/~jlzem
Semana de Estudos em Cloud
Computing – Outubro de 2011
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Alguns Exemplos de Clusters
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Tianhe-1A
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Jaguar
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Outras Plataformas
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Watson
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Watson
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
K Computer
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
K Computer
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
K Computer
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Tupã
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Tupã
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Galileu
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Galileu
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Computação Distribuída
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Computação Distribuída

Single System Image - Usuários desconhecem a multiplicidade
de máquinas e o acesso aos recursos remotos é realizado da
mesma maneira que se faz o acesso aos recursos locais.

Migração de Dados
 Transferência de dados movendo-se todo o arquivo, ou então
transferindo somente a porção do arquivo que será necessária
à tarefa a ser executada.

Migração da Computação
 Transferência da computação ao invés dos dados através do
sistema de computação.

Migração de Processos
 Executa todo um processo ou suas partes em diferentes sites.
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Computação em Nuvem
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Computação em Nuvem
Google
Microsoft
Amazon
EMC
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Computação em Grade
GRID
GRID
GRID
GRID
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Computação em Grade

Representação lógica.
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Cluster de Computadores

Funções lógicas dos nós.
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Cluster de Computadores
 Cluster de Alto Desempenho.
NC 01
NC 02
NC 03
NC 04
NC 05
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Cluster de Computadores

Cluster de Alta Disponibilidade.
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Cluster de Computadores

Cluster de Alta Confiabilidade.
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Cluster de Computadores

Cluster de Balanceamento de Carga.
NC01
NC02
NC03
NC04
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
A Plataforma Computacional
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Uma requisição http padrão
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Topologia do cluster de uso geral
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Solicitação de um recurso
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Escolhendo o nó de atendimento
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Encaminhando a solicitação
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Buscando o arquivo
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Retorno do arquivo solicitado
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Processamento do requisição
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Retorno do resultado
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Decidindo pelo destinatário
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
O resultado é entregue
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Construindo o Cluster
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Etapas

O Cluster de Computadores.

Clonar disco da máquina virtual.

Criar a máquina virtual NP01.

Configurar o nó NP01.

Criar a máquina virtual NA01.

Configurar o nó NA01.

Criar a máquina virtual NC01.

Configurar o nó NC01.

Criar a máquina virtual NC02.

Configurar o nó NC02.

Testes.
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
O Cluster de Computadores
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Clonar disco da máquina virtual

Posicionar-se na unidade e diretório onde o VirtualBox foi
instalado.

vboxmanage
clonehd
“\caminho\disco_destino.vdi”
“\caminho\disco_base.vdi”
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Nó Principal - NP01
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Criar a máquina virtual NP01
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Configurar o nó NP01

Inserir no final do arquivo /etc/hosts





192.168.5.1
192.168.5.2
192.168.5.3
192.168.5.4
np01
na01
nc01
nc02
Inserir no final do arquivo /etc/resolv.conf



search unimep.br
nameserver 200.18.243.36
nameserver 200.18.243.45
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Configurar o nó NP01

Inserir no final do arquivo /etc/rc.d/rc.local



hostname np01
loadkeys br-abnt2.map.gz
iptables -F



ifconfig ethx down
ifconfig ethx up
ifconfig ethx 192.168.5.1 broadcast 192.168.5.255 netmask
255.255.255.0


echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o ethy -j MASQUERADE
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Configurar o nó NP01

Inserir no final do arquivo /etc/rc.d/rc.local (ainda)



ipvsadm -A -t $servidor:80 -s rr
ipvsadm -a -t $servidor:80 -r nc01:80 -m
ipvsadm -a -t $servidor:80 -r nc02:80 -m



ipvsadm -A -t $servidor:22 -s rr
ipvsadm -a -t $servidor:22 -r nc01:22 -m
ipvsadm -a -t $servidor:22 -r nc02:22 -m
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Nó de Armazenamento - NA01
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Criar a máquina virtual NA01
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Configurar o nó NA01

Inserir no final do arquivo /etc/hosts





192.168.5.1
192.168.5.2
192.168.5.3
192.168.5.4
np01
na01
nc01
nc02
Inserir no final do arquivo /etc/resolv.conf



search unimep.br
nameserver 200.18.243.36
nameserver 200.18.243.45
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Configurar o nó NA01

Inserir no final do arquivo /etc/rc.d/rc.local



hostname na01
loadkeys br-abnt2.map.gz
iptables -F



ifconfig ethx down
ifconfig ethx up
ifconfig ethx 192.168.5.2 broadcast 192.168.5.255 netmask
255.255.255.0
route add default gw 192.168.5.1

Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Configurar o nó NA01

Inserir no final do arquivo /etc/exports


/mnt/hdb1/area_web
192.168.5.3(rw,no_root_squash,fsid=0,async,no_subtree_chec
k)
/mnt/hdb1/area_web
192.168.5.4(rw,no_root_squash,fsid=1,async,no_subtree_chec
k)
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Nó de Computação - NC01
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Criar a máquina virtual NC01
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Configurar o nó NC01

Inserir no final do arquivo /etc/hosts





192.168.5.1
192.168.5.2
192.168.5.3
192.168.5.4
np01
na01
nc01
nc02
Inserir no final do arquivo /etc/resolv.conf



search unimep.br
nameserver 200.18.243.36
nameserver 200.18.243.45
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Configurar o nó NC01

Inserir no final do arquivo /etc/rc.d/rc.local



hostname nc01
loadkeys br-abnt2.map.gz
iptables -F




ifconfig ethx down
ifconfig ethx up
ifconfig ethx 192.168.5.3 broadcast 192.168.5.255 netmask
255.255.255.0
route add default gw 192.168.5.1


rpc.portmap
mount na01:/mnt/hdb1/area_web /var/www
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Nó de Computação - NC02
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Criar a máquina virtual NC02
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Configurar o nó NC02

Inserir no final do arquivo /etc/hosts





192.168.5.1
192.168.5.2
192.168.5.3
192.168.5.4
np01
na01
nc01
nc02
Inserir no final do arquivo /etc/resolv.conf



search unimep.br
nameserver 200.18.243.36
nameserver 200.18.243.45
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Configurar o nó NC02

Inserir no final do arquivo /etc/rc.d/rc.local



hostname nc02
loadkeys br-abnt2.map.gz
iptables -F




ifconfig ethx down
ifconfig ethx up
ifconfig ethx 192.168.5.4 broadcast 192.168.5.255 netmask
255.255.255.0
route add default gw 192.168.5.1


rpc.portmap
mount na01:/mnt/hdb1/area_web /var/www
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Testes
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Congratulações
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Semana de Estudos
em Cloud Computing
Outubro de 2011
Oficina para a Construção de um Cluster
de Computadores de Balanceamento de
Carga para Servidor Web
Prof. Dr. José Luís Zem
[email protected]
http://www.unimep.br/~jlzem
Anexo – Criando o disco base

Logar como



Carregar o mapeamento do teclado


usuario: root
senha: toor
loadkeys br-abnt2.map.gz
Desabilitar as regras do firewall

iptables -F
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Anexo – Criando o disco base

1. Passo: Preparar o disco virtual

fdisk /dev/hda
=> carregar o software particionador
 n
=> criar nova partição
 p
=> partição primária
 1
=> primeira partição
 enter => usar o cilindro sugerido pelo particionador
 enter => usar o cilindro sugerido pelo particionador
 p
=> exibir a tabela de partições
 a
=> ativar partição para ser de boot
 1
=> número da partição a ser usada para o boot
 p
=> exibir a tabela de partições
 t
=> mudar o tipo da partição
 6
=> numero correspondente ao tipo FAT16
 p
=> exibir a tabela de partições
 w
=> gravar a tabela de partição e sair do particionador
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Anexo – Criando o disco base

2. Passo: Criar um sistema de arquivos no disco virtual


mkdosfs
FAT16
/dev/hda1
=> formatar a partição com o sistema
3. Passo: Copiar aquivos do CDROM para o disco virtual



mkdir /mnt/hda1
=> criar o ponto de
montagem
mount -t vfat /dev/hda1 /mnt/hda1 => montar a partição
para ser usada
cp
-R
/mnt/live/mnt/hdc/*
/mnt/hda1
=> copiar o
conteúdo do cdrom para o disco virtual
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Anexo – Criando o disco base

4. Passo: Gerar o boot



cd
/mnt/hda1/boot
=> posicionar-se no diretório do
programa instalador do boot
./bootinst.sh
=> programa que instala o boot no disco
virtual
5. Passo: Reinicializar

reboot
=> reinicializa o sistema operacional
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Anexo – Criando o disco base

6. Passo: Configurar o rc.local

vi /etc/rc.d/rc.local

i
inserção
loadkeys br-abnt2.map.gz
iptables -F
<ESC>
:wq




=> entrar no modo de
=> voltar ao modo comando
=> gravar e sair
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Anexo – Criando o disco base

7. Passo: Redefinir o menu de entrada






cd /mnt/hda1/boot
=> posicionar no diretório do
arquivo de menu
vi slax.cfg
=> editar o arquivo de menu
=> remover as linhas do Label xconf até a
anterioro ao Label slax
<ESC>
=> voltar ao modo comando
:wq
=> gravar e sair
8. Passo: Reinicializar

reboot
=> reinicializa o sistema operacional
Construção de um Cluster de Computadores de Balanceamento de Carga para Servidor Web
Download

Slides - Unimep