SISTEMAS
DISTRIBUÍDOS
Elton Oliveira
SISTEMAS DISTRIBUÍDOS
•O que são?
“Um sistema distribuído é uma coleção de
computadores independentes que aparecem
para os usuários do sistema como um único
computador.” (Tanenbaum)
SISTEMAS DISTRIBUÍDOS
SISTEMAS DISTRIBUÍDOS
Algumas características
• Compartilhamento de recursos
• Transparência
• Tolerância a falhas
• Economia
SISTEMAS DISTRIBUÍDOS
SISTEMAS DISTRIBUÍDOS
Vantagens
• Melhor relação custo/benefício
• Maior capacidade de processamento
• Compartilhamento de recursos
• Maior confiabilidade e disponibilidade
• Maior escalabilidade
SISTEMAS DISTRIBUÍDOS
Desvantagens
• Desenvolvimento de um software adequado
• Segurança
• Falhas e ou saturação da comunicação
SISTEMAS DISTRIBUÍDOS
Alguns tipos
• Clusters
• Supercomputadores
• Computação em nuvem (Cloud Computing)
CLUSTERS
Diego Michael
“Cluster”
Etimologia: é uma palavra de
origem inglesa que significa
em tradução livre
aglomerado ou
agrupamento.
Clusters
Conceito na computação
distribuída: é um conjunto
de computadores que
trabalham como um único
sistema.
Switch
Servidor
1 2 3 4
5 6 7 8
Nós
Clusters - Diagrama básico
Problema
f(x)
Divide entre
os nós
1 2
3 4Servidor
Servidor
Clusters - Como funciona?
Solução
 Escalabilidade (desempenho);
 Facilidade de configuração;
 Uso em diversas áreas:
educacional, comercial, médica
entre outras;
 Custo (em destaque...)
Clusters - Vantagens
Quanto custa um
supercomputador?
PC para jogos
PC - Microcomputador
IBM Watson (80 TeraFLOPs)
EUA - Sistema de inteligência artificial
Pesquisas na área médica
Santos Dumont (457 TeraFLOPs)
Laboratório Nacional de Computação Científica
Fonte: top500.org
Titan (17.590 TeraFLOPs)
EUA - DOE/SC/Oak Ridge National Laboratory
Fonte: top500.org
Tianhe-2 (33.862 TeraFLOPs)
China’s National University of Defense Technology
Fonte: top500.org
Em média:
US$ 100 milhões
 É possível reciclar PCs antigos;
 Transformando-os em nós de
um “supercomputador” com
sistema distribuído;
 E o limite é o tamanho da sala!
Clusters - Vantagens
Alguns exemplos:
Clusters
Cluster Beowulf (16 PCs Intel 486)
Desenvolvido em 1994 por Thomas Sterling e Donald Becker - NASA
Cluster com Linux
Chemnitz University of Technology - Alemanha
Cluster com Windows Server
Clustering de Failover - Máquinas físicas ou virtuais
Cluster com GPUs (consoles)
PlayStation e Xbox
Cluster da Unicamp (2 TeraFLOPs)
12 consoles de PlayStation 3 - Unicamp/G1 - 2007
Clusters da UFS
Professores: Ricardo, Tarcicio, Bruno e Leonardo
 Um Cluster SGI no Laboratório
de Computação de Alto de
Desempenho (LCAD), que é um
órgão ligado diretamente a Pro-
Reitoria de Pós-Graduação e
Pesquisa (POSGRAP);
 E em fase de implantação o
Experimental LAboratory in
computer Networks - ELAN:
arquitetura SDN (Redes
Definidas por Software).
(Pronto até fevereiro);
Cluster SGI UFS (≈3 TeraFLOPs)
Professores: Ricardo, Tarcicio, Bruno e Leonardo
 27 nós (22 virtuais + 5 físicos) com 20 Cores em
Intel Xeon 2.2-GHz, com 25MB cachê;
 1 servidor (64-GB de memória; 4 discos de
1000GB SAS 7200 RPM 6Gb/s;
 1 SGI Modular InfiniteStorage com 128TB;
 Fontes Redundantes;
 1 Switch Gigabit Ethernet de 24 portas;
 Softwares: Red Hat Enterprise Linux 6; SGI
Management Center, Softwares Científicos e etc.
Com Raspberry Pi (10 GigaFLOPs)
Josh Kiepert - PhD dissertation - 33 Raspberry Pi - YouTube - 2013
BALANCEAMENTO DE
CARGA
Rafael Louzada
BALANCEAMENTO DE
CARGA
• Definição: Clusters de balanceamento de
carga são clusters cuja função é dividir a
carga de trabalho entre os nós ou
servidores para maior agilidade e
segurança do processo.
TÓPICOS
Motivo de uso
Método de uso
MOTIVO DO USO
Agilidade: divisão de trabalho
acelera o trabalho e aumenta
o desempenho.
Segurança: diversos backups e
alta tolerância a falhas.
Servidor simples
Exemplo de cluster de
balanceamento de carga
MÉTODO DE USO
A carga de trabalho é dividida
entre os nós por um gerenciador.
Cada nó serve como backup da
informação. Um único nó seria
um problema menor em caso de
falha.
MÉTODO DE USO
•O programa de gerenciamento
delega de acordo com a
prioridade estipulada.
•Cada prioridade é programada de
acordo com o algoritmo usado.
MÉTODO DE USO
•Delegação de trabalho para o nó
menos ocupado é chamado sistema
de processamento distribuído, que é
nada mais que uma forma
especifica de balanceamento de
carga.
VIRTUALIZAÇÃO
Leonardo Souza
O que é Virtualização?
A virtualização pode ser definida
como a criação de um ambiente
virtual que simula um ambiente
real, propiciando a utilização de
diversos sistemas e aplicativos sem
a necessidade de acesso físico à
máquina na qual estão hospedados.
História
Servidor IBM Anos 60 Fonte: Dgtecnologia (2014)
Time Sharing
Compartilhamento de tempo, ou seja, o
tempo ocioso entre os processos são
compartilhados com outros processos para
dinamizar o sistema
Hypervisor
Robert P. Goldberg - 1972
Processo LOW-END
VMWare INC. (1999)
VMWare Player Rodando no Windows 7
Tipos de Virtualização
• Virtualização de Aplicativos
•Virtualização de Desktop
• Virtualização de Servidores
Virtualização de Aplicativos
AmbienteTradicional
Ambiente Virtualizado
Virtualização de Desktop
ThinClient
Virtualização de Servidores
Principais Ferramentas de
Virtualização
Para - virtualização
Como Funciona?
Vantagens e Desvantagens
Vantagens
• Gerenciamento centralizado
• Instalações simplificadas
• Facilidade para a execução de backups
• Suporte e manutenção simplificados
• Independência de Hardware
• Migração de servidores para novo hardware
de forma transparente
• Maior disponibilidade e mais fácil
recuperação em caso de desastres
• Compatibilidade total com as aplicações
• Economia de espaço físico
• Economia de energia elétrica utilizada em
refrigeração e na alimentação dos
servidores.
• Segurança
• Confiança e disponibilidade
• Custo
• Adaptação às diferentes cargas de trabalho
• Balanceamento de carga
• Suporte a aplicações legadas
• Redução de custos
• Melhor aproveitamento do espaço físico
• Melhor aproveitamento do hardware
• Simulações
• Pode-se utilizar sistemas operacionais que
não possuam compatibilidade com o
hardware, utilizando os recursos de
virtualização de hardware, possibilitando,
assim, testes ou até mesmo economia com a
compra de hardware de menor custos.
• Redução do downtime
• Facilidade ao migrar ambientes
• Utilização de uma VM como ambiente de
desenvolvimento
Desvantagens
• Grande uso de espaço em disco, já que é preciso
de todos os arquivos para cada sistema
operacional instalado em cada máquina virtual.
• Dificuldade no acesso direto a hardware
• Grande consumo de memória RAM
• Gerenciamento
• Desempenho
E o Futuro?
COMPUTAÇÃO EM
NUVEM
Cloud Computing
COMPUTAÇÃO EM NUVEM
O que é?
• É uma tecnologia que permite acesso remoto
a programas, arquivos e serviços por meio da
internet.
COMPUTAÇÃO EM NUVEM
Como funciona
• Armazenamento de dados por meio de
serviços
• Não há a necessidade de instalação ou
armazenamento de dados
• Acesso remoto, através da internet
COMPUTAÇÃO EM NUVEM
COMPUTAÇÃO EM NUVEM
Relação com Sistemas Distribuídos
MODELOS DE SERVIÇO
IAAS
• Infraestrutura é contratada como serviço
• Contrata capacidade de Hardware, através da
virtualização
• Custo variável de acordo com o uso
IAAS
• Principais provedores: Google Cloud, Amazon
Web Services, IBM, Locaweb
PAAS
• É disponibilizada uma Plataforma Completa
para o desenvolvimento
• Fornece a capacidade de desenvolvimento
com um baixo custo
• Segurança integrada
PAAS
• Principais provedores: Google App Engine,
OpenShift
SAAS
SAAS
VANTAGENS
• Escalabilidade
• Redução de Custos
• Tecnologia de ponta
• Engajamento dos fornecedores
• Amplo acesso
VANTAGENS
SEGURANÇA
FUTURO
FUTURO
• Mais aplicações disponíveis em nuvem
• Aumento do crescimento do mercado
• Aumento da quantidade de pequenas
empresas utilizando a nuvem
• Aumento da utilização da nuvem por usuários
comuns

Apresentação HyperCloud GT8