Você está na página 1de 32

Computao em Nuvem

Conceitos e Estudos de Caso













Victor de Almeida Xavier (VX)

Outubro de 2010


[Contra-Capa da UFLA]



3
[Sumrio]

4

Computao em Nuvem (Cloud Computing)

Parte I Conceitos


Partimos da premissa de que servios
de dados e sua arquitetura precisam estar em
servidores. Ns chamamos isso de computao
em nuvem - esses servios precisam estar em
uma "nuvem" em algum lugar. E, se voc tiver o
tipo correto de browser e o tipo correto de acesso,
no importa se voc tem um PC, Mac ou um
celular ou smartphone ou o que quer que voc
tenha - novos dispositivos que ainda esto sendo
desenvolvidos - voc pode ter acesso a "nuvem".
Dr. Eric Schmidt, Google CEO, Agosto de 2006




5

Consideraes iniciais

Muito tem se falado sobre computao em nuvem nos ltimos anos. um
assunto que est na agenda de 8 em cada 10 executivos de TI, apesar dos
nomes e referncias a essa tecnologia serem diferentes. Uma dificuldade
desses e de muitos outros profissionais de TI definir corretamente e com a
amplitude necessria esta nova tecnologia baseada em princpios de
computao nem to novos assim; algo que teve seu incio em 1960, com a
advento da virtualizao nos computadores mainframe
i
.
Naquela poca, a virtualizao nasceu como uma necessidade de
compartilhar recursos computacionais muito caros entre vrios clientes
(terminais). Era como se cada usurio tivesse um mainframe s para si, no
qual pudessem instalar seus aplicativos (poucos e restritos, na verdade) e
armazenar dados em sua quase totalidade em padro texto (EBCDIC).
Ao longo dos anos, a computao de maneira geral tem evoludo a partir
do ponto de reteno/guarda da informao para o ponto de
disponibilizao/utilizao dessa informao pelos usurios. Com o advento da
Web 2.0, o paradigma computacional de computadores integrando-se a outros
computadores ou a usurios, mudou para a integrao entre pessoas usando a
computao cada vez mais como meio e no como fim em si mesma. Para
usurios de ferramentas baseadas em redes sociais, como orkut, myspace,
facebook, twitter, entre outras, ou que utilizem outros servios web 2.0 como
youtube, flickr, etc, no importa nem onde nem como seus dados so
armazenados. A maior parte dos usurios no atenta para questes de
segurana ou confidencialidade na utilizao da internet de forma geral, mas o
quanto so questionados sobre isso querem apenas se sentir seguros da
correta utilizao das informaes postadas nos sites de relacionamento que
participam. Onde ficam essas informaes e como so armazenadas no
mais um problema para esse usurio tpico.
Na outra ponta, as empresas, por questes legais, econmicas ou
mercadolgicas (marca), ainda precisam se preocupar com o onde e o como
na equao de armazenamento e transmisso de dados de seus usurios.
Aqui, partimos do princpio de que todas prestam algum tipo de servio a seus

6
usurios, sejam eles internos (colaboradores) ou externos (clientes e parceiros
de negcio).


Conforme apresentado na Figura 1, a nuvem comporta uma ampla
variedade de dispositivos conectados e um fluxo de informaes bastante
diversificado. Em linhas gerais, os processos compreendidos nesse fluxo
ocorrem paralelamente e de forma nebulosa.
Componentes da infraestrutura como servios
Os centros de processamentos de dados das empresas foram forados a
evoluir ao longo dos anos, para atender a um nmero cada vez maior de
usurios e um volume de dados desproporcionalmente maior, principalmente
em virtude das novas mdias virtuais. Um documento deixou de ser apenas
texto e passou a ser texto, imagem, som, e ultimamente interao com o
usurio. Dessa forma, os processos de armazenamento e transmisso de
dados tiveram que evoluir junto com a infraestrutura de servidores e com o
conhecimento tcnico dos analistas de produo responsveis por manter os
servios dos centros de processamento de dados funcionando. Hoje, ao utilizar
a tecnologia de computao em nuvem, os centros de processamento de
dados mudaram para centro de servios da nuvem, nos quais todos os
componentes de infraestrutura passaram a ser encarados como servios.
Como exemplo disso, temos IaaS, PaaS, DaaS, CaaS e SaaS.
Figura 1: Diagrama de acesso a nuvem

7

IaaS - Infrastructure as a Service ou Infraestrutura como Servio (em
portugus): quando se utiliza uma porcentagem de um servidor, geralmente
com configurao que se adeque sua necessidade.

PaaS - Plataform as a Service ou Plataforma como Servio (em
portugus): utilizando-se apenas uma plataforma como um banco de
dados, um webservice, etc. (p.ex.: Windows Azure).

DaaS - Development as a Service ou Desenvolvimento como Servio
(em portugus): as ferramentas de desenvolvimento tomam forma em
computao em nuvem como ferramentas compartilhadas, ferramentas de
desenvolvimento baseadas na web e servios baseados em mashup (forma
pela qual um usurio pode montar seus aplicativos em um mesmo front-
end, no caso em uma pgina da web) .

SaaS - Software as a Service ou Software como Servio (em
portugus): uso de um software em regime de utilizao web (p.ex.: Google
Docs , Microsoft Sharepoint Online).

CaaS - Communication as a Service ou Comunicao como Servio
(em portugus): uso de uma soluo de Comunicao Unificada hospedada
em Data Center do provedor ou fabricante (p.ex.: Siemens Enterprise ,
Locaweb).



8


Aspectos Econmicos
Alm da evoluo natural dos centros de processamento de dados
puxada pela cada vez mais crescente utilizao de contedos complexos (web
2.0), existem aspectos econmicos que no podem ser esquecidos na hora de
otimizar hardware, software e servios no atendimento aos usurios.
Toda empresa quer reduzir custos, isto fato. O problema que as
empresas, de maneira geral, enfrentam como reduzir o custo total de
propriedade (TCO
ii
) de seu parque de TI. Tradicionalmente o TCO, neste caso,
est intimamente ligado a quantidade de servidores adquiridos, ao nmero de
licenas de software compradas e ao nmero de funcionrios responsveis por
manter o parque de TI funcionando. Alguns problemas recorrentes so
encontrados na maioria das empresas:
A quantidade de servidores ou no consegue atender bem a picos de
utilizao, gerando perda de receita, ou est superestimada, o que
mais comum.
O controle sobre as licenas de software falho: muitas expiram sem os
responsveis saberem, o que pode gerar problemas legais para a
empresa; mas o mais comum ainda a subutilizao do software, seja
por excessivo nmero de licenas seja pela no implantao de um
projeto que demandou compra de hardware, software e servios para
Figura 2: Expanso da nuvem

9
comear mas que no chegou ao fim ou foi totalmente abandonado.
A heterogeneidade de fornecedores sobrecarrega o time de suporte: fora
tecnologias de padro aberto, a maior parte do hardware, do midleware
(software que serve como plataforma de utilizao de outro software) e,
consequentemente, dos servios no segue padres de mercado, alm
de ser totalmente orientada a projetos/sistemas/caixas.


Com o intuito de sanar tais problemas, busca-se a adequao da infraestrutura
de forma compatvel com a demanda estabelecida. Nesse contexto, a Figura 3
apresenta um modelo genrico de evoluo de Centros de Processamentos de
Dados, nos quais os aplicativos antes processados em servidores estanques,
agora virtualizam os recursos de diferentes aplicativos de forma combinada e
reportam as informaes um nico servidor que atua como banco de dados.

Aes como a utilizao de virtualizao de servidores e o
provisionamento automtico de recursos, ambas presentes na tecnologia de
computao em nuvem, ajudam a sanar quase que totalmente esses e outros
problemas de infraestrutura de TI, reduzindo assim o TCO do parque de TI
Figura 3: Evoluo dos Centros de Processamento de Dados

10
como um todo.
Aspectos Ambientais
Alm dos aspectos econmicos descritos acima, existe um que tambm
tem um vis ambiental: a economia de energia eltrica, dentro de um conceito
de otimizao dos recursos de TI. A esse processo de otimizao que prima
pela economia de energia tanto pela reduo do consumo pelos servidores
quanto pela refrigerao, principal vilo dos datacenters, deu-se o nome de TI
Verde (Green IT
iii
).
De forma geral, essa nova tendncia surge como uma resposta crescente
necessidade de economia de recursos naturais e ainda ao controle climtico
mundial. Nesse conceito esto embutidas outras propostas como:
responsabilidade social, adequao ambiental e ainda sutentabilidade. Com
base nesse entendimento, a utilizao, por exemplo, de videoconferncias em
lugar de reunies presenciais no representa apenas uma aplicao
tecnolgica, mas tambm uma prtica ambiental que resulta na eliminao de
deslocamentos, reduo de consumo de combustveis e emisses de gases
poluentes e principalmente carbono na atmosfera representa, portanto
economia financeira e otimizao dos recursos.
Outra aplicao, mais relacionado com a proposta deste curso, o uso de
infraestrutura (servidores, monitores, etc) com maior eficincia energtica. No
Brasil, a Itautec uma das empresas que tem se empenhado de forma
significativa no desenvolvimento da TI Verde. Segundo Joo Carlos Redondo -
gerente de Sustentabilidade da Itautec , h a proposta de adequao padres
europeus de sustentabilidade, bem como adoo de equipamentos com
tecnologia que facilite o descarte dos resduos eletroeletrnicos resultantes do
uso, ao final do ciclo de vida.


11

Existem vrias outras iniciativas que tangem um centro de processamento
de dados que queira receber o sele de Centro de TI Verde, como economia de
gua e processo de reciclagem de resduos slidos (com ateno especial aos
resduos eletroeletrnicos). Alm disso, alguns centros ainda dispem de
produo prpria da energia que consomem, reduzindo drasticamente o risco
da operao (Figuras 4 e 5).

O supercomputador, MareNostrum (Figura 5), instalado no Centro
Nacional de Supercomputao em Barcelado e fabricado pela IBM, tem uma
capacidade mxima de 94.21 TeraFlops, ocupa um dos primeiros lugares no
ranking de supercomputadores mais potentes do mundo e o mais poderoso
da europa. Uma das vantagens do MareNostrum o fato de poder trabalhar
simultaneamente para vrias pesquisas.
Figura 4: Esquema de gasto de energia em um datacenter
Figura 5: Iniciativas para economia de energia em um datacenter

12
Apresentando algumas especificaes tcnicas, esse supercomputador,
tem capacidade de processamento de 42, 44 teraflops; 9,6 terabytes de
memria principal; 128 terabytes de disco externo; 10.240 processadores
PowerPC 970 a 2,33 Ghz. Sistema operacional Linux, rede de interligao
Myrinet com uma largura de banda mxima de 250 MB (duplex completo) e
uma latncia de 6 micro-segundo, consumindo cerca de 600 KW de energia.
Hoje o MareNostrum atua em pesquisas de ponta da biotecnologia como
o genoma humano, pesquisas climticas e pesquisa sobre novas drogas com
significativa eficincia trmica e eltrica.
Assim, o modelo de computao em nuvem como uma abstrao de
acesso a recursos computacionais veio de encontro a ambas as necessidades,
tanto dos usurios finais quanto das empresas, no tocante a como
disponibilizar informaes de forma segura, eficiente, confivel, flexvel e
expansvel.


Figura 6: Evoluo do Centro de Processamento de Dados Corporativo

13

Em que consiste a computao em nuvem ?

No devemos confundir o conceito de computao em nuvem com outros
conceitos que podem ser parte ou alternativa a essa tecnologia, como
computao em grade (grid computing), computao autonmica,
virtualizao, computao paralela, entre outras.
Por ser muito uma tecnologia muita ampla, a computao em nuvem pode
ter vrias definies, de acordo com o componente ou ponto do ciclo de vida do
servio da nuvem. Porm, acredito que uma definio que melhor descreva
seus aspectos gerais seria:

A Computao em Nuvem um paradigma de computao
emergente onde dados e servios residem em centros de dados
(data centers) - ao mesmo tempo escalveis e geograficamente
abrangentes - e que podem ser acessados de forma transparente por
qualquer dispositivo conectado a uma rede.

A partir dessa definio podemos destacar alguns conceitos e
caractersticas de computao em nuvem:

Transparncia
A localizao fsica e detalhes da infraestrutura necessria para sua
implementao so transparentes para o usurio final.
O usurio final no precisa saber (e muitas vezes lhe vedado saber) sobre os
detalhes de implementao daquele servio que ele est consumindo da
nuvem. Aspectos de implementao do servio que no so de conhecimento
do usurio incluem: como onde os dados sero armazenados, tanto
geograficamente quanto em que tipos de mdias eletrnicas, como ser feito o
controle de acesso, quais e que tipos de servidores sero utilizados na cadeia
de disponibilizao do servio, quais e que tipos de software sero utilizados
na implementao e monitoramento do servio, entre outras.

14
O que importa na verdade qual o nvel de servio (SLA
iv
) que ele espera
obter ao utilizar um servio da nuvem, ou seja, com que nvel de confiana,
tempo de espera, e segurana ele acessar o servio. Com isso, ele espera
obter um ponto de conexo a nuvem cujas regras de acesso sejam definidas
pelo publicador do servio e claramente disponibilizadas para os usurios
atravs de contratos de servio.

Escalabilidade
Trata-se da habilidade para processar grandes cargas de dados e
servios complexos de forma fracionada atravs de uma infraestrutura
expansvel incrementalmente.
A escalabilidade de uma nuvem essencial para atender um dos
principais problemas de um parque de TI convencional: pico de utilizao. Os
picos de utilizao podem estressar a infraestrutura a ponto de gerar perdas de
receita por servio negado (DoS) de requisies de usurios. No se trata
apenas de perdas financeiras como deixar de vender um produto ou servio,
mas tambm de perdas na imagem da empresa, que pode ser medida atravs
do valor da(s) sua(s) marca(s).
Para implementar funes de escalabilidade de maneira eficiente, uma
nuvem delega a um servio de provisionamento automtico de hardware e
software a tarefa de criar e/ou expandir a infraestrutura de TI de modo a
atender o pico de demanda e, no menos importante, liberar os recursos to
logo o pico deixe de existir. Como estratgia de provisionamento automtico
desta tecnologia destaca-se a clonagem de recursos e virtualizao do sistema
operacional atravs de supervisores de processos (hypervisors
v
)
compartilhados, como na vmware, virtualbox, xen, entre outros.

Eficincia
A eficincia da computao em nuvem deve-se em grande parte a
arquitetura orientada a servios (SOA) aplicada ao provisionamento dinmico e
compartilhamento de recursos computacionais.
A automatizao dos processos de monitoramento e implementao dos

15
servios de uma nuvem so vitais para seu sucesso, tanto em termos de
utilizao quanto em termos econmicos. Como exemplo, a nuvem implantada
pela Amazon como servio de hospedagem de software tem mais de 40 mil
servidores (mquinas virtuais) conectados e apenas um grupo de 6 tcnicos de
TI para monitor-las.
Alm disso, verificamos a implementao do ciclo de vida de um servio
na nuvem atravs de prticas SOA, o que faz toda a diferena na otimizao
da disponibilidade do servio para o usurio final. O ciclo de vida de um
processo baseado em SOA, com modelagem, montagem, publicao e
monitoramento, se realizado de forma automtica, gera ganhos de eficincia
mensurveis, o que refora os aspectos econmicos envolvidos em uma
soluo de computao em nuvem.

Flexibilidade
A tecnologia de computao em nuvem pode servir a uma variada gama
de tipos de dados e servios, tanto corporativos quanto para usurios finais.
Atrelado a isso, serve cada vez mais a uma gama cada vez maior de
dispositivos, de computadores pessoais a celulares e smartphones, passando
por dispositivos menos ortodoxos como geladeiras, carros, centrais
inteligentes, etc.
Com o acesso ao servio na nuvem padronizado, torna-se quase trivial a
conexo de dispositivos heterogneos, com picos de utilizao diferentes,
caractersticas e tratamento de dados diferentes, enfim, a aspectos diversos
porm como uma interface (pelo menos) padronizada e comum a todos os
dispositivos conectados na nuvem.

Segurana
As informaes precisam ser disponibilizadas para quem de direito,
independentemente do meio de transmisso ou consumo dessas informaes.
Isso verifica-se mais nas redes corporativas (nuvens internas a organizao) ou
nos servios disponibilizados contendo um contrato de utilizao que reforcem
esses aspectos. Como exemplos podemos citar contratos de utilizao de sites

16
de servios bancrios.
Para tanto, alguns aspectos de infraestrutura devem ser levados em
considerao ao se implementar um servio na nuvem, j que este poder ser
acessado de qualquer lugar a qualquer hora por qualquer usurio. Um tcnica
muito utilizada a de impersonalizao, na qual as credenciais de um usurio,
aps checadas contra o servio de segurana da informao da nuvem, cria
um novo processo para atender a requisio do usurio, contendo os direitos
de acesso que o usurio possui. Porm o dono (owner) desse processo o
servidor que recebeu a requisio do usurio em primeira instncia, ficando
responsvel pela utilizao (chamadas) dos outros servios da nuvem para o
atendimento a requisio original do usurio. Isso evita que um usurio tenha
acesso direto a servios internos da nuvem, o que poderia expor a segurana
da nuvem como um todo.

A perspectiva das equipes de TI

Em computao em nuvem as unidades de TI, os analistas de suporte
responsveis por gerir o parque de TI das empresas passam a trabalhar em
outro nvel o da monitorao em exceo. Esse processo de trabalho pode
ser verificado na maior parte dos centros de processamento de dados que j
adotaram a tecnologia de computao nuvem e consiste em administrar os
desvios do processo principal totalmente automatizado. Casos como quebra
de mquinas e problemas com disponibilizao de servios so e devem ser
tratados como exceo por essas equipes.










17
Diferenas para outros conceitos utilizados em computao em
nuvem
Ao entrevistar profissionais de TI dos mais variados graus de experincia,
nota-se que existe uma confuso ao se tratar o tema de computao em
nuvem. Outros conceitos relacionados ou que fazem parte dessa tecnologia
so tomados muitas vezes como o todo. Aqui vo alguns exemplos:
Computao em Grade
Computao em grade nasceu como uma alternativa ao processamento
de grandes quantidades de dados em servidores de grande porte de
processamento e, por isso, muito caros e de acesso controlado (vide restries
ao mainframe CRAIG para clculos para a bomba atmica). A ideia bastante
simples: dividir o processamento de um dado complexo em pedaos e delegar
a uma grade de computadores de menor porte o processamento de cada um
dos pedaos. Um servidor de maior porte ficaria responsvel apenas pela
totalizao (ou juno) dos pedaos processados.
O projeto mais famoso de que se tem notcia sobre processamento em
grade o SETI @home (busca por sinais de vida extraterrestre:
http://setiathome.berkeley.edu/). Neste projeto, cada computador pessoal
conectado a grade recebe, de acordo com sua capacidade de processamento,
uma ou mais tarefas contendo dados de satlite para serem analisados. Ao
trmino do processamento de cada tarefa, um resultado enviado para o
servidor central para anlise e disponibilizao dos resultados para os
pesquisadores do projeto SETI.
Porm, outros projetos de computao em grade como o World
Computing Grid (http://www.worldcommunitygrid.org/) tm objetivos mais
imediatos, como a anlise de protenas para a produo de novos
medicamentos.
Podemos dizer que trata-se de um modelo cliente-servidor inverso, no
qual o cliente processa os dados e os repassa a um servidor consumidor. Nas
Figuras 8 e 9, exemplos de clientes de computao em grade so
apresentados.

18

Software como Servio (SaaS)

Software como Servio (Software as a Service, SaaS) um modelo de
negcios para a disponibilizao de software, principalmente middleware
vi
, na
base de cobrana sobre a utilizao e no sobre o direito de uso, como no
modelo de venda de software tradicional. Como ele, existem outros
relacionados a cada componente da infraestrutura necessria a
disponibilizao de um servio na nuvem, como plataforma, servidores
(hardware), canal de comunicao, etc. Dentro da tecnologia de computao
em nuvem, o conceito por trs de SaaS fornecer o modelo ideal de
contratao para os servios disponibilizados pela nuvem, j que todo o
software utilizado na soluo disponibilizada pelo servio no de
conhecimento do usurio final. Este paga por um servio prestado pela nuvem.
A Figura 10 apresenta um exemplo de um software disponibilizado utilizando-se
o modelo aqui apresentado.

Figura 7: Cliente de computao em
grade rodando localmente
Figura 8: Projetos e atividades sendo executados por um
cliente de computao em grade

19

Computao paralela

Computao paralela uma tcnica de computao que permite a um
processo rodar de forma integrada em vrias mquinas ao mesmo tempo, com
o objetivo de reduzir o tempo total de processamento e/ou diminuir a incidncia
de falhas atravs de redundncia. Contudo, os programas precisam ser
escritos para trabalharem dessa forma, utilizando o mximo de recursos que
essa tcnica de processamento pode prover.
Verificamos a aplicao de computao paralela em vrios nveis, desde
software bsico de sistemas operacionais desenvolvidos com propsito
especfico (servidores para computao cientfica, servidores de alta
capacidade de processamento, servidores de alta capacidade de
tratamento/transmisso de dados, entre outros), at sistemas de banco de
dados, aplicativos de pesquisa (engenho de pesquisa do Google, por exemplo)
e aplicativos de controle com alto nvel de redundncia e tempo de
disponibilidade (pelo menos maior que 99,9999%).
Figura 9: Exemplo de SaaS: LotusGreenHouse

20



Ciclo de Vida de um Servio da Nuvem

Um servio disponibilizado na nuvem tem seu ciclo de vida definida por
aspectos SOA: modelagem, montagem, publicao e monitoramento. Porm,
no caso de computao em nuvem cada um desses passos sofre algum nvel
de automatizao, de forma a manter as caractersticas descritas acima.

Modelagem

A modelagem de um servio comea na rea de negcios, tendo como
base uma necessidade do usurio a ser atendida pelo novo servio. Esse novo
servio pode ser baseado, como ocorre na maioria das vezes, em servios
bsicos (internos) j disponibilizados pela rea de TI para serem utilizados em
composies. Como exemplos, temos servios de provisionamento automtico,
servios de transmisso e armazenamento de dados, entre outros.

Figura 10: Centro de Processamento de Dados Modular da Google

21
Um outro ponto importante a definio do contrato de nvel de servio
(SLA) para o novo servio e como suport-lo no nvel do parque de TI. Para
tanto, criamos templates de utilizao, que nada mais so do que a
formalizao dos cenrios de utiizao daquele servio, que plataformas ele
atender, que tipos de dispositivos conectados ele suportar, etc. Esses
templates facilitam o trabalho de escolha do usurio no momento da
contratao do servio a ser utilizado.

Montagem

A montagem de um novo servio na nuvem passa necessariamente pela
sua configurao dos recursos computacionais utilizados pelo servio. Como
exemplo, para ser disponibilizado como servio, um sistema precisa ser
instalado em uma infraestrutura, que por sua vez precisa ser montada em cima
de hardware e software bsico (sistema operacional e midleware). Os centros
de processamento de dados utilizam tradicionalmente um batalho de analista
de suporte para controlar a entrada de um sistema em produo e monitorar
seu comportamento nesse ambiente. Porm, antes disso, eles precisam ter
onde instalar o sistema, precisam de servidores (tanto para processamento
quanto para armazenamento de dados) e de sistemas operacionais e
midleware (servidores de aplicao) que permitam a utilizao dos recursos
disponveis nos servidores. Ainda sim, fora o problema da aquisio de tudo
isso, existe o problema da sua utilizao em larga escala estar sujeita a picos
de utilizao e problemas que geram indisponibilidade em um ou mais
componentes da soluo.
Dessa forma, a tecnologia de computao em nuvem utiliza ferramentas
para provisionamento automtico de hardware e software. O analista, ao invs
de trabalhar mquina a mquina, montando e instalando tudo, acessa um portal
de servios no qual ele provisiona a quantidade necessria de processadores,
memria e disco, sistema operacional, midleware embarcado (opcional), alm
de aspectos de redundncia e resilincia. O sistema de provisionamento
seleciona dentro de um conjunto (pool) de mquinas previamente cadastradas
e ligadas, as que iro atender a solicitao postada pelo analista de suporte.

22
Aps executar as tarefas de instalao e configurao das mquinas, o sistema
envia um e-mail para o analista de suporte com todas as caractersticas
solicitadas por ele e um ip, usurio e senha de acesso ao novo ambiente
provisionado para ele.

Publicao

A publicao de um servio ocorre quanto o mesmo passa a integrar um
diretrio de servios disponibilizado pelo site/empresa. O diretrio de servios
um banco de dados no qual esto cadastrados os servios e seus contratos
de utilizao. O acesso a esse diretrio pode se dar de vrias formas, mas a
mais comum termos um portal de auto-servio para a pesquisa e consumo
(utilizao) de um ou mais servios.
Aps ser publicado, um servio da nuvem pode ser consumido de vrias
formas. Uma das melhores, seja pelo aspecto prtico de acesso seja pela
variedade de dispositivos atendido, atravs de uma chamada REST
vii
em um
browser ou similar. Uma chamada REST permite ao publicador disponibilizar
uma funcionalidade em um sistema ou um recurso (dados, arquivos, etc). Isso
facilita sobremaneira a execuo de tarefas em outras etapas do ciclo de vida,
como o Monitoramento do servio em tempo real.

Monitoramento

O monitoramento de um servio realizado por ferramentas
automatizadas que garantem o pleno funcionamento de todos os componentes
(de hardware, de software e de servios) envolvidos na soluo que
implementa e disponibiliza o servio em questo. Conforme mencionado
anteriormente, o monitoramento ocorre em esquema de exceo, ou seja,
apenas os problemas recebem interveno manual quando ocorrem. O
provisionamento das mquinas necessrias ao atendimento ao servio, bem
como outros aspectos relevantes como tempo de latncia de uma requisio do
usurio e taxa de transmisso de dados, so totalmente automatizados e se

23
adequam a picos e vales de utilizao do servio em especfico e da
infraestrutura como um todo.


Resumo dos conceitos apresentados

Cloud Computing (ou Computao em Nuvem) um novo paradigma de
informtica em que dados e servios residem em enormes centros de
processamentos de dados que podem ser acessados livremente por
dispositivos na Internet. Na viso do usurio dos servios o processamento
acontece em algum lugar da Internet. Para o provedor de servios, a
infraestrutura construda de tal forma que centenas de mquinas possam ser
adicionadas rapidamente para atender a um aumento de demanda. Essa
abordagem permite que aplicaes consigam atender a milhes de usurios e
processar enormes volumes de dados. Exemplos de aplicaes desse tipo so:
servios como indexao da Google, e-Bay, GMail, You-tube, Flickr, Face-book
entre outras aplicaes Web 2.0.
Vrios fatores contribuem para o interesse nesse novo paradigma. De um
lado o nmero potencial de usurios acessando qualquer aplicao cresce
vertiginosamente devido ao acesso ampliado a dispositivos conectados a
Internet (celulares, computadores baratos, centros de incluso digital, etc).
Como consequncia, aplicaes e servios devem ser construdos de forma
que possam crescer rapidamente. No incomum que o nmero de usurios
comece com poucos milhares de usurios e atinjam em pouco tempo milhes
de pessoas.
Outro aspecto do maior uso de TI um aumento nos volumes de dados
gerados. Esses dados precisam ser armazenados, processados, e tratados.
Enquanto 10 anos atrs alguns giga-bytes era considerado muita informao,
hoje usurios domsticos j usam milhares de giga-bytes de dados. Em
empresas e instituies governamentais os volumes de dados so milhares a
milhes de vezes maiores do que isso. Essas magnitudes requerem super-
computadores ou estratgias de usar milhares de mquinas menores. A
tendncia que o volume continue crescendo, ao passo que os processadores
individuais parecem estar atingindo seus limites. O resultado que o

24
processamento dever ser feito usando novas tcnicas.
A necessidade de atender e compreender esses requisitos cria um
enorme interesse por parte de empresas, instituies de pesquisa e governos.
O uso efetivo desse paradigma passa necessariamente pelo domnio das
tecnologias subjacentes e do desenvolvimento de praticas e processo para
usar de forma eficiente o poder computacional hoje disponvel. Esse processo
de inovao fundamental para insero futuro da tecnologia da informao. A
Figura 12 apresenta os pontos de acesso que podem ser utilizados nesse
paradigma de computao juntamente com o centro de dados onde o software
utilizado na computao em nuvem armazenado.



Figura 11: Acesso nuvem a partir de pontos distintos.

Fonte: http://www.mylinestream.com/cloud-computing.html

Centro de dados
- Hospeda o software
- Mantm o hardware
do servidor
- Backup dirio
Trabalhadores em casa
- Acessar aplicaes por
meio de PCs padres
com banda larga
Trabalhadores
remotos
- Acessar aplicaes
por meio de PCs com
banda larga em hotis,
cafs, outros locais
Trabalhadores locais
- Acessar aplicaes
por meio de PCs

25

Computao em Nuvem (Cloud Computing)

Parte II Estudos de Caso


Hoje voc pode e deve escolher a
melhor alternativa , seja software pago ou gratuito.
Mas, a maio vantagem de computao em nuvem
que eu no sou mais dependente da mquina e
posso desfrutar as aes que demandam
compartilhamento, como criao de textos.
Cezar Taurion, IBM, 2010.






26

Consideraes Iniciais

Atualmente, todos os grandes players de TI tem uma ou mais solues de
computao em nuvem as quais abrangem todo o ciclo de vida ou parte dele.
Na parte II desta apostila, apresentaremos um resumo das principais iniciativas
de cada uma das grandes empresas de TI (IBM, Google, Microsoft, HP) e de
outras empresas ou iniciativas que merecem destaque como Amazon e
VMWare.

Estudo de Caso - IBM

A IBM, por fazer parte da histria de TI, no podia deixar de ter papel
importante na revoluo empregada por computao em nuvem. Tudo
comeou com a virtualizao implantada pelos computadores mainframe nos
idos de 1960. Naquela poca, um mainframe era muito caro at para empresas
de grande porte. Da a necessidade de otimizar ao mximo os recursos
computacionais disponveis, medidos em MIPS, ou unidades de
processamento.
Com a virtualizao era possvel aos usurios criarem mquinas
independentes dentro do mainframe, particionando seu processamento, sua
memria e seu storage discos rgidos. Tudo isso muito comum hoje em dia,
mas a poca a maioria dos usurios ainda trabalhava com computadores
baseados em cartes perfurados e no sistema um -de-cada-vez.
Atualmente, as solues IBM contemplam todas as etapas do ciclo de
vida de disponibilizao de um servio na nuvem, seja ela baseada na internet
ou em nuvens corporativas.

IBM Academic Initiative

A IBM, Google e seis universidades norte americanas se uniram para criar
trs nuvens distintas (uma na IBM, uma na Google, e uma na Universidade de
Washington). Alunos e professores das universidades envolvidas usam as
nuvens para fins acadmicos, explorando as tecnologias de computao

27
paralela desenvolvidas pela Google. A Figura 13 apresenta uma viso geral da
iniciativa. Alm do hardware, a IBM contribui com a gesto automtica dos trs
ambientes.


Dublin Cloud Computing Center

A IBM est criando na Irlanda uma nuvem para oferecer recursos
computacionais e software para empresas e instituies que queiram usar esse
recursos para projetos de inovao por meio do aluguel de infraestrutura.

O modelo de aplicao e cobrana o mesmo e se baseia na pilha de
servios providos pela nuvem, apresentada na Figura 14.
Figura 12: Iniciativa acadmica da IBM para fomentar o desenvolvimento de aplicativos em
nuvem

28

Wuxy Cloud

Essa nuvem est sendo criada pela pelo municpio de Wuxi na China. O
objetivo fornecer s empresas da regio recursos computacionais para o
desenvolvimento de software usando tecnologias Rational.

O principal objetivo do centro a criao rpida de ambientes de
desenvolvimento para at 200.000 desenvolvedores de software espalhados
Figura 13: Esquema de pilha de servios.

29
em 100 empresas.

Com isso, reduz o custo com a infraestrutura compartilhada e a cobrana
passa a ser feita baseada no uso dos recursos, trazendo grande economia para
as empresas participantes.

VISTA Inovation Portal:

um portal de colaborao visando o fomento da inovao entre
universidades e centros de pesquisa do Vietnam. O portal congrega
professores, alunos e pesquisadores no trabalho colaborativo de desenvolver
idias e inovao. O portal foi criado Ministrio de Cincia e Tecnologia do
Vietnam usando o Portal de Inovao da IBM (Idea Factory) em uma nuvem
computacional mantida em um laboratrio da IBM nos Estados Unidos.


Estudo de Caso Amazon

Dentre as empresas que no so originariamente de TI mas que
despontam como futuras provedoras de servios na web, a Amazon, atrs do
seu portal de servios AWS (Amazon Web Services), foi uma das primeiras
portas de entrada para o mundo da computao em nuvem acessado via web,
antes mesmo da IBM.
O portal de servios da Amazon (http://aws.amazon.com/) uma maneira
fcil e rpida de disponibilizar servios na web atravs de utilizao de uma
mquina virtual (AVI), provisionada e disponibilizada com software Linux. Aps
contratar o servio de hosting, por exemplo, o usurio recebe um e-mail com o
IP da nova mquina e um usurio e senha de acesso a ela. A partir da a
mquina passa a ser dele para disponibilizar seus prprios servios na web.




30
Estudo de Caso - Google

A Google um empresa muito jovem, 10 anos apenas. Porm, seu
estrondoso sucesso deve-se em parte ao modelos de negcio inovadores
lanados pelo empresa nos ltimos anos, aliados a tecnologia de ponta.
Uma das prximas frentes de ataque da Google na computao em
nuvem. Hoje a empresa oferece todos os seus servios web baseados em um
nuvem prpria de servios, como o pesquisador Google, o GoogleDocs e o
GoogleTranslator, s para citar alguns exemplos. Esses servios esto
disponveis na web, mas rodam em algum lugar dentro da nuvem Google. A
Google ganhou muita experincia nos ltimos anos ao projetar e fabricar
centros de processamento de dados baseados em containers (vide figura
acima). Com isso, a empresa ganhou escala e possibilidade de entrar como um
grande publicador de servios de hosting de mquinas virtuais a chamada
EC2 (Elastic Cloud).

Estudo de Caso - Microsoft

A Microsoft foi uma das ltimas das grandes empresas de TI a aderirem a
conceitos de computao em nuvem e a lanar uma plataforma (Azure)
especfica para isso. Apesar de mais ampla e voltada para empresas, a Azure
uma plataforma que oferece os principais servios bsicos de provisionamento
na nuvem (IaaS, PaaS e SaaS).
A ideia por traz da iniciativa da Microsoft reforar a presena dos
sistemas operacionais da famlia Windows para servidores, que vem perdendo
terreno nos ltimos anos para os baseados em Linux. A situao encontrada
nas pequenas e mdias empresas ainda de uma floresta de anes, nome
carinhosamente dado pelos analistas de suporte para os parques de TI
baseados em muitos servidores de pequeno porte (alguns to ou menos
potentes quanto estaes de trabalho mais novas). Em funo disso,
importante termos uma plataforma que integre todos esses servidores e que
possa rodar um sem-nmero de aplicaes baseados em Windows, porm sem

31
a necessidade de se obter uma nova mquina (ano) e todo os processo de
aquisio que a acompanha.
Web Office (http://office.live.com)
Depois de muito relutar, a Microsoft lanou recentemente uma verso do
seu pacote de servios Office (Word, Excel e PowerPoint) para a internet, que
pode ser usado gratuitamente (por enquanto apenas em ingls).


i Um mainframe um computador de grande porte, dedicado normalmente ao
processamento de um volume grande de informaes. Os mainframes so capazes de
oferecer servios de processamento a milhares de usurios atravs de milhares de
terminais conectados diretamente ou atravs de uma rede. (O termo mainframe se
refere ao gabinete principal que alojava a unidade central de fogo nos primeiros
computadores.).
ii O termo TCO (Total Cost of Ownership) vem sendo amplamente utilizado no meio
acadmico, na mdia, em conferncias, workshops e mesas redondas. No nosso caso
ele utilizado para avaliar os servios de mobilidade do ponto de vista de valor
agregado.
iii A computao verde (Green IT) refere-se a computao ambiental sustentvel. No
artigo sobre TI Verde: Os princpios e as prticas, San Murugesan define o campo da
computao verde como "o estudo e a prtica de projetar, manufaturar, usar e dispor
computadores, monitores, impressoras, dispositivos de armazenamento e sistemas de
rede e comunicaes, com mnimo ou nenhum impacto no meio ambiente."
iv Um acordo do nvel de servio (abreviado frequentemente como SLA) uma parte
de um contrato de servio onde o nvel de servio seja definido formalmente. Na
prtica, os SLAs so usados para definir o contratante (do servio) ou o
desempenho. Como um exemplo, os provedores de servios do Internet incluiro
geralmente acordos do nvel de servio dentro dos termos de seus contratos com
clientes para definir os nveis de servio que esto sendo vendidos , como uma
definio tcnica nos termos do MTTF, do MTTR, de vrias taxas de dados, etc.
v Na computao, um hypervisor, igualmente chamado monitor da mquina virtual
(VMM), permite que mltiplos sistemas funcionem simultaneamente em um
computador anfitrio, uma caracterstica chamada virtualizao da console. O
hypervisor apresenta aos sistemas convidados uma plataforma virtual de
funcionamento e monitora a execuo destes no sistema anfitrio. Um exemplo de
um hypervisor PR/SM, um tipo assim chamado - 1 hypervisor, que aloca recursos
de sistema atravs de divises lgicas de recursos fsicos tais como os processadores
centrais, os dispositivos de armazenamento do acesso direto e a memria. O PR/SM
foi introduzido pela IBM no princpio dos anos 70 com os processadores do sistema
IBM/370. Estes conceitos assentaram bem em uma parte importante da tcnica
conhecida como virtualizao.
Outros sistemas, mais atuais, utilizam outros nveis ou tipos de hypervisors, como
vmware, xen e virtualbox.
vi Middleware o software de computador que conecta componentes de software ou
usurios e suas aplicaes. O middleware consiste em um conjunto de servios que
permite mltiplos processos funcionarem em uma ou vrias mquinas para interagir.



32
Esta tecnologia evoluiu para prever a interoperabilidade na sustentao do
movimento s arquiteturas distribudas coerentes, que so as mais usadas
frequentemente ao suportar e simplificar aplicaes distribudas complexas. Inclui
web server, servidores de aplicaes e ferramentas similares que suportam o
desenvolvimento de aplicaes e sua instalao. A computao distribuda especial
integral tecnologia da informao moderna baseada em XML, em SOAP, em
servios web e na arquitetura orientada a servios. A computao distribuda fica "no
meio" entre o software de aplicao e o de sistemas operacionais.
vii A Transferncia de Estado Representacional (Representational State Transfer) ou
somente REST uma tcnica de engenharia de software para sistemas distribudos na
web. O termo se originou no ano de 2000, em uma tese de doutorado sobre a web
escrita por Roy Fielding, um dos principais autores da especificao do protocolo
HTTP que utilizado por sites da internet.
O termo REST se referia, originalmente, a um conjunto de princpios de arquitetura,
mas que atualmente se usa no sentido mais amplo para descrever qualquer interface
web simples que utiliza XML e HTTP (ou YAML, JSON, ou texto puro), sem as
abstraes adicionais dos protocolos baseados em padres de trocas de mensagem
como o protocolo de servios SOAP. possvel desenhar sistemas de servios web
de acordo com o estilo arquitetural REST descrito por Fielding, e tambm possvel
desenhar interfaces XMLHTTP de acordo com o estilo de RPC mas sem utilizar
SOAP. Estes usos diferentes do termo REST causam certa confuso em discusses
tcnicas, onde RPC no um exemplo de REST.

Você também pode gostar