Vous êtes sur la page 1sur 55

Computao em Nuvem

Definio
Computao em Nuvem, engloba as
chamadas nuvens, que so ambientes que
possuem recursos (hardware, plataformas de
desenvolvimento e/ou servios) acessados
virtualmente e de fcil utilizao. Esses
recursos, devido virtualizao, podem ser
reconfigurados dinamicamente de modo a se
ajustar a uma determinada varivel,
permitindo, assim, um uso otimizado dos
recursos.

Histria
O conceito de disponibilizar servios de
software e hardware por uma rede global
surgiu na dcada de 60, por Joseph Carl
Robnett Licklider, um dos responsveis pelo
desenvolvimento da ARPANET.
Porm os primeiros marcos da computao
em nuvem s surgiram em 1999, com
aplicaes empresariais na internet.

Introduo
Computao em nuvem uma tendncia
recente de tecnologia cujo objetivo
proporcionar servios de Tecnologia da
Informao (TI) sob demanda com pagamento
baseado no uso.

Viso geral de uma nuvem


computacional

Na computao em nuvem os recursos de TI


so fornecidos como um servio, permitindo
aos usurios acessarem os servios sem a
necessidade de conhecimento sobre a
tecnologia utilizada.

Conceitos de Computao em Nuvem


A nuvem uma infra-estrutura de
comunicao
entre
os
componentes
arquiteturais, baseada em uma abstrao que
oculta a complexidade de infraestrutura.

Para utilizarem os servios, os usurios


necessitam apenas ter em suas mquinas um
sistema operacional, um navegador e acesso a
Internet. Todos os recursos e processamentos
computacionais esto disponveis na Internet.

O modelo de computao em nuvem foi


desenvolvido com o objetivo de fornecer
servios de fcil acesso e de baixo custo e
garantir
caractersticas
tais
como
disponibilidade e escalabilidade.

Caractersticas Essenciais
A elasticidade rpida de recursos, amplo acesso
e medio de servio so caractersticas bsicas
para compor uma soluo de computao em
nuvem.

Auto servio
O usurio pode adquirir um recurso
computacional,
como
tempo
de
processamento
no
servidor
ou
armazenamento na rede na medida em que
necessite e sem precisar de interao humana
com os provedores de cada servio.

Amplo acesso
Recursos so disponibilizados por meio da
rede e acessados atravs de mecanismos
padronizados, tais como celulares, laptops e
PDAs.

Elasticidade rpida
Recursos podem ser adquiridos de forma
rpida e elstica, em alguns casos
automaticamente, caso haja a necessidade de
escalar com o aumento da demanda, e
liberados, na retrao dessa demanda.

Servio medido
Sistemas em nuvem automaticamente
controlam e otimizam o uso de recursos por
meio de uma capacidade de medio. A
automao realizada em algum nvel de
abstrao apropriado para o tipo de servio,
tais como armazenamento, processamento,
largura de banda e contas de usurio ativas.

Modelos de Servios

Software como Servio (SaaS)


Os softwares so acessveis a partir de vrios
dispositivos do usurio.
No SaaS, o usurio no administra ou controla
a infra-estrutura subjacente, incluindo rede,
servidores,
sistemas
operacionais,
armazenamento, ou mesmo as caractersticas
individuais da aplicao, exceto configuraes
especficas.

Plataforma como Servio (PaaS)


O usurio no administra ou controla a infraestrutura
subjacente,
incluindo
rede,
servidores,
sistemas
operacionais
ou
armazenamento, mas tem controle sobre as
aplicaes implantadas e, possivelmente, as
configuraes de aplicaes hospedadas nesta
infraestrutura.

Infra-estrutura como Servio (IaaS)


O principal objetivo do IaaS tornar mais fcil
e acessvel o fornecimento de recursos, tais
como servidores, rede, armazenamento e
outros recursos de computao fundamentais
para construir um ambiente de aplicao sob
demanda, que podem incluir sistemas
operacionais e aplicativos.

Modelo de Implantao
Tratando-se do acesso e disponibilidade de
ambientes de computao em nuvem, tem-se
diferentes tipos de modelos de implantao.

Privado
No modelo de implantao privado, a infraestrutura de nuvem utilizada exclusivamente
para uma organizao, sendo esta nuvem local
ou remota e administrada pela prpria
empresa ou por terceiros.

Pblico
No modelo de implantao pblico, a infraestrutura de nuvens disponibilizada para o
pblico em geral, sendo acessado por
qualquer usurio que conhea a localizao do
servio.

Comunidade
No modelo de implantao comunidade
ocorre o compartilhamento por diversas
empresas de uma nuvem, sendo esta
suportada por uma comunidade especfica
que partilhou seus interesses, tais como a
misso, os requisitos de segurana, poltica e
consideraes sobre flexibilidade.

Hbrido
No modelo de implantao hbrido, existe
uma composio de duas ou mais nuvens, que
podem ser privadas, comunidade ou pblica e
que permanecem como entidades nicas e
ligadas por uma tecnologia padronizada ou
proprietria que permite a portabilidade de
dados e aplicaes.

Papis e Escalabilidade de Nuvens


Os papis so importantes para definir
responsabilidades, acesso e perfil para os
diferentes usurios que fazem parte e esto
envolvidos em uma soluo de computao
em nuvem.
J a escalabilidade de nuvem importante
para transparecer para o usurio a iluso de
recursos computacionais infinitos.

O provedor responsvel por disponibilizar,


gerenciar e monitorar toda a estrutura para a
soluo de computao em nuvem, deixando
os desenvolvedores e usurios finais sem
esses tipos de responsabilidades. Para isso, o
provedor fornece servios nos trs modelos
de servios.

A computao em nuvem composta por


uma enorme rede de ns que necessita ser
escalvel.
A escalabilidade deve ser transparente para os
usurios, podendo estes armazenar seus
dados na nuvem sem a necessidade de saber
onde os dados esto armazenados ou como
so acessados.

Arquitetura de Computao em
Nuvem
Uma camada uma diviso lgica de
componentes de hardware e software. Alguns
destes recursos computacionais podem ser
agrupados e organizados para realizar uma
determinada tarefa do sistema como um todo.
Cada camada pode ter seu gerenciamento ou
monitoramento de forma independente das
outras camadas, melhorando a flexibilidade,
reusabilidade e escalabilidade no tocante a
substituio
ou
adio
de
recursos
computacionais sem afetar as outras camadas.

Tecnologias de Computao em
Nuvem
A computao em nuvem envolve uma grande
quantidade de conceitos e tecnologias.
Amazon, Google e Microsoft esto publicando
servios computacionais seguindo a lgica da
infraestrutura de computao em nuvem,
sendo a Amazon a pioneira em disponibilizar e
comercializar infraestrutura deste tipo.

Tecnologias de Computao em
Nuvem
Outros trabalhos tm desenvolvido novas
tcnicas
para
compor
infraestruturas
adequadas a cada contexto dos ambientes de
computao em nuvem.

MapReduce
Modelo de programao que visa o processamento
de grandes volumes de dados, onde o usurio
especifica sua aplicao atravs da sequncia de
operaes MapReduce.
As tarefas de paralelismo, tolerncia a falhas,
distribuio dos dados e balanceamento de carga so
deixadas a cargo do sistema MapReduce,
simplificando o processo de desenvolvimento.

MapReduce
Do ponto de vista de sistemas distribudos, o MapReduce
oferece transparncia de replicao, distribuio e
sincronizao.
Cada operao composta por duas funes.
Funo de Mapeamento: recebe uma poro do arquivo de entrada e,
de acordo com a especificao do usurio, emite um conjunto de
tuplas intermedirias no formato chave-valor.
Funo Reduo: recebe um conjunto de valores associados a cada
chave, chamados de blocos. O processamento, definido pelo usurio,
realizado sobre cada bloco. Por fim, cada funo de reduo emite um
conjunto de tuplas que so armazenadas em arquivos de sada.

MapReduce

MapReduce
O
sistema
MapReduce
gerencia
o
processamento atravs de um processo
master, cuja funo de orquestrar o
processamento e gerenciar o processo de
agrupamento de registros e distribuir os
blocos de forma equilibrada.

Amazon EC2
Ambiente de computao em nuvem
disponvel atravs de servios web e com
caractersticas
de
escalabilidade,
disponibilidade, elasticidade e desempenho
para aplicaes executadas neste ambiente.
Disponibiliza uma infraestrutura completa
para computao em diversos nveis de
processamento.

Amazon EC2
O EC2 permite um controle completo de suas
instncias, sendo possvel acessar e interagir com
cada uma destas, de forma similar a mquinas
convencionais.
Tambm possvel escolher as caractersticas de
cada instncia, tais como sistema operacional,
pacotes de softwares e as configuraes das
mquinas,
como
CPU,
memria
e
armazenamento.
Utiliza firewall para acesso s instncias.

Amazon EC2
O EC2 fornece um ambiente altamente confivel,
visto que a substituio de instncias pode ser
realizada de forma rpida, garantindo o QoS.
Para fornecer uma soluo completa para
computao, processamento de consultas e
armazenamento, o EC2 trabalha em conjunto
com:
Amazon S3 (Amazon Simple Storage Service)
Amazon SimpleDB e o
Amazon SQS (Amazon Simple Queue Service)

Amazon EC2

Eucalyptus
Infraestrutura de cdigo aberto que fornece
uma interface compatvel com o Amazon EC2,
S3, EBS (Elastic Block Store) e permite aos
usurios criarem uma infraestrutura e
experimentar a computao em nuvem.
A arquitetura simples, flexvel e modular e
contm uma concepo hierrquica que
reflete os recursos comuns do ambiente.

Eucalyptus
Tem como objetivo auxiliar a pesquisa e o
desenvolvimento de tecnologias para computao em
nuvem e possui as seguintes caractersticas: interface
compatvel com o EC2, instalao e implantao
simples usando ferramentas de gerenciamento de
clusters, apresenta um conjunto de polticas de
alocao extensvel de nuvem, sobreposio de
funcionalidade que no requer nenhuma modificao
em ambiente Linux, ferramentas para administrar e
auxiliar a gesto do sistema e dos usurios e
capacidade de configurar vrios clusters, cada um com
endereos privado de rede interna em uma nica
nuvem.

Eucalyptus
Esse sistema permite aos usurios iniciar,
controlar o acesso e gerenciar todas as
mquinas virtuais utilizando uma emulao do
protocolo SOAP (Simple Object Access
Protocol) do Amazon EC2 e interfaces de
consulta. Neste sentido, os usurios interagem
com o Eucalyptus utilizando as ferramentas e
interfaces exatamente do mesmo modo que
eles interagiriam com o Amazon EC2.

Microsoft Azure
Plataforma para a implementao de computao
em nuvem que oferece um conjunto especfico
de servios para desenvolvedores.
Pode ser usada por aplicaes em execuo em
nuvem ou fora desta. A plataforma Azure
formada pelo sistema operacional Windows
Azure e um conjunto de servios: Live Services,
.NET Services, SQL Services, SharePoint Services e
Dynamics CRM Services. A figura seguinte mostra
a plataforma Azure.

Microsoft Azure

Google App Engine


Plataforma para o desenvolvimento de
aplicaes Web escalveis que so executados
na infraestrutura do Google.
Fornece um conjunto de APIs e um modelo de
aplicao que permite aos desenvolvedores
utilizarem servios adicionais fornecidos pelo
Google, como o e-mail, armazenamento, entre
outros.

Aplicaes de Computao em Nuvem


Outros exemplos mais recentes e concretos do
uso de computao em nuvem so:
O jornal NY Times usou EC2 e S3 da Amazon para
converter 15 milhes de artigos de notcias para PDF
(4 TB), para distribuio online, em uma questo de
minutos.
A bolsa de valores eletrnica Nasdaq usa S3 para
disponibilizar informaes sobre o histrico de aes,
sem onerar sua prpria infra-estrutura de TI.
Financeiras e seguradoras usam a nuvem para
executar a avaliao de risco e calcular o custo dos
emprstimos.

Desafios
Computao em nuvem apresenta diversas
vantagens, mas tambm possui uma srie de
desafios a serem superados na utilizao
desse tipo de ambiente.

Desafios - Segurana
Deve-se ter formas para impedir o acesso no
autorizado a informaes e que os dados
sensveis permaneam privados, pois estes
sero processados fora da empresa.
Questes
como
autenticidade,
confidencialidade e integridade devem ser
garantidas.

Desafios Gerenciamento de Dados


O gerenciamento de dados considerado um
ponto crtico no contexto de computao em
nuvem. Os SGBDs relacionais no possuem
escalabilidade quando milhares de stios so
considerados.
Assim,
aspectos
de
armazenamento de dados, processamento de
consultas e controle transacional tm sido
flexibilizados por algumas abordagens para
garantir a escalabilidade, mas ainda no existem
solues que combinem estes aspectos de forma
a melhorar o desempenho sem comprometer a
consistncia dos dados.

Desafios Gerenciamento de Dados


Os servios em nuvem para dados oferecem
APIs mais restritas do que os SGBDs
relacionais, com uma linguagem minimalista
de consulta e garantia de consistncia
limitada. Isso exige mais esforo de
programao dos desenvolvedores, mas
permite aos provedores construrem servios
mais previsveis e oferecerem SLA.

Desafios Autonomia
A computao em nuvem um sistema
autnomo gerenciado de forma transparente
para os usurios. Hardware e software dentro de
nuvens
podem
ser
automaticamente
reconfigurados,
orquestrados
e
estas
modificaes so apresentadas ao usurio como
uma imagem nica. Essa autonomia
importante, pois reduz o custo de equipe de
monitoramento do sistema tanto no mbito
centralizado quanto distribudo.

Desafios Disponibilidade de Servios


A disponibilidade de servios permite aos
usurios acessar e utilizar a nuvem onde e
quando desejarem. Como se trata da Internet
podem
ocorrer
atrasos
e
sistemas
indisponveis. Os ambientes de computao
em nuvem devem prover alta disponibilidade.
Para tanto, esses podem utilizar tcnicas de
balanceamento de carga dinmico e
composio de nuvens de forma a atender as
necessidades dos usurios.

Desafios Escalabilidade e
Desempenho
As nuvens de servios e as plataformas
oferecidas podem ser dimensionadas por
vrios fatores, tais como localizaes
geogrficas, desempenho ou configuraes.
Apesar das limitaes de rede e segurana, as
solues de computao em nuvem devem
fornecer elevado desempenho, alm de ser
flexvel para se adaptar diante de uma
determinada quantidade de requisies.

Desafios Integrao de Servios


A integrao de servios um grande desafio,
no sentido de oferecer interoperabilidade
entre recursos heterogneos para prover um
processamento de maior porte. Assim, o uso
de tecnologias de integrao de dados,
servios e linguagens devem ser empregadas e
adaptadas no contexto da infraestrutura de
computao em nuvem.

Desafios Padronizao
Empresas de desenvolvimento de software
tm interesse que aplicaes possam ser
transferidas para a nuvem de forma simples.
Essas empresas tambm esperam que exista
interoperabilidade entre diferentes servios
de nuvem, como por exemplo, entre servios
de armazenamento.

Desafios Avaliao de Nuvem


Existem muitos servios disponveis em
nuvem e algumas iniciativas para avaliar
servios
especficos.
Assim,
o
desenvolvimento de um benchmark de
propsito geral, que permita avaliar diversos
tipos de servios um ponto importante.

Referncias
SOUSA, F. R. C.; MOREIRA, L. O.; MACHADO, J.
C. Computao em Nuvem: Conceitos,
Tecnologias, Aplicaes e Desafios. Cap. 7.
25p.

Vous aimerez peut-être aussi