Fernando Seabra Chirigati
Universidade Federal do Rio de Janeiro
EEL879 - Redes de Computadores II
Professores Luís Henrique Costa e Otto Duarte
Introdução
Grid x Nuvem
Componentes
Arquitetura
Vantagens e Desafios
Pesquisa e Desenvolvimento
Conclusão
Perguntas e Respostas
O que é Computação em Nuvem?
Infraestrutura computacional na rede
Existem diversas definições
Definição geral em VAQUERO et al. 2009
▪ Virtualização
▪ Escalabilidade
▪ Modelo pay-per-use
??
O que é Computação em Nuvem?
A nuvem é uma camada conceitual
▪ Aplicativos e dados em data centers
▪ Software e hardware na forma de serviços
▪ Abstração da infraestrutura
▪ Ilusão de recursos infinitos
Introdução
Grid x Nuvem
Componentes
Arquitetura
Vantagens e Desafios
Pesquisa e Desenvolvimento
Conclusão
Perguntas e Respostas
Semelhanças
Reduzir custos de computação
Aumentar flexibilidade
Diferenças
Alocação de recursos
Virtualização
Plataformas e Dependências
Escalabilidade
Introdução
Grid x Nuvem
Componentes
Arquitetura
Vantagens e Desafios
Pesquisa e Desenvolvimento
Conclusão
Perguntas e Respostas
Os conceitos usados em computação emnuvem não são novos
Virtualização
Serviços baseados na Internet
Modelo pay-per-use
Software livre
A inovação está em reunir todos essescomponentes em um sistema maior
Virtualização
Criação de máquinas virtuais
Abstração do hardware
Na computação em nuvem:
▪ Escalabilidade
▪ Adição de recursos é feita de forma automática
▪ Abstração da infraestrutura da nuvem
▪ Data centers não são tratados como sistemas discretos
Tipos de virtualização
Serviços baseados na Internet
Aplicações e recursos fornecidos na forma deserviços
Acessados de qualquer lugar e a qualquer hora
A segurança é um desafio
Modelo pay-per-use
Usuário paga somente por aquilo que usa
Não há comprometimento em reservar umaquantidade exata de recursos
Escalabilidade automática permite seu uso
Cobrança baseada no consumo dos recursos
Modelo pay-per-use
Uso mais eficiente dos recursos
▪ Não há desperdício
Permite a redução de dois riscos
▪ Subutilização
▪ Saturação
Software Livre
Papel fundamental
Criação de ferramentas acessíveis
Facilita e amplia desenvolvimento de aplicações
Introdução
Grid x Nuvem
Componentes
Arquitetura
Vantagens e Desafios
Pesquisa e Desenvolvimento
Conclusão
Perguntas e Respostas
Atores
Prestadores de Infraestrutura (IPs)
Prestadores de Serviços (SPs)
Usuários dos Serviços
Atores
Camadas
Cenários
IaaS (Infrastructure as a Service)
PaaS (Platform as a Service)
SaaS (Software as a Service)
Cenários
Tipos de Nuvem
Nuvens Públicas
▪ Data center privado virtual
Nuvens Privadas
Nuvens Híbridas
Introdução
Grid x Nuvem
Componentes
Arquitetura
Vantagens e Desafios
Pesquisa e Desenvolvimento
Conclusão
Perguntas e Respostas
Vantagens
Acesso aos dados por serviços
Recursos automaticamente escaláveis
Usuário só paga aquilo que consome
▪ Desperdício evitado
Minimização dos riscos de infraestrutura
▪ Nuvens híbridas
Desafios
Segurança
▪ Ambiente seguro mínimo
▪ Esquema de criptografia
▪ Controle de acesso rigoroso
▪ Sistema de gravação de cópias de segurança
▪ Novos mecanismos são necessários
▪ Grande sensação de insegurança
Desafios
Escalabilidade
▪ Aplicações e dados devem ser escaláveis
▪ Resposta automática à demanda
▪ Modelo pay-per-use
Desafios
Interoperabilidade
▪ Aplicações não-restritas a uma nuvem
▪ Portabilidade ainda difícil
▪ Necessidade de padrões e interfaces
▪ Preocupação dos usuários
▪ Dados presos em uma nuvem (Data lock-in)
Desafios
Confiabilidade
▪ Aplicações não podem falhar com freqüência
▪ Aplicações não podem perder os dados ao falhar
▪ Realização de cópias de segurança
▪ Armazenamento em um local seguro
Desafios
Disponibilidade
▪ Serviços podem ficar indisponíveis
▪ Não pode ser freqüente
▪ Ponto único de falha
▪ Problemas podem ser maiores
Introdução
Grid x Nuvem
Componentes
Arquitetura
Vantagens e Desafios
Pesquisa e Desenvolvimento
Conclusão
Perguntas e Respostas
IaaS
Eucalyptus
▪ Software livre
CloudSim
▪ Simulação
Amazon Elastic Comput Cloud (EC2)
▪ Amazon Machine Image (AMI)
PaaS
Google App Engine
▪ Permite o uso de APIs
▪ Possui conta gratuita
Bungee Connect
▪ Desenvolvimento e teste gratuitos
Heroku
▪ Possui conta gratuita
SaaS
Salesforce.com
▪ Aplicações empresariais
▪ Softwares CRM
Google Apps
▪ Gmail, Google Talk, Google Docs, ...
Microsoft Azura
▪ Sistema operacional em nuvem
Google e IBM
Parceria em computação em nuvem
Sete universidades dos EUA envolvidas
PCiO
Sistema de computação em nuvem brasileiro
Problemas
▪ Resistência dos usuários
▪ Serviço de Internet
Introdução
Grid x Nuvem
Componentes
Arquitetura
Vantagens e Desafios
Pesquisa e Desenvolvimento
Conclusão
Perguntas e Respostas
A computação em nuvem vem ganhandoespaço
As pesquisas na área tem aumentado
Eucalyptus, CloudSim, Microsoft Azura, ...
Análise de custos (KONDO et al. 2009)
Computação no Céu (KEAHEY et al. 2009)
Rompe com os atuais paradigmas
Assunto emergente por muitos anos
Introdução
Grid x Nuvem
Componentes
Arquitetura
Vantagens e Desafios
Pesquisa e Desenvolvimento
Conclusão
Perguntas e Respostas
1. Quais são as principais vantagens que avirtualização oferece à computação emnuvem?
Pode-se destacar duas principais vantagens. Aprimeira é a escalabilidade; a virtualizaçãopermite que os recursos sejam escaláveis. Asegunda é a abstração de toda a infraestruturadas nuvens, ou seja, os usuários só vêem seusdados e suas aplicações.
2. Quais são os principais riscos, relacionados àutilização dos recursos, que o modelo pay-per-use permite reduzir?
O modelo pay-per-use tem como conseqüência aredução dos riscos de subutilização e de saturação.O primeiro diz respeito ao uso de uma quantidademenor dos recursos que foram reservados, o que gerarecursos ociosos. O segundo ocorre quando utiliza-seexcessivamente os recursos reservados, o que podegerar serviços mais lentos e de baixa qualidade.
3. Qual é a principal diferença entre as nuvenspública e privada no que diz respeito àescalabilidade?
Em uma nuvem privada, os recursos ficam limitadosà capacidade de seu sistema de hardware, o quepode dificultar a escalabilidade. Por outro lado, emuma nuvem pública, os recursos são facilmenteescaláveis devido à existência de grandes datacenters.
4. Cite as três capacidades que devem seroferecidas em uma nuvem de maneira aestabelecer um ambiente seguro mínimo.
Para garantir um ambiente seguro mínimo, umanuvem deve oferecer um esquema de criptografia,um controle de acesso rigoroso e um sistema degravação de cópias de segurança.
5. Por que a interoperabilidade é um dosdesafios na computação em nuvem?
Porque, apesar de muitos prestadores de serviços sepreocuparem com essa característica aodesenvolver as aplicações, ainda há a necessidadeda implementação de padrões e interfaces quepermitam essa portabilidade.