Você está na página 1de 105

Opus Software

O Que Voc Realmente Precisa Saber Sobre

Computao em Nuvem

Primeira Edio

So Paulo - SP - Brasil

Edio realizada por Opus Software Com. e Repr. Ltda


2015
Produo Do Livro
COPRODUZIMOS SOLUES DE
SOFTWARE QUE TRANSFORMAM
CONHECIMENTO EM VALOR

Desenvolvemos solues de software


exclusivas que potencializam o talento das
pessoas e o diferencial das organizaes.
Atravs de um processo de coproduo,
unimos nossa competncia tecnolgica
ao conhecimento de negcio de
nossos clientes para a construo de aplicaes que efetivamente geram
resultados mensurveis. A oferta da OPUS Software inclui a terceirizao do
desenvolvimento e manuteno evolutiva de sistemas, acompanhando todo
o ciclo de vida das aplicaes. Alm disso, oferecemos servios de migrao
de sistemas para a nuvem e gerenciamento, monitoramento e sustentao dos
ambientes migrados. A OPUS Software parceiro oficial da Amazon Web
Services (AWS), da Microsoft e da IBM.

Copyright 2015 Opus Software

Todos os direitos reservados. Nenhuma parte deste livro pode ser reproduzida, armazenada em um
sistema de recuperao ou transmitida por qualquer forma ou meio sem a autorizao por escrito da
Opus Software - excetuando-se citaes inseridas em artigos e comentrios.

A preparao deste livro foi feita com o mximo empenho para garantir a preciso das informaes
apresentadas e sempre foram apontadas as fontes de informao externas. As informaes fornecidas
neste livro no tm qualquer garantia, expressa ou implcita. Nem a Opus Software, nem os parcei-
ros distribuidores so responsveis por quaisquer danos causados ou alegados terem sido causados
direta ou indiretamente pelo contedo deste livro.

A Opus Software procurou informar a origem dos dados de todas empresas e produtos mencionados
neste livro, atravs de links de referncia pesquisados no ano de 2014. No entanto, nem a Opus
Software, nem seus distribuidores podem garantir a preciso dessas informaes.

Primeira Publicao: Abril de 2015


Publicado por Opus Software Ltda
Rua Butant, 500/518 2 Andar
Pinheiros - CEP 05424-000 - So Paulo SP
(+55 11) 3816.2200
cloud@opus-software.com.br
www.opus-software.com.br
ISBN 978-85-69180-00-5
Contedo
Introduo.......................................................................................................... 8
Por que Computao em Nuvem?.................................................................... 11
Bons motivos para adotar a Computao em Nuvem.................................... 12
Custo........................................................................................................ 12
Agilidade.................................................................................................. 13
Flexibilidade............................................................................................. 13
Alta disponibilidade................................................................................. 14
Por que a Computao em Nuvem inevitvel?........................................... 14
A Computao em Nuvem favorece a Inovao....................................... 15
Economia de escala.................................................................................. 15
Economia de escala do lado dos fornecedores................................ 16
Economia de escala do lado da demanda....................................... 17
O que incentiva e o que dificulta o uso da Computao em Nuvem............ 18
Vantagens................................................................................................. 18
Dificuldades ............................................................................................ 19
Custos enterrados: fator que deve ser considerado........................................ 20
Conceitos fundamentais................................................................................... 23
O que Computao em Nuvem?................................................................ 23
Sob demanda........................................................................................... 24
Acesso amplo........................................................................................... 25
Medio de uso........................................................................................ 26
Provedores de Computao em Nuvem.................................................... 27
Tipos de instncias ...................................................................................... 27
Instncias AWS sob demanda................................................................... 28
Instncia AWS reservada .......................................................................... 28
Instncia spot .......................................................................................... 29
Instncia padro do Google...................................................................... 30
Instncias do Microsoft Azure................................................................... 31
Virtualizao X Computao em Nuvem...................................................... 32

rodrigosatori@yahoo.com.br
Elasticidade e Escalabilidade........................................................................ 33
Tipos de nuvem: pblica, privada, hbrida.................................................... 36
Nuvem pblica ........................................................................................ 37
Nuvem privada ........................................................................................ 37
Nuvem Hbrida........................................................................................ 39
Tipos de servios: IaaS, PaaS e SaaS.............................................................. 39
Infraestrutura como Servio (IaaS)............................................................. 40
Plataforma como Servio (PaaS)................................................................ 41
Software como Servio (SaaS)................................................................... 41
Regies e zonas de disponibilidade.............................................................. 41
Alta disponibilidade na nuvem..................................................................... 47
Nvel 1 Recursos fsicos......................................................................... 48
Nvel 2 Recursos virtuais....................................................................... 48
Nvel 3 Zonas de disponibilidade.......................................................... 49
Nvel 4 Regies .................................................................................... 49
Nvel 5 Provedor de nuvem................................................................... 50
Aplicaes que se beneficiam da Computao em Nuvem........................... 51
Aplicaes com demanda varivel........................................................... 51
Aplicaes com padro de crescimento incerto........................................ 52
Aplicaes com picos de processamento.................................................. 52
Comprando Software como Servio (SaaS)....................................................... 54
Comprando Plataforma como Servio (PaaS).................................................... 56
Google App Engine...................................................................................... 58
Microsoft Azure Cloud Services ................................................................... 61
Comprando Infraestrutura como Servio (IaaS)................................................. 65
Configurao de servidores...................................................................... 66
Armazenamento de dados........................................................................ 67
Banda Internet.......................................................................................... 67
Trfego de E/S........................................................................................... 68
Softwares e imagens binrias.................................................................... 68
Controle de acesso................................................................................... 69
Facilidade de gerenciamento.................................................................... 69

rodrigosatori@yahoo.com.br
Custos...................................................................................................... 69
Amazon Web Services (AWS)....................................................................... 71
Servidores ................................................................................................ 71
Armazenamento de dados........................................................................ 72
Amazon EBS (Elastic Block Store) ................................................... 72
Amazon S3 (Simple Storage Service)............................................... 73
Amazon Glacier.............................................................................. 74
Bancos de dados...................................................................................... 74
Amazon RDS (Relational Database Service).................................... 74
Amazon Aurora............................................................................... 75
NoSQL............................................................................................ 76
Outros Servios........................................................................................ 76
Google Compute Engine............................................................................... 79
Servidores................................................................................................. 79
Armazenamento de dados........................................................................ 80
Discos persistentes.......................................................................... 80
Google Cloud Storage..................................................................... 80
Bancos de dados...................................................................................... 81
Cloud SQL ..................................................................................... 81
Cloud Datastore ............................................................................. 81
BigQuery........................................................................................ 82
Outros Servios........................................................................................ 82
Microsoft Azure............................................................................................ 83
Servidores................................................................................................. 83
Armazenamento de dados........................................................................ 84
Azure Storage.................................................................................. 85
Azure Backup................................................................................. 86
Bancos de dados...................................................................................... 86
Outros Servios........................................................................................ 87
Nuvens Hbridas............................................................................. 88
Disaster Recovery recuperao de dados....................................................... 91
Modelo 1: Backup na nuvem........................................................................ 93

rodrigosatori@yahoo.com.br
Modelo 2: Backup e infraestrutura secundria na nuvem.............................. 94
hora de colher os benefcios da nuvem.......................................................... 97
Referncias....................................................................................................... 99

rodrigosatori@yahoo.com.br
Introduo - pgina 8

Introduo

A
Computao em Nuvem est sendo responsvel por uma das maiores
revolues ocorridas nos ltimos anos na rea de Tecnologia da Informa-
o. Os impactos dessa transformao tm crescido e se acelerado, na
medida em que a nuvem oferece cada vez mais servios, com mais segurana,
com maiores recursos e com custos cada vez mais atraentes e competitivos.
uma indstria que definitivamente muda o modo de fazer as coisas na rea de
TI e que, embora ainda jovem, j proporciona resultados consolidados, fazendo
com que sua adoo seja uma opo segura.

O fundamental a ser entendido na Computao em Nuvem que no uma


revoluo tecnolgica encerrada em si mesma. Alm de mudar o modo como se
produzem os servios de TI das empresas, ela potencializa a mudana do modo
como a empresa oferece seus produtos e servios, atinge seus novos clientes,
acompanha os clientes existentes e pratica o seu marketing no dia a dia, tanto
para a captao de novos clientes quanto para a manuteno dos existentes.

Alm disso, a Computao em Nuvem permite que organizaes de qualquer


porte tenham acesso a recursos que antes s estavam disponveis para grandes
empresas, por exigirem elevados investimentos, e agora podem ser pagos sob
demanda. Isso muda as condies de competitividade nos mercados, criando
oportunidades mpares de crescimento acelerado sem exigir a antecipao de
grandes investimentos na rea de infraestrutura de tecnologia. Nesse sentido
estamos num novo mundo, onde TI fundamental para qualquer negcio e, por
outro lado, qualquer negcio pode ter sofisticados servios de TI. Isso muda as
relaes de fora entre as empresas, em qualquer setor.

preciso entender bem o que Computao em Nuvem, para no reduzi-la a


uma simples oportunidade de diminuir alguns custos de TI ou investimentos em
tecnologia. Seu impacto muito mais profundo:

>> Muda o perfil de qualificao de todo o pessoal especializado em TI.


Mais do que nunca, o homem de TI se transforma num profissional que
precisa entender os negcios de sua empresa, alm de enxergar que
tudo o que feito na sua rea deve, em ltima instncia, se traduzir em
servios adequados, velozes, seguros e econmicos. imperativo para

rodrigosatori@yahoo.com.br
Introduo - pgina 9

essa classe profissional acompanhar estas mudanas na maneira de pen-


sar e agir, sob o risco de perder sua funo no mercado. O profissional
de TI est se transformando num homem de negcios que entende de
tecnologia e que sabe conversar com os lderes das empresas das reas
de marketing, finanas, produo, etc., com foco nos servios essenciais
para os negcios da empresa e no mais em hardware e software.

>> Muda o modo como a empresa pensa e pratica o seu Marketing. Com
a nuvem a internet se transforma de fato, cada vez mais, na internet das
coisas, onde tudo est interligado e qualquer dispositivo eletrnico pode
estar permanentemente armazenando informaes na rede e recebendo
estmulos dela. Isso muda o marketing tradicional para o Marketing das
Coisas ou o Marketing pras Gentes, no qual essa integrao vai se dar
com pessoas, atravs de redes sociais cada vez mais amplas, trocando
e armazenando dados que antes estariam indisponveis. O Marketing
pras Gentes revoluciona o marketing tradicional: contato instantneo
e contnuo com clientes potenciais e efetivos, armazenagem de dados
sem limites, possibilidades de anlises mercadolgicas sem precedentes
e sem a necessidade de pesquisas de mercado. Os clientes potenciais
e efetivos se transformam na rede de negcios da prpria empresa, muito
alm de uma simples rede social para troca de fotos, filmes e opinies.
Clientes em rede, marketing em rede. Capacidade massiva de tratar
individualmente cada pessoa da rede, de acordo com seus dados, seu
perfil de demanda, seu histrico de compras, seu comportamento, seus
dados sociodemogrficos e por a vai. A custos baixos como nunca antes
imaginados ou possveis.

>> Muda a forma como a empresa produz e entrega seus produtos e servi-
os. Na verdade, o ciclo tradicional de produo, venda e transfern-
cia de posse de um servio atmico ou de um bem, que caracterizava
a misso de uma empresa, est rapidamente deixando de existir. Nos
novos modelos de negcio possibilitados por essa transformao social
e tecnolgica, o consumidor aluga o produto ou servio e fica com
ele enquanto o mesmo capaz de agregar valor sua vida. A ps-venda
passa a ter importncia relativamente maior que a venda e a pr-venda,
na medida em que a satisfao de uso a nica garantia de continuidade
do negcio. Neste sentido, esta integrao da empresa com sua rede de
usurios extremamente alavancada pelo uso dos servios em nuvem.

Alm disso, estamos assistindo a uma digitalizao crescente da economia. To-


dos os negcios esto se transformando em negcios de Tecnologia da Informa-
o, e a economia digital est se estabelecendo de forma rpida e irreversvel.
Muitos dos novos modelos de negcios s so viveis atravs do uso da tecnolo-

rodrigosatori@yahoo.com.br
Introduo - pgina 10

gia, fazendo com que ela desempenhe um papel de relevncia crescente nas or-
ganizaes. medida que as fronteiras entre TI e negcios se tornam nebulosas,
a tecnologia se torna mais crtica do que nunca na execuo das estratgias de
negcio. Assim, o entendimento das novas possibilidades trazidas pelo avano
da tecnologia passa a ser uma funo de todos dentro das organizaes, no se
restringindo mais apenas rea de TI.

Por isso tudo ns, da Opus Software, entendemos que seria importante tornar
disponveis conhecimentos fundamentais sobre Computao em Nuvem e seu
potencial transformador, uma vez que temos acompanhado essa revoluo
desde seu incio. Nosso conhecimento no meramente tcnico e vem da
experincia de termos trabalhado em conjunto com nossos clientes, produzin-
do e implantando com sucesso vrias solues baseadas em tecnologia. Cabe
destacar que o nosso negcio tambm foi profundamente alterado por tais trans-
formaes, e onde antes desenvolvamos solues de TI, hoje desenvolvemos
solues de negcios alavancadas por TI.

Temos certeza que a leitura deste livro vai dar uma excelente ideia do que
a propalada Computao em Nuvem e do que possvel revolucionar na sua
empresa. Se voc um CEO, esperamos que os conceitos apresentados aqui
ampliem suas possibilidades e ajudem a transformar o modo de voc pensar
seu prprio negcio. Se voc um homem de marketing, esperamos propor-
cionar novas ferramentas para praticar o Marketing pras Gentes e transformar
o relacionamento com seus mercados. Se voc um homem de TI, esperamos
ajud-lo a repensar seu prprio papel e a desenhar servios e solues cada vez
mais inovadores. E se voc atua em qualquer outra rea, nossa expectativa que
o conhecimento sobre os fundamentos da Computao em Nuvem permita-lhe
vislumbrar novos horizontes sobre como desenvolver novas solues de neg-
cios alavancadas por TI.

Boa leitura.

rodrigosatori@yahoo.com.br
Por que Computao em Nuvem? - pgina 11

Por que Computao em


Nuvem?

D
esde o incio da computao comercial, nos anos 1950, os fornecedores
de tecnologia estiveram focados nos grandes clientes e seus grandes or-
amentos. Mainframes, redes privadas de alta velocidade, arquiteturas de
alta disponibilidade, disaster recovery, computao distribuda Tudo muito
eficiente e robusto, mas praticamente inacessvel s pequenas e mdias empre-
sas dado seu alto custo e excessiva complexidade.

Esse fato acabou deixando pequenas e mdias empresas sem condies de aces-
so Tecnologia da Informao de ponta. Quantas empresas no pensaram em
implementar alguma inovao de TI e acabaram desistindo por causa dos custos
e da complexidade envolvidos?

Com a Computao em Nuvem o jogo diferente. Qualquer empresa, por


menor que seja, pode ter acesso a todos os recursos disponveis. O mercado
do bairro pode usar a mesma tecnologia que d suporte Netflix. Sem investi-
mentos nem custos fixos, tendo somente custos variveis. Como a utilizao de
recursos da empresa pequena ou mdia bem menor que a das grandes empre-
sas, sua conta sempre proporcional ao uso. isso que viabiliza economica-
mente sua utilizao.

Fala-se muito sobre a reduo de custo e a agilidade que a Computao em


Nuvem promove, at porque esses so atributos mais fceis de entender. Mas,
ao possibilitar que todas as empresas, independentemente de seu porte, faam
uso dos mesmos recursos tecnolgicos e da mesma infraestrutura que lhes d
suporte, a Computao em Nuvem possibilita que todas possam competir o
que no acontecia antigamente. Por isso a nuvem apresenta um poder transfor-
mador nos negcios muito maior a mdio e longo prazo: uma startup hoje tem
acesso exatamente aos mesmos recursos que o maior banco do pas.

rodrigosatori@yahoo.com.br
Por que Computao em Nuvem? - pgina 12

Bons motivos para adotar a


Computao em Nuvem

Custo

Como voc s paga pelo que realmente usa, o custo de uma infraestrutura na
nuvem na maioria das vezes menor do que o custo de uma infraestrutura con-
vencional, em que voc compra as mquinas para a sua empresa. O sistema no
precisa funcionar de madrugada? Basta programar o desligamento das mquinas
e deixar de pagar por elas nesse perodo. O volume de acessos est baixo? Tro-
que a mquina que est usando por uma menor e pague menos. Simples assim.
No jargo da Computao em Nuvem, esse modelo dinmico de alocao e
liberao de recursos conhecido pelo termo pagamento pelo uso (pay-per-u-
se), uma vez que s se paga pelo que efetivamente utilizado.

rodrigosatori@yahoo.com.br
Por que Computao em Nuvem? - pgina 13

Agilidade

Provedores de infraestrutura convencionais demoram dias, ou at semanas, para


entregar novas mquinas, discos ou qualquer outro recurso para seus clientes.
Observe que isso acontece independentemente de a infraestrutura ser prpria,
instalada em um data center local ao negcio, ou terceirizada, rodando em um
provedor de hospedagem. Na Computao em Nuvem, o processo de alocao
(ou diminuio) de novos recursos demora apenas alguns minutos. Basta esco-
lher a mquina desejada, seu sistema operacional e parametrizar alguns dados:
pronto, a nova mquina est no ar. Sem qualquer investimento.

Flexibilidade

No precisa mais de uma mquina? s desligar. Precisa de uma mquina


maior? s aumentar o tamanho. Mais disco? s definir um novo tamanho
para seu disco. Mais memria dinmica? s definir quanto preciso. A qual-
quer momento. Instantaneamente.

rodrigosatori@yahoo.com.br
Por que Computao em Nuvem? - pgina 14

Alta disponibilidade

Para que um ambiente computacional convencional garanta alta disponibilidade


necessrio duplic-lo, criando um ambiente de contingncia que acionado
em caso de falha do principal. Claro, essa duplicao de recursos implica em
desperdcios, uma vez que o ambiente de contingncia fica ocioso a maior parte
do tempo em condies normais. Mesmo no estando em operao, a infraes-
trutura de contingncia demandou investimentos e est gerando despesas de
depreciao, ocupando espao, requerendo segurana e superviso ou seja,
h gerao de custos mesmo sem a infraestrutura estar no ar. Somente quando
algo falha que a infraestrutura adicional passa a ser utilizada.

Com a Computao em Nuvem, a garantia de alta disponibilidade passou a


ser muito mais acessvel1: o ambiente de contingncia pode ser previamente
configurado, mas mantido em formato reduzido e de baixo custo. Quando
necessrio, esse ambiente pode ser aumentado em poucos minutos, assumindo
uma configurao semelhante ao do ambiente principal. A alta disponibilidade
na nuvem tem custos expressivamente menores que quaisquer outras solues,
dentro da empresa ou em provedores onde se paga o aluguel de mquinas.

Por que a Computao em Nuvem


inevitvel?

Pode-se falar muito sobre as vantagens tecnolgicas da Computao em Nu-


vem em relao ao modelo tradicional. Mas o principal motivo pelo qual o
movimento para a Computao em Nuvem inevitvel baseado em slidos
fundamentos da Cincia Econmica, isto , a principal vantagem dessa nova
tecnologia econmica. Vejamos a seguir.

1 Para uma discusso detalhada do tema, veja Disaster Recovery as a Cloud Service: Eco-
nomic Benefits & Deployment Challenges, de Wood et al.

rodrigosatori@yahoo.com.br
Por que Computao em Nuvem? - pgina 15

A Computao em Nuvem favorece a


Inovao

A Computao em Nuvem favorece a criao de novos negcios ou a inovao


em negcios tradicionais por eliminar a necessidade de grandes investimentos
iniciais para a montagem de uma infraestrutura computacional para acomodar a
nova iniciativa. Isso reduz os riscos, pois esses investimentos iniciais so evita-
dos e no se tornam um problema econmico caso o novo empreendimento
no d certo.

Se o novo negcio der certo, a agilidade da Computao em Nuvem para alocar


ou liberar recursos de maneira quase instantnea permite que as empresas ajus-
tem dinamicamente seus gastos com processamento de dados de acordo com
a demanda, sem precisar provisionar recursos para uma necessidade que pode
no se concretizar2. Dessa forma, o modelo de pagamento pelo uso da Com-
putao em Nuvem, em que se paga apenas pelo que efetivamente utilizado,
permite a diminuio do chamado custo enterrado em novas iniciativas, alm
de garantir que o custo estar sempre ajustado demanda.

Economia de escala3

A vantagem econmica advm da economia de escala resultante do uso mais


eficiente dos recursos computacionais de propsito geral, que so compartilha-
dos, o que no acontece quando se usa os mesmos recursos em data centers
prprios ou terceirizados. Ora, nas Cincias Econmicas, o que caracteriza o
conceito de economia de escala justamente a organizao do processo pro-
dutivo de forma a utilizar melhor os elementos de produo envolvidos nesse
processo, o que resulta em diminuio de custos. No caso da Computao em
Nuvem, essa organizao dos processos um problema do fornecedor do am-
biente em nuvem e no da sua empresa.

2 Uma das situaes em que a vantagem de custos da Computao em Nuvem muito


superior de infraestruturas computacionais mantidas localmente justamente quando a demanda
pelos servios incerta. Veja Above the Clouds: A Berkeley View of Cloud Computing, de Arm-
brust et al.

3 Uma abordagem detalhada sobre o tema oferecida pelo artigo The economics of the
cloud, de Rolf Harms e Michael Yamartino.

rodrigosatori@yahoo.com.br
Por que Computao em Nuvem? - pgina 16

Na Computao em Nuvem, quanto mais o fornecedor organiza e otimiza a sua


infraestrutura, mais seus custos diminuem, e a concorrncia de mercado garante
que essa diminuio seja normalmente repassada para os clientes de tempos em
tempos. Ou seja, a economia de escala que acontece do lado dos fornecedores
acaba sendo repassada para os clientes, gerando economia de escala tambm
do lado da demanda.

Economia de escala do lado dos fornecedores

Do lado dos fornecedores, quanto maior o nmero de seus clientes, tanto


maior o volume de recursos necessrios para atender a todos. Esse grande
volume de concentrao de recursos permite negociar melhores preos para ad-
quirir novos servidores, comprar energia eltrica e outros insumos de produo.
Alm disso, o custo total do servio de administrao desses servidores, por ser
dividido por um maior nmero de mquinas, tambm minimizado. Por tudo
isso, os custos da sua empresa com Computao em Nuvem so sensivelmente
menores que os custos que voc teria in-house e mesmo o custo com prove-
dores tradicionais de internet.

Economia de escala do lado da demanda

Do lado da demanda, a Computao em Nuvem permite agregar diferentes


necessidades de processamento, suavizando os picos e vales de utilizao dos

rodrigosatori@yahoo.com.br
Por que Computao em Nuvem? - pgina 17

equipamentos. Isso faz com que o uso mdio dos servidores seja muito mais
elevado do que o de servidores dedicados para fins especficos.

Por exemplo, existem determinadas aplicaes que so mais usadas no horrio


comercial, enquanto outras so mais utilizadas noite. No modelo tradicional,
em que servidores so alocados para cada aplicao de maneira exclusiva, boa
parte do tempo os servidores ficam ociosos. Com a Computao em Nuvem,
possvel alocar os mesmos recursos computacionais para aplicaes de perfis
complementares de utilizao.

rodrigosatori@yahoo.com.br
Por que Computao em Nuvem? - pgina 18

O que incentiva e o que dificulta


o uso da Computao em Nuvem

Vantagens

Estas so algumas das vantagens da Computao em Nuvem em relao ao


modelo tradicional:

>> Reduo de investimentos iniciais e eliminao dos custos de manuten-


o, segurana, eletricidade, espao e outros que seriam necessrios;

>> Elasticidade e escalabilidade, isto , a capacidade de se ajustar dinami-


camente demanda, esticando ou encolhendo a capacidade computa-
cional em funo do uso, inclusive dos recursos de Internet;

>> Maior rapidez de implementao, incluindo tempo para aprovao de


novas iniciativas, uma vez que no exigem grande investimento inicial,
reduzindo os riscos empresarias;

>> Agilidade para colocar novas aplicaes no ar;

rodrigosatori@yahoo.com.br
Por que Computao em Nuvem? - pgina 19

>> Estmulo colaborao entre departamentos da organizao e tambm


na cadeia de fornecimento.

Outros fatores indicados como incentivadores da adoo da nuvem j eram pre-


vistos na teoria, mas so menos bvios e interessante ressaltar que o mercado
normalmente tambm os leva em considerao:

>> Possibilidade de se testar e realizar pilotos de uma nova soluo em um


ambiente sem riscos antes de efetivar sua adoo em produo;

>> Acesso a melhores ferramentas para rastreamento e auditoria dos siste-


mas e da integridade dos dados, sem ter que investir nessas ferramentas.

Dificuldades

J em relao aos fatores que dificultam a adoo da Computao em Nuvem


pelas organizaes, alguns podem at ser surpreendentes:

>> Necessidade de melhor integrao entre os sistemas que rodam na nu-


vem e os sistemas que rodam internamente na organizao;

>> Necessidade de acesso estvel internet e com banda de comunicao


adequada para o nvel de uso, principalmente quando os sistemas produ-

rodrigosatori@yahoo.com.br
Por que Computao em Nuvem? - pgina 20

zem servios para clientes internos;

>> Resistncia da equipe interna, que considera que esse tipo de servio
aumenta a complexidade do trabalho, seja o desenvolvimento de novos
sistemas, seja a configurao da infraestrutura na nuvem;

>> Resistncia dos gestores de TI, que temem perda de controle sobre o
ambiente operacional e tambm perda de sua importncia dentro da
organizao, resultando em obsolescncia de suas funes;

>> Aspectos legais e de segurana nesse caso, os gestores querem saber a


localizao fsica dos recursos computacionais e, especialmente, quais
as prticas legais da jurisdio desse local;

>> Reaes negativas e cticas em relao ao termo Computao em Nu-


vem.

Em particular, vale a pena ressaltar o fator de resistncia dos gestores de TI. A


Computao em Nuvem evoluo inevitvel, e a principal prova disso que
os fornecedores tradicionais de tecnologia, como IBM, Microsoft, HP e Ora-
cle tm concentrado investimentos massivos na criao de infraestruturas para
oferta desse tipo de servio no mundo inteiro. Esse movimento cria situaes em
que a inevitabilidade da mudana faz com que os mais geis aproveitem a onda
para lev-los frente antes dos outros, enquanto que os mais lentos perdem a
oportunidade, construindo um futuro que confirma suas previses mais pessi-
mistas. Portanto, uma questo de postura pessoal e profissional decidir de que
grupo cada um quer fazer parte.

Custos enterrados: fator que


deve ser considerado

Uma pesquisa da revista Information Week em 2013 buscou entender como os


clientes corporativos enxergavam as solues do pacote Google in the Enterpri-
se, que a oferta da empresa para sua sute de aplicativos de automao para
escritrio completamente baseada na nuvem, que inclui editor de texto, e-mail e
planilha eletrnica, entre outras aplicaes.

rodrigosatori@yahoo.com.br
Por que Computao em Nuvem? - pgina 21

Naturalmente, tendo como base a funcionalidade da soluo alvo da pesquisa,


os participantes focalizaram suas respostas na comparao entre a soluo do
Google e o pacote Office da Microsoft.

Independentemente do resultado favorvel para a Microsoft no curto prazo,


mas apontando para uma competio mais acirrada nos prximos anos
importante ressaltar um aspecto evidenciado pela pesquisa: um nmero expres-
sivo de usurios indicou que nem avalia ainda a soluo do Google pelo fato de
ter uma quantidade representativa de licenas da Microsoft cujos investimentos
realizados precisam ser amortizados. E esse, em contrapartida, um dos fato-
res menos analisados quando se fala em migrao para a nuvem: os chamados
custos enterrados, que so aqueles gastos j incorridos e irrecuperveis.

Para as pequenas (e muitas mdias) empresas, A Computao em Nuvem viabi-


liza solues que antes no cabiam em seus oramentos. Na maioria dos casos,
a nica alternativa seria a hospedagem em um data center tradicional, sem as
vantagens da agilidade de alocao/desalocao de recursos e do pagamento
pelo uso.

Entretanto, no caso das empresas grandes e mdias que possuem data centers
internos, quando se fala em migrar solues para a nuvem, h que se considerar
os tais custos j enterrados na construo da infraestrutura prpria, incluindo
sistemas de alimentao de energia, refrigerao e por a vai. Alm disso, h
os equipamentos de rede, os servidores que j esto em operao e, principal-
mente, as licenas de software. Em certos casos, no possvel simplesmente
transferir as licenas para os servidores que rodaro na nuvem - e essa avaliao
deve ser feita com cuidado. Deve-se considerar ainda que, mesmo que se adote
a nuvem apenas para as aplicaes que mais se beneficiam das vantagens ofere-
cidas por esse modelo, a estrutura interna provavelmente continuar sendo man-
tida para rodar outras aplicaes que a empresa no tem interesse em migrar.

rodrigosatori@yahoo.com.br
Por que Computao em Nuvem? - pgina 22

Em situaes como essa, quando se fala em uma nova aplicao a ser implan-
tada, mesmo que ela seja uma natural candidata nuvem, pode ser muito
tentador simplesmente comprar mais um servidor, aumentar um pouquinho
a banda internet e tocar o barco assim mesmo, por ser a coisa mais fcil e
provavelmente mais barata a fazer no curto prazo. Entretanto, essa forma de
conduo pode resultar em perda de competitividade ou menor retorno sobre os
investimentos em TI logo ali na frente. O ideal que as empresas que possuem
infraestrutura prpria definam uma estratgia clara em relao Computao
em Nuvem, baseada em uma classificao cuidadosa de seu portflio de apli-
caes, dos processos de negcio suportados por elas e por uma avaliao dos
elementos que fundamentam a deciso de onde rodar cada tipo de aplicao.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 23

Conceitos fundamentais

O que Computao em Nuvem?

A
final, o que Computao em Nuvem? E o que no ? Desde o adven-
to da internet, surgiram vrios fornecedores que passaram a oferecer
servios de hospedagem e criaram data centers que absorveram parte
expressiva do parque de equipamentos que antes ficava dentro das empresas.
Mas isso no Computao em Nuvem.

Quando de seu surgimento, e at que o conceito ficasse mais claro, a Computa-


o em Nuvem foi caracterizada de maneira muito abrangente, incluindo toda
e qualquer forma de virtualizao de servidores e de terceirizao de infraestru-
tura computacional. Dessa forma, durante algum tempo, o termo assumiu um
carter bastante genrico, e no caracterizava de maneira clara um modelo de
funcionamento que permitisse identificar seus atributos e benefcios especficos.
No entanto, medida que as solues oferecidas pelo mercado foram se conso-
lidando, surgiram propostas de definio que caracterizam de maneira precisa o
conceito de Computao em Nuvem.

Dentre as vrias definies propostas, uma que vem tendo ampla aceitao pelo
mercado e que cada vez mais citada na literatura especializada aquela pro-
posta pelo NIST, o Instituto Nacional de Padres e Tecnologia do Departamento
de Comrcio norte-americano, em 2011:

A Computao em Nuvem um modelo que permite acesso


ubquo4, conveniente e sob demanda, via rede, para um conjunto
compartilhado de recursos computacionais configurveis (por
exemplo, redes, servidores, armazenamento, aplicaes e servios)
que podem ser alocados e liberados rapidamente com o mnimo

4 Que tem o dom da ubiquidade; que est ou pode estar em toda parte ao mesmo tempo;
onipresente.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 24

esforo de gerenciamento ou interao com o provedor de


servios5.

Por exemplo, um servio de Computao em Nuvem que atenda definio


proposta pelo NIST deve oferecer mecanismos automticos para alocao de
novos servidores atravs de regras que considerem a capacidade computacional
em uso, algo como: aloque um novo servidor sempre que o conjunto atual de
servidores atingir 80% de sua capacidade mxima de processamento.

Entretanto, o prprio NIST ressalta que o paradigma de Computao em Nuvem


um conceito que est em evoluo. A definio que ele prope no definiti-
va e dever evoluir ao longo do tempo.

Sob demanda

Em um servio de nuvem, o sistema de aplicao consumidor deve ser capaz de


alocar novos recursos automaticamente, sem interao humana com o provedor
de servios. Os recursos devem ser alocados e liberados de forma elstica, e de
forma automtica em alguns casos, permitindo a rpida adaptao ao aumento
ou diminuio da demanda. Para a aplicao consumidora, os recursos dispo-
nveis devem parecer ilimitados, sendo possvel alocar a quantidade desejada
desses recursos a qualquer momento.

Alm disso, a empresa cliente pode reparametrizar as especificaes do servi-


dor, aumentando de modo fixo sua capacidade, se isso se mostrar realmente ne-
cessrio e vantajoso do ponto de vista econmico, uma vez que o uso automti-
co de recursos adicionais, se muito frequente, pode ser menos vantajoso que um
aumento permanente de capacidade.

5 The NIST definition of cloud computing, de Peter Mell e Timothy Grance, 2011.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 25

Assim, o servio de Computao em Nuvem:

>> Atende automaticamente a picos de demanda de processamento ou


trfego de dados;

>> No exige que se encomendem novos servidores;

>> No exige que o contrato de fornecimento de servios seja alterado


sempre que se deseje alterar os recursos computacionais disponveis
incluso ou remoo de servidores ou aumento de espao em disco, por
exemplo;

>> Permite que os recursos sejam alocados, liberados ou reconfigurados sob


demanda.

Acesso amplo

Os recursos devem estar disponveis atravs da rede (internet) e devem ser aces-
sveis por mecanismos padro, permitindo seu uso por diferentes dispositivos,
tais como computadores pessoais, smartphones, tablets, etc.

Os recursos computacionais do provedor de servios devem ser agrupados para


servir a mltiplos clientes, com recursos fsicos e virtuais sendo arranjados e
rearranjados dinamicamente conforme a demanda desses clientes. Existe um

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 26

senso de independncia de localizao, no qual o cliente consumidor no tem


um controle exato de onde os recursos utilizados esto localizados, mas deve
ser possvel especificar esse local em alto nvel de abstrao (pas, unidade fede-
rativa ou data center).

Medio de uso

Os servios de Computao em Nuvem devem controlar e otimizar os recursos


de maneira automtica, disponibilizando mecanismos de medio apropriados
para o tipo de recurso utilizado (por exemplo, quantidade de espao de armaze-
namento, velocidade de comunicao, capacidade de processamento, nmero
de usurios ativos, etc.). Deve ser possvel monitorar, controlar e consultar o
uso dos recursos, oferecendo transparncia tanto para o cliente quanto para o
provedor dos servios.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 27

Provedores de Computao em Nuvem

Alguns dos principais provedores de Computao em Nuvem so:

>> Amazon Web Services (AWS);

>> Microsoft Azure;

>> Google Cloud Platform;

>> Softlayer (IBM);

importante observar que todos esses provedores oferecem os recursos fun-


damentais que caracterizam a Computao em Nuvem. Infelizmente, alguns
provedores de hospedagem e terceirizao de data centers insistem em apre-
sentar suas ofertas como Computao em Nuvem, o que dificulta ao merca-
do entender a diferena desse novo modelo para o tradicional. Portanto, vale
lembrar novamente: se um provedor de servios no oferece provisionamento
e liberao de recursos sem interveno humana, ou se a alocao de novos
recursos (como servidores, espao em disco) no realizada em segundos ou
poucos minutos, ele no est oferecendo Computao em Nuvem, mas ainda
est usando o termo nuvem de forma genrica, sem proporcionar os benefcios
do novo modelo.

Tipos de instncias

Entender os modelos de compra de capacidade de processamento e a precifi-


cao de cada um deles pode parecer tarefa complicada para quem comea
a percorrer o mundo da Computao em Nuvem. Porm essa sensao desa-
parece rapidamente assim que passamos a pensar de acordo com as regras da
nuvem: no precisamos mais estocar recursos em forma de mquinas e discos
para eventuais momentos de pico; podemos comprar capacidade sob demanda
quando necessrio.

Na Computao em Nuvem, os servidores podem ser alocados e desalocados


dinamicamente, e rodam como mquinas virtuais no hardware do fornecedor

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 28

de servios. Quando em execuo, as mquinas virtuais so chamadas de ins-


tncias. As instncias podem ter diferentes tipos, em funo de seu modelo de
cobrana e de sua forma de alocao. A AWS, por exemplo, oferece trs tipos
de instncias: reservadas, sob demanda e spot. O Google, por sua vez, alm da
instncia padro tambm oferece instncias com desconto para uso continuado.
O Microsoft Azure tem as camadas Basic e Standard.

Vejamos como funcionam os tipos de instncias da AWS.

Instncias AWS sob demanda

So instncias iniciadas quando necessrio e o pagamento corresponde apenas


quantidade de horas utilizadas. Esse tipo de instncia a que reflete plena-
mente a flexibilidade da Computao em Nuvem. Em um momento de pico, em
poucos minutos pode-se iniciar novas instncias ou aumentar a capacidade das
j existentes; alm disso, num momento de baixo uso, as instncias ociosas po-
dem ser desligadas. A cobrana feita por hora de uso, isto , mesmo que uma
instncia seja utilizada por apenas um minuto, ser cobrada a hora cheia.

Esse tipo de instncia interessante para aplicaes que tenham um perfil de


uso no constante ou imprevisvel e que no possam ser interrompidas. Diante
da necessidade de mais capacidade de processamento, instncias sob demanda
podem ser iniciadas, e se ficarem ociosas, podem ser desligadas. Tudo isso
possvel sem ter de fazer um desembolso inicial para reserva de capacidade.

Instncia AWS reservada

Ao comprar uma instncia reservada, voc paga um valor inicial para us-la por
um ou trs anos. A taxa de utilizao, paga por hora, mais baixa do que a da
instncia sob demanda. A instncia reservada estar sempre disponvel. Embo-
ra esse tipo de instncia seja mais econmica, em certo sentido ele contraria a
flexibilidade do modelo de Computao em Nuvem, pois equivale a reservar
recursos, como no caso da computao tradicional.

A desvantagem desse tipo de instncia que o usurio tem de desembolsar um


bom dinheiro no pagamento inicial para reserv-la, alm de perder a flexibilida-

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 29

de de aumentar a capacidade da instncia ou de mud-la de zona de disponibi-


lidade (veja o conceito de zona de disponibilidade mais adiante) sempre que for
conveniente.

A instncia reservada pode ser usada por aplicaes que exijam esse tipo de dis-
ponibilidade ou por aplicaes que tm um uso constante e contnuo. Quanto
menos variar a necessidade de processamento e quanto menos horas ela for su-
butilizada em um perodo, mais vantajosa a compra de instncias reservadas.

Instncia spot

So as instncias compradas da Amazon em uma espcie de leilo da capacida-


de ociosa. Voc define qual o valor mximo por hora que est disposto a pagar
por uma instncia X e, caso a Amazon tenha capacidade de processamento
ociosa, voc leva a instncia geralmente por um valor bem abaixo do valor de
uma instncia sob demanda.

Como no existe almoo grtis, se a Amazon precisar de capacidade de proces-


samento para iniciar instncias sob demanda, ou se algum outro usurio ofere-
cer um valor maior pela mesma instncia ( um leilo!), voc a perde na hora,
sem aviso e sem d. Por isso no qualquer tipo de aplicao que est prepara-
da para rodar em instncias spot. As indicaes de uso so:

>> Aplicaes que podem ser iniciadas ou terminadas a qualquer momento;

>> Aplicaes que s so viveis com um custo bem baixo, e que podem
esperar para realizar seu processamento quando houver disponibilidade
de instncias desse tipo;

>> Para usurios com grande necessidade de processamento por um perodo


muito curto.

Embora esses trs modelos de compra de capacidade de processamento em


nuvem da AWS tenham sido apresentados isoladamente, na prtica a melhor
relao custo/benefcio para uma determinada aplicao encontra-se em uma
combinao dos trs modelos. Para chegar o mais prximo possvel do ponto
timo, no existe mgica. Um bom ponto de partida a anlise dos requisitos
no funcionais da aplicao, como perfil de uso esperado, SLA, risco, etc. Com

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 30

isto define-se uma combinao inicial que pode ser, ento, monitorada e ajusta-
da continuamente.

O modelo de instncias do Google, por sua vez, apresenta algumas caracte-


rsticas diferentes que podem ser mais apropriadas, em termos de custo, para
determinados tipos de aplicao.

Instncia padro do Google

Funciona como a instncia sob demanda da AWS, porm difere na forma de


cobrana. Ao invs de cobrar por hora de uso, a cobrana por minuto, sendo
que o mnimo de 10 minutos. Por exemplo, se voc usar 3 minutos, paga 10.
Se usar 11 minutos e 25 segundos, paga 12 minutos.

De maneira geral, qualquer aplicao que precise realizar picos de processa-


mento por curtos perodos de tempo podem se beneficiar desse modelo de co-
brana. Ainda, desenvolvedores de software, que muitas vezes rodam instncias
para testar suas aplicaes por perodos curtos, tambm se beneficiam dessa
maior granularidade na contagem de tempo.

Instncia com desconto para uso


continuado do Google

Na verdade, esse no um tipo diferente de instncia, mas um modelo de


cobrana diferenciado que favorece as instncias sob demanda que rodam por
perodos mais longos.

No modelo do Google, as instncias sob demanda se beneficiam de descontos


progressivos ao longo do tempo. O clculo feito considerando o ms de fatu-
ramento: uma instncia sob demanda que rodar mais do que 25% do tempo de
um ms comea a obter descontos. Por exemplo, considere uma instncia que
rodou o tempo equivalente 75% do ms:

>> Os primeiros 25% de tempo so cobrados pelo preo normal da instn-


cia on demand;

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 31

>> Os prximos 25% so cobrados com um desconto de 20%;

>> Os prximos 25% so cobrados com um desconto de 40%.

Nesse exemplo, o desconto lquido total para a instncia naquele ms de 20%


em relao ao preo cheio. O desconto mximo que pode ser obtido de 30%
do preo cheio.

Outro fato interessante que o modelo de cobrana do Google agrupa as esta-


tsticas de uso de suas instncias no paralelas para fins de clculo do desconto.
Por exemplo, se voc rodar uma instncia por quinze dias, deslig-la e ligar
outra com mesma configurao na mesma regio, essa segunda instncia se
beneficiar dos descontos progressivos, pois o Google considera que voc est
usando uma instncia equivalente primeira e aplica o desconto para uso conti-
nuado segundo as regras descritas acima.

Instncias do Microsoft Azure

O Azure divide suas instncias em duas famlias, que so chamadas de cama-


das: Basic e Standard.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 32

A camada Basic oferece apenas instncias para uso geral, e indicada para
aplicativos de produo de uma s instncia, instncias de desenvolvimento,
servidores de teste e aplicativos de processamento em lote (batch). A camada
Standard oferece instncias para uso geral, para uso intenso de CPU ou para uso
intenso de memria, e tambm possui mecanismos para redimensionamento
automtico de recursos computacionais (autoscaling) e balanceamento de carga.
Por ter mais recursos, o preo desta camada superior ao da Basic.

Embora os preos sejam apresentados por hora, o Azure cobra apenas os minu-
tos efetivamente utilizados. A principal forma de cobrana o pagamento pelo
uso, ou seja, equivale a uma instncia sob demanda.

Para empresas, existe a possibilidade de usar o Enterprise Agreement. O cliente


estabelece um compromisso maior com plataforma Azure e passa a ter direito a
descontos e outras condies adicionais. A empresa paga um valor antecipado
para o consumo ao longo do ano. O que for excedido, ser cobrado trimestral-
mente ou anualmente.

Virtualizao X Computao em
Nuvem

V
irtualizao de servidores uma forma de se otimizar o uso de servido-
res fsicos, fazendo com que vrios servidores virtuais, sob o controle
de um hipervisor (monitor das mquinas virtuais), possam rodar sobre
o mesmo hardware6. A virtualizao, ao simular ambientes autnomos em uma
mesma mquina fsica, diminui a necessidade de hardware, de espao fsico e
de energia. Alm disso, os servidores virtuais, por poderem ser facilmente movi-
dos entre diferentes mquinas fsicas, favorecem a manuteno.

J Computao em Nuvem abrange um conceito mais amplo: contm a ideia de


utility computing (pagamento pelo uso e adaptao demanda), em que usu-
rios pagam pelo processamento, armazenamento e transferncia de dados de
acordo com o que efetivamente utilizado, da mesma forma que se paga pela
gua, eletricidade e, de certa forma, telefonia.

6 Para conhecer mais profundamente o conceito, veja o artigo Server Virtualization Archi-
tecture and Implementation, de Jeff Daniels.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 33

A confuso entre os dois termos - virtualizao e Computao em Nuvem -


acontece porque a Computao em Nuvem usa a virtualizao, ou seja, em
cada mquina fsica do provedor de servios de nuvem podem ser criadas vrias
mquinas virtuais, que so alocadas ou liberadas de acordo com a necessidade.
Tipicamente, na Computao em Nuvem, a unidade bsica de processamento
uma mquina virtual, e as mquinas virtuais so alocadas e liberadas pelo
usurio de acordo com a demanda.

Computao em Nuvem e Virtualizao no so, portanto, a mesma coisa. H


uma importante relao entre os dois conceitos, pelo fato de a virtualizao ser
uma das principais tecnologias de implementao do modelo de nuvem.

Elasticidade e Escalabilidade

O
termo elasticidade teve origem nas reas de Fsica e Economia, mas hoje
tambm bastante empregado na rea de Computao.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 34

Na Fsica, elasticidade a propriedade que um material tem de retornar ao seu


estado inicial depois de sofrer uma deformao. Um exemplo simples dado
por uma bola de futebol que, quando chutada, se deforma e, por possuir a
virtude da elasticidade, retorna ao seu formato original o que a impulsiona na
direo dada pelo chute.

Na economia, elasticidade o impacto que a alterao em uma varivel causa


em outra. Por exemplo, o quanto a alterao do preo de um produto se reflete
no aumento ou diminuio de sua demanda.

Vemos que, nos dois casos, o conceito de elasticidade praticamente intuitivo


mas pode ser descrito com preciso atravs de frmulas puramente matemti-
cas.

Na rea de Computao, elasticidade pode ser entendida como a capacidade


de um sistema se adaptar s alteraes de carga de trabalho pela alocao e li-
berao de recursos, de maneira autnoma, de forma que, a qualquer momento,
o conjunto de recursos utilizados o mais compatvel possvel com a demanda
instantnea7.

Observe-se, portanto, que na Computao a elasticidade diz respeito adapta-


o automtica de um sistema variao da carga de trabalho de forma prati-
camente instantnea. Por exemplo, um site internet ser elstico se for capaz de
alocar e liberar recursos computacionais (servidores, discos, banda de comuni-
cao) medida que o nmero de usurios simultneos aumenta ou diminui.
Um ambiente computacional, por sua vez, ser elstico se for capaz de propor-
cionar os recursos demandados pelos sistemas que rodam nele.

E exatamente isso que a Computao em Nuvem proporciona: um ambiente


elstico que permite a alocao e liberao dinmica de recursos para os siste-
mas que rodam em sua infraestrutura. O ambiente de Computao em Nuvem
gera a iluso de que possui uma quantidade infinita de recursos para os sistemas
que rodam nele. Sempre que um sistema demanda mais recursos, a nuvem deve
ser capaz de provision-los.

7 Os conceitos de elasticidade e escalabilidade apresentados so aqueles apresentados no


artigo Elasticity in Cloud Computing: What It Is, and What It Is Not.de Herbst, Kounev e Roussner.
No caso da escalabilidade, o conceito apresentado por esse artigo se limita dimenso desempe-
nho. Para uma discusso mais aprofundada sobre o termo, veja A framework for Modelling and
Analysis of Software Systems Scalability. de Duboc, Rosenblum e Wicks.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 35

O termo escalabilidade, por sua vez, pode ser conceituado como a habilidade
de um sistema de suportar com desempenho adequado cargas crescentes de
trabalho, medida que sejam adicionados novos recursos computacionais8.
Ou seja, um sistema dito escalvel se for capaz de fazer uso de novos recursos
computacionais disponibilizados para sua execuo no sentido de acompanhar
o aumento da demanda.

Portanto, a elasticidade diz respeito capacidade de um sistema de esticar e


encolher em termos de recursos utilizados em funo da demanda. A escalabi-
lidade o atributo que indica que um sistema capaz de fazer uso de recursos
adicionais colocados sua disposio. A escalabilidade um pr-requisito para
a elasticidade, uma vez que um sistema s pode ser elstico se for escalvel.

Costuma-se dizer que a Computao em Nuvem oferece uma infraestrutura


elstica que permite a construo de sistemas escalveis. Porm, o fato de um
sistema rodar na nuvem no garante que ele seja escalvel. Para que um sistema
seja escalvel ele precisa ser construdo de forma a utilizar a capacidade que o
ambiente de nuvem oferece de alocar e liberar recursos dinamicamente.

Na grande maioria dos casos, os sistemas desenvolvidos para rodar em ambien-


tes computacionais convencionais no so escalveis ou, quando possuem esse
atributo, exigem interveno manual de reconfigurao para poderem fazer uso
de novos recursos. Dessa forma, sua execuo no ambiente de nuvem no se
beneficia completamente da elasticidade proporcionada. Quando um sistema
transferido de um ambiente convencional para a nuvem pode ser necessrio
adapt-lo para que possa desfrutar das vantagens oferecidas pela Computao
em Nuvem. No caso de sistemas que no possuem a caracterstica de escala-
bilidade, essa adaptao pode ser bastante drstica, sendo necessrio recriar o
sistema quase completamente.

Em linhas gerais, um sistema a ser migrado de um ambiente computacional


convencional para a nuvem pode ser classificado de acordo com seu grau de
compatibilidade com a Computao em Nuvem9:

8 Veja nota anterior.

9 A classificao apresentada vem do artigo The CloudMIG Approach: Model-based Mi-


gration of Software Systems to Cloud-optimized Applications. de Sren Frey e Wilhelm Hasselbring.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 36

A. Incompatvel com a nuvem: quando alguma de suas caractersticas o


impede de ser executado no ambiente da nuvem;

B. Compatvel com a nuvem: quando no h impeditivos para que seja exe-


cutado no ambiente da nuvem, embora algumas de suas caractersticas
sejam incompatveis com a nuvem;

C. Pronto para a nuvem: quando o sistema no possui nenhuma caracters-


tica incompatvel com a nuvem;

D. Alinhado com a nuvem: quando o sistema se beneficia da execuo em


nuvem em termos de reduo de custos ou uso de recursos especficos;

E. Otimizado para a nuvem: quando o sistema passa a explorar a elasti-


cidade e os servios exclusivos da nuvem, incluindo o paralelismo de
operaes proporcionado pelo ambiente, permitindo um uso timo dos
recursos disponveis.

Tipos de nuvem: pblica,


privada, hbrida

Q
uando se fala sobre as possveis formas de implantao da Computao
em Nuvem, os seguintes tipos so normalmente propostos10:

>> Nuvem pblica

>> Nuvem privada

>> Nuvem hbrida

10 Em The NIST definition of cloud computing, de Peter Mell e Timothy Grance, sugerida
ainda a nuvem comunitria, em que a infraestrutura de nuvem compartilhada por uma comuni-
dade especfica de usurios de empresas que tenham interesses em comum.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 37

Nuvem pblica

aquela oferecida pela internet por um provedor de servios, em que os recur-


sos computacionais so compartilhados pelos seus diversos clientes e o controle
das instncias, mquinas virtuais e recursos de processamento e armazenamento
ficam completamente delegados ao provedor.

Nuvem privada

aquela em que os recursos computacionais dedicados a uma determinada


organizao esto isolados dos utilizados por outras empresas. No necessa-
riamente uma combinao de recursos computacionais em que os equipamen-
tos pertencem e esto fisicamente alocados dentro de uma organizao, como
o nome pode dar a entender. Uma nuvem privada pode ser configurada em um
provedor pblico.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 38

Portanto, o termo nuvem privada pode significar duas coisas distintas:

>> Uma nuvem criada na rede interna da empresa, em que a infraestrutura


fsica totalmente controlada e utilizada pela prpria organizao;

>> Uma nuvem privada virtual (Virtual Private Cloud - VPC), em que a
infraestrutura controlada por um provedor de servios, mas os recursos
alocados para uma determinada organizao so isolados dos recursos
compartilhados pela nuvem pblica.

Uma nuvem privada virtual oferecida por um provedor de servios normalmente


confere ao usurio os mesmos benefcios da nuvem pblica, incluindo paga-
mento pelo uso e alocao e liberao de recursos computacionais sob deman-
da. Naturalmente, o maior controle oferecido por esse modelo acarreta tambm
em maior esforo de gerenciamento quando comparado nuvem pblica.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 39

Nuvem Hbrida

J uma nuvem hbrida constituda de uma juno de servios de nuvem pbli-


ca e privada. Por exemplo, a organizao pode manter algumas aplicaes na
nuvem privada da empresa, e outras em servios de nuvem pblica ou privada
virtual.

Em tese, uma nuvem privada oferece um grau maior de segurana do que uma
nuvem pblica, dado que o trfego de informaes e a migrao de dados entre
servidores virtuais e fsicos limitada aos recursos que esto sob controle direto
da empresa cliente que a controla e administra. Entretanto, a questo de segu-
rana dos sistemas est muito mais relacionada sua arquitetura, mecanismos
de proteo e utilizao de tcnicas de sigilo de dados do que ao tipo de nuvem
no qual eles so executados. Ou seja, o uso de uma nuvem privada potenciali-
za, mas no necessariamente oferece, de fato, maior segurana.

Tipos de servios: IaaS, PaaS e


SaaS

O
s modelos de servio de nuvem podem ser de trs tipos:

>> Infraestrutura como Servio (IaaS Infrastructure as a Service)

>> Plataforma como Servio (PaaS Plataform as a Service)

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 40

>> Software como Servio (SaaS Software as a Service)

Fonte: IaaS, PaaS and Saas Terms Clearly Explained and Defined, Siverlight Hack.

Infraestrutura como Servio (IaaS)

O servio oferecido ao usurio um conjunto de recursos computacionais b-


sicos, tais como capacidade de processamento, armazenamento e redes, sobre
os quais pode ser instalado e executado qualquer tipo de software, incluindo
sistemas operacionais e aplicaes. Neste caso, embora a infraestrutura de nu-
vem seja invisvel para o usurio, ele pode controlar completamente os sistemas
operacionais, espao de armazenamento e aplicaes alocados por ele. Exem-
plos desse tipo de servio so o Amazon Web Services (AWS), o Google Compu-
te Engine e o Microsoft Azure.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 41

Plataforma como Servio (PaaS)

O usurio pode instalar e gerenciar suas prprias aplicaes, desenvolvidas por


ele ou adquiridas de terceiros, utilizando as ferramentas e bibliotecas oferecidas
pelo provedor. Ou seja, as aplicaes que rodam numa plataforma como ser-
vio so desenvolvidas especificamente para ela. Por exemplo, considere uma
aplicao desenvolvida para a plataforma Google App Engine utilizando uma
linguagem de programao padro, digamos, Python. Para poder rodar em outra
plataforma que suporte essa linguagem, como o Heroku, a aplicao precisa-
ria ser adaptada. O uso de PaaS elimina a necessidade de comprar, configurar
e gerenciar recursos de hardware e software. A infraestrutura invisvel para o
desenvolvedor, mas ele pode configurar as aplicaes e, eventualmente, aspec-
tos referentes ao ambiente utilizado por elas. Alm dos j citados Google App
Engine e Heroku, outro exemplo de PaaS o Microsoft Azure Cloud Services.

Software como Servio (SaaS)

O usurio utiliza um software fornecido pelo provedor, e esse software roda em


uma infraestrutura de Computao em Nuvem. A infraestrutura invisvel para o
usurio, uma vez que o gerenciamento de recursos como espao em disco, ca-
pacidade de rede, sistema operacional ou servidores fica a cargo do provedor de
servios. Um exemplo desse tipo de oferta o Google Apps for Work, em que
possvel criar e manter documentos, planilhas e apresentaes nos servidores do
provedor de servios. Outros exemplos incluem o Microsoft Office 365 e o sis-
tema de gesto de relacionamento com clientes (CRM Customer Relationship
Management) SalesForce.com.

Regies e zonas de
disponibilidade

O
s termos regio e zona de disponibilidade so usados por um dos princi-
pais fornecedores de Computao em Nuvem, a Amazon Web Services
(AWS). Embora sejam termos especficos desse fornecedor, podem ser

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 42

teis para se entender a estrutura global de um servio em nuvem. Os outros


fornecedores usam conceitos semelhantes.

Na AWS, as regies esto distribudas por vrios locais do mundo, e cada uma
delas completamente independente e isolada das outras. Os recursos da AWS
esto distribudos em oito regies11:

>> Virgnia

>> Califrnia

>> Oregon

>> So Paulo

>> Irlanda

>> Tquio

>> Singapura

>> Sidney

11 Dados de 2014.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 43

Cada regio, por sua vez, oferece duas ou mais zonas de disponibilidade. Em
So Paulo, por exemplo, h duas zonas de disponibilidade. Cada uma delas
um data center completo, com infraestrutura independente. Dentro de cada
regio, as zonas de disponibilidade so conectadas por links de baixa latncia
isto , velozes e com tempo de resposta baixo. A figura abaixo exemplifica a
relao entre regies e zonas de disponibilidade:

Essa estrutura, dividida em regies e zonas de disponibilidade, possibilita a


redundncia dos recursos de maneira a garantir alta disponibilidade dos servios
e dados hospedados na nuvem. As mltiplas regies permitem tambm que os
servios sejam espalhados geograficamente para atender de maneira mais veloz
clientes de diferentes regies do planeta.

O Google estrutura sua nuvem em trs regies EUA, Europa e sia e cada
regio possui pelo menos duas zonas, que equivalem s zonas de disponibilida-
de da AWS.

Diferentemente da AWS, o Google no to transparente em relao sua


estrutura. Ele possui trs regies12, mas no d maiores detalhes sobre onde seus
data centers esto localizados.

12 Dados de 2014.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 44

Outro fornecedor o Microsoft Azure, que possui data centers distribudos em


cinco reas geogrficas (geos) e 13 regies13:

Estados Unidos: Europa: sia - Japo: Brasil:


Pacfico:
Iowa Ireland Hong Kong Saitama Prefecture Sao Paulo State
Virginia Netherlands Singapore Osaka Prefecture
Virginia (2)
Illinois
Texas

California

13 Dados de 2014.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 45

E faz diferena a regio que voc escolher para criar sua infraestrutura na nu-
vem? Sim, faz diferena. Um fator importante a ser considerado a latncia, isto
, o tempo de resposta a uma solicitao. Veja o resultado dos testes feitos com
a AWS e o Microsoft Azure a partir do Brasil. Observe que a latncia dos data
centers localizados no Brasil significativamente mais baixa:

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 46

Microsoft Azure: http://azureping.info/

AWS: http://www.cloudping.info/

Para otimizar a entrega de contedo, existem empresas que oferecem servios


de Content Delivery Network (CDN). Um CDN um sistema de servidores dis-
tribudos por diversos data centers ao redor do mundo, que tem como objetivo
oferecer alta disponibilidade e alta velocidade do contedo a ser entregue ao
usurio final. A ideia por trs desse servio distribuir cpias do contedo e en-

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 47

treg-lo a partir do data center que estiver mais prximo do usurio que faz a re-
quisio. Uma das principais empresas especializadas nesse servio a Akamai.
Entre os fornecedores de servios de nuvem, alguns tm seu prprio servio de
CDN, como o Amazon CloudFront e o Microsoft Azure CDN.

Portanto, ao projetar a infraestrutura na nuvem importante considerar dois


elementos latncia e custo de forma a escolher a regio mais adequada para
cada necessidade. Se a aplicao que vai rodar na nuvem exigir baixa latncia,
ento melhor escolher uma regio mais prxima dos usurios. Caso a aplica-
o no tenha interatividade com o usurio e seja voltada para processamento
de grandes lotes, vale a pena avaliar a diferena de preo entre as regies, e
eventualmente escolher uma regio mais distante com preo menor. Alm disso,
atente para dois outros elementos importantes: a legislao sobre privacidade
de dados do pas que hospeda o data center e a cobrana de impostos que se
aplicam s diferentes regies.

Alta disponibilidade na nuvem

U
ma das primeiras coisas que pensamos quando ouvimos falar em nuvem
na alta disponibilidade das aplicaes. Apesar de a associao ser
vlida, o simples fato de rodar uma aplicao na nuvem no garante que
sua disponibilidade seja maior do que rodando em um data center tradicional.
A nuvem entrega todas as ferramentas para tornar sua aplicao praticamente
imune a falhas, mas cabe a voc utilizar os recursos da nuvem de forma a tirar
proveito das caractersticas do ambiente.

Ao planejar uma arquitetura para a nuvem, devemos primeiro levar em conta o


uptime requerido, isto , o tempo que sua aplicao dever ficar rodando sem
sofrer interrupes: 99,999%, 99,9% ou 99%? Essa uma deciso importante,
pois a receita para alta disponibilidade na nuvem a mesma que a dos ambien-
tes tradicionais: redundncia. E redundncia custa dinheiro.

Uma vez definido o uptime requerido, preciso decidir em que nvel haver
redundncia. Em uma nuvem, as falhas podem ocorrer em cinco diferentes
nveis14:

14 Cloud application architectures: building applications and infrastructure in the cloud.,


de George Reese.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 48

>> Nvel 1, recursos fsicos

>> Nvel 2, recursos virtuais

>> Nvel 3, zonas de disponibilidade

>> Nvel 4, regies

>> Nvel 5, provedor da nuvem

Nvel 1 Recursos fsicos

Este nvel envolve o conceito n+1: redundncia de hardware, de data center,


de rede, enfim, tudo que diz respeito infraestrutura fsica de uma instalao.
Esse tipo de redundncia usado nas instalaes tradicionais; na nuvem, isso
de responsabilidade do fornecedor, e no est ao alcance do usurio.

Nvel 2 Recursos virtuais

Para a maioria das aplicaes, uma arquitetura distribuda com vrias mqui-
nas virtuais (instncias) em uma mesma zona de disponibilidade costuma ser
suficiente. Nesses casos, para garantir tolerncia a falhas devem ser utilizadas
tcnicas j tradicionais para o desenvolvimento de aplicaes internet, como
balanceamento de carga, arquitetura distribuda e replicao de dados.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 49

Nvel 3 Zonas de disponibilidade

Para aplicaes que exijam uma disponibilidade ainda maior, pode-se optar
por uma arquitetura semelhante do nvel 2, mas com instncias distribudas
em mais de uma zona de disponibilidade, dentro de uma mesma regio. Isso
acrescenta um grau de redundncia, onde cada mquina virtual que tenha uma
atribuio distinta em uma zona de disponibilidade precisa ser replicada na
outra zona.

Nvel 4 Regies

Para as aplicaes realmente crticas, que devem continuar funcionando mesmo


no caso de falhas de grandes propores em regies inteiras, podem-se cons-
truir aplicaes distribudas entre regies distintas. Neste caso, porm, o trfego
entre as regies vai pela boa e velha internet, o que aumenta a complexidade
do problema: construir aplicaes distribudas de grande porte pela internet no
tarefa trivial, mas o preo a ser pago pela altssima disponibilidade. Nesse
caso, a aplicao precisa ser construda levando-se em considerao possveis
falhas de comunicao entre seus componentes, alm da variao de latncia
nessa comunicao atravs da rede.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 50

Nvel 5 Provedor de nuvem

Redundncia de nuvem significa replicar a estrutura em mais de um fornecedor,


o que permite sobreviver perda completa de um provedor de nuvem. Natural-
mente, alm dos custos relacionados completa redundncia dos recursos de
nuvem envolvidos, a complexidade desse tipo de soluo inclui a construo
de uma aplicao que seja capaz de rodar em dois ambientes completamente
distintos, o que tambm aumenta o investimento.

Resumindo, a nuvem oferece ferramentas para a construo de aplicaes de


alta disponibilidade para todas as necessidades e bolsos. Entretanto, cabe ao
desenvolvedor construir as aplicaes considerando os recursos que expusemos,
j que alta disponibilidade no vem gratuitamente s pelo fato de serem execu-
tadas na nuvem.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 51

Aplicaes que se beneficiam da


Computao em Nuvem

E
m princpio, a nuvem um ambiente bastante democrtico: qualquer
aplicao pode ser colocada ali, independentemente de suas caracters-
ticas e de como foi construda. Entretanto, h alguns tipos de aplicao
que se beneficiam muito mais da Computao em Nuvem e da elasticidade de
recursos oferecida por ela: so aquelas que possuem necessidades de processa-
mento que variam significativamente de acordo com o tempo15.

Aplicaes com demanda varivel

Exemplos comuns desta categoria so:

>> Aplicaes com uso intenso em horrio comercial, mas que so pouco
usadas fora desse perodo, como o caso da maior parte das aplicaes
de uso interno das empresas;

>> Portais de e-commerce, que apresentam aumento intenso de utilizao s


vsperas de datas comemorativas e depois voltam ao padro normal de
uso;

>> Aplicaes que automatizam tarefas atreladas a um calendrio fixo,


como portais de escolas (muito acessados quando da divulgao de no-
tas ou no perodo de matrculas) ou de escritrios de contabilidade (em
que necessrio calcular os impostos a pagar referentes ao ms anterior
no incio do ms seguinte).

Para tais aplicaes, nos perodos de baixa demanda, poucos recursos da nuvem
so utilizados. Conforme a demanda cresce, novos recursos podem ser adicio-
nados infraestrutura. Naturalmente, possvel automatizar atravs de scripts
todo o trabalho de anlise e alocao ou liberao de recursos.

15 Above the Clouds: A Berkeley View of Cloud Computing, de Armbrust et al.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 52

Aplicaes com padro de crescimento


incerto

Esta outra categoria que se beneficia bastante das caractersticas da Computa-


o em Nuvem. Imagine uma empresa iniciante (startup) que lana um site com
enorme potencial, mas que ainda desconhecido. Deve-se montar uma infraes-
trutura gigantesca que suporte o acesso de milhes de usurios? Alm de custar
caro, o site pode no ser to bem sucedido quanto se espera. Por outro lado, se
a infraestrutura for modesta e o site fizer muito sucesso, a empresa pode perder
clientes por problemas no acesso. Na nuvem no preciso se preocupar com o
prvio dimensionamento. No incio a estrutura pode ser pequena, com acrsci-
mo de recursos de acordo com a necessidade. Em uma infraestrutura tradicional
seriam necessrias vrias semanas para a compra e preparo de novas mquinas.
Na nuvem isso pode ser feito em minutos.

Aplicaes com picos de processamento

Um exemplo deste tipo so as aplicaes de processamento em lote (batch


applications), como as usadas para clculo de folha de pagamento. A demanda
de processamento est fortemente concentrada nos dias anteriores ao fechamen-
to da folha. A forma de resolver isso em uma infraestrutura tradicional ter n-
mero suficiente de mquinas preparadas para suportar o pico de processamento
naquele perodo, mesmo que elas fiquem ociosas a maior parte do tempo. Na
nuvem, os recursos so alocados de acordo com a necessidade e o melhor:
1 mquina por 24 horas custa o mesmo que 24 mquinas por 1 hora. Dessa
forma, possvel alocar uma enorme quantidade de recursos para encurtar o
tempo de processamento.

rodrigosatori@yahoo.com.br
Conceitos fundamentais - pgina 53

Esses trs tipos de aplicao se beneficiam enormemente da elasticidade pro-


porcionada pela Computao em Nuvem. O simples fato de execut-las em um
ambiente que prov essa elasticidade j garante ganhos na forma de economia
de recursos.

Porm, ganhos ainda mais significativos podem ser obtidos com o correto ajuste
dessas aplicaes e de seus ambientes para o modelo de Computao em Nu-
vem. Quando uma aplicao desenvolvida para o modelo tradicional de com-
putao centralizada, existe o pressuposto de que os recursos computacionais
disponveis so fixos. Dessa maneira, os programas que compem a aplicao
no consideram a possibilidade de se alocar e liberar recursos dinamicamente
e, portanto, no consideram tambm que muitas das operaes que realizam
de maneira sequencial poderiam ser paralelizadas. Normalmente, depois que se
realiza a migrao de uma aplicao para a Computao em Nuvem, o passo se-
guinte ideal aperfeio-la para que se beneficie ainda mais do novo modelo16.

16 The cloudmig approach: Model-based migration of software systems to cloud-optimized


applications. de Sren Frey e Wilhelm Hasselbring.

rodrigosatori@yahoo.com.br
Comprando Software como Servio (SaaS) - pgina 54

Comprando Software
como Servio (SaaS)

C
omprar Software como Servio significa comprar apenas o acesso a
uma aplicao, sem se preocupar com a infraestrutura que est por trs
dela. Voc ser apenas o usurio do software, sem nenhuma tarefa de
gerenciamento da infraestrutura necessria para execut-lo.

Qual o tamanho do disco? Qual sistema operacional usado? Como os servido-

rodrigosatori@yahoo.com.br
Comprando Software como Servio (SaaS) - pgina 55

res so configurados? Nada disso interessa ao usurio, que no precisa pensar


em comprar equipamentos, instalar softwares, configurar servidores e redes;
tudo isso responsabilidade do fornecedor.

Um bom exemplo de Software como Servio o produto Google Apps, que


oferece ferramentas como o Gmail, Agenda, editor de textos, planilha eletrnica
e software para elaborao de apresentaes, entre outros. Os usurios acessam
as aplicaes atravs de um navegador, de qualquer lugar e em qualquer dispo-
sitivo (computador, tablet, celular). Esses softwares podem ser usados gratuita-
mente por usurios que tenham uma conta Google, porm tambm possvel
fazer uso corporativo atravs do Google Apps for Work. Os aplicativos podem
ser personalizados para a empresa e o pagamento por usurio pode ser mensal
ou anual.

Outro exemplo interessante de Software como Servio o SalesForce, um sis-


tema de gesto do relacionamento com clientes (CRM Customer Relationship
Management) que roda inteiramente na nuvem. Dessa forma, a empresa que o
utiliza pode reduzir investimentos, pois s paga um aluguel para usar o softwa-
re, em vez de compr-lo. A cobrana feita por usurio/ms, faturado anual-
mente, e existem vrias opes de planos.

De forma geral, a compra de Software como Servio um processo simples e


uma vez realizada a assinatura, normalmente online, a aplicao j fica dispon-
vel para o uso. Alguns softwares permitem fazer configuraes que personalizam
a aplicao para a empresa e at para grupos de usurios, porm no possvel
fazer customizaes no sistema para adapt-lo a necessidades muito especficas.

rodrigosatori@yahoo.com.br
Comprando Plataforma como Servio (PaaS) - pgina 56

Comprando Plataforma
como Servio (PaaS)

U
ma Plataforma como Servio oferece um ambiente de desenvolvimento
de software. Isso interessa diretamente queles que vo desenvolver no-
vas aplicaes para rodar na nuvem. Ao usar uma plataforma desse tipo,
os desenvolvedores no precisam cuidar da administrao do sistema operacio-
nal e de outras tarefas de gesto de infraestrutura17. Alm disso, as plataformas
oferecem muitos componentes j prontos para o desenvolvimento de aplica-
es. O modelo de PaaS tambm facilita muito o desenvolvimento de aplicaes
escalveis e elsticas, uma vez que normalmente impe aos programas a serem
construdos uma arquitetura que garante esses atributos sem exigir do desenvol-
vedor um conhecimento detalhado dos mecanismos que a suportam18.

17 Developing Software Online with Platform-as-a-Service Technology., de George Law-


ton.

18 Above the Clouds: A Berkeley View of Cloud Computing, de Armbrust et al.

rodrigosatori@yahoo.com.br
Comprando Plataforma como Servio (PaaS) - pgina 57

Alguns fornecedores de PaaS oferecem servios especializados, focalizados em


determinado tipo de desenvolvedor. Por exemplo, h fornecedores especializa-
dos em desenvolvimento de aplicaes em linguagem Java. Outros tm como
alvo os desenvolvedores que usam mltiplas linguagens, e oferecem suporte
para PHP, Ruby, Python e outras ferramentas populares para desenvolvimento
de aplicaes web. H tambm provedores de PaaS especializados na oferta de
servios voltados para o desenvolvimento de aplicaes destinadas a interagir
com dispositivos mveis.

Para nortear a escolha da plataforma a ser utilizada, importante avaliar alguns


elementos:

Linguagens de programao A definio da linguagem que ser usada no de-


senvolvimento das aplicaes fundamental, pois isso determina o modelo de
programao que ser usado e as ferramentas e componentes que devem estar
disponveis no ambiente.

Tecnologia usada no servidor Por exemplo, se voc pretende usar uma arqui-
tetura baseada no ambiente .NET da Microsoft, faz sentido usar uma platafor-
ma centrada nessa tecnologia. Por outro lado, se o projeto vai usar mltiplas
linguagens e diferentes tecnologias do lado do servidor, o mais indicado usar
um PaaS que contemple esse cenrio.

Armazenamento de dados importante dimensionar as necessidades de


armazenamento e disponibilidade de dados da aplicao antes de escolher o
fornecedor de PaaS. Se a aplicao exigir baixa latncia, deve-se considerar uma
soluo com capacidade de prover grande nmero de operaes por segundo.
Por outro lado, se o fundamental para o tratamento de dados for a escalabilida-
de, ento a escolha adequada pode ser um provedor que oferea uma platafor-
ma que suporte bancos de dados NoSQL19.

Integrao e suporte para ferramentas e aplicaes interessante que a pla-


taforma oferea suporte e integrao para ferramentas de desenvolvimento, tais
como Visual Studio e Eclipse, alm de ferramentas de gerenciamento de cdigo,
como Github. Alm disso, importante considerar como ser a integrao entre
a aplicao que ser desenvolvida na plataforma e outras aplicaes. Os dados

19 Convencionou-se chamar de NoSQL os bancos de dados que no usam a linguagem de


consulta SQL e no utilizam esquemas de dados, isto , que no exigem a pr-definio do formato
das tabelas de armazenamento, flexibilizando o tipo de informaes que podem armazenar (dados
semiestruturados e desestruturados). Normalmente, oferecem alto desempenho atingido atravs
de grande paralelismo de operaes, e so capazes de armazenar e processar grandes volumes de
dados.

rodrigosatori@yahoo.com.br
Comprando Plataforma como Servio (PaaS) - pgina 58

podem ser compartilhados com outras aplicaes, ou ser necessrio expor-


t-los? possvel replicar os dados em outra base de dados automaticamente?
Eventualmente ser preciso lidar com algumas restries em funo do PaaS
escolhido.

Custo e oramento Naturalmente, fundamental estimar o custo de executar


as aplicaes em um PaaS. Um servio de PaaS provavelmente ser mais caro do
que um servio de IaaS que oferea uma capacidade de processamento equi-
valente. Deve-se avaliar se vale a pena gastar mais para no ter que fazer esse
gerenciamento da infraestrutura, lembrando que a atividade de gerenciamento
em si tambm acarreta em custos. Alguns ambientes de PaaS oferecem ferramen-
tas de avaliao da eficincia da configurao de recursos para as aplicaes, o
que pode ser um instrumento importante para otimizar os custos.

Em seguida so apresentadas as principais caractersticas das plataformas de


desenvolvimento oferecidas pelo Google e pela Microsoft. Embora nos concen-
tremos nesses dois fornecedores, existem inmeras plataformas no mercado.
Algumas das mais populares so:

>> AppFog

>> Caspio

>> Engine Yard

>> Heroku

>> Red Hat OpenShift

>> Jelastic

Google App Engine

O Google App Engine uma plataforma que permite construir e executar


aplicativos utilizando a infraestrutura do Google. Para desenvolver aplicaes
no Google App Engine, o desenvolvedor utiliza o Kit de Desenvolvimento de
Software (SDK Software Development Kit) para as linguagens de programao

rodrigosatori@yahoo.com.br
Comprando Plataforma como Servio (PaaS) - pgina 59

Java, Phyton, PHP e Go20, e pode acessar os recursos da plataforma atravs de


interfaces de programao (API)21 e bibliotecas22.

Diversos servios podem ser acessados pelo desenvolvedor atravs de uma inter-
face web, a Admin Console, que permite gerenciar os aplicativos e ter acesso a
detalhes sobre instncias em execuo, arquivos de log23, atividades agendadas
(Cron Jobs)24, filas de tarefas, etc. J a parte de infraestrutura fica por conta do
Google, que tambm proporciona alocao automtica de recursos e balancea-
mento de carga.

Uma aplicao desenvolvida no Google App Engine roda em uma sandbox, que
um ambiente isolado especfico para cada aplicao. As aplicaes no po-
dem gravar dados no sistema de arquivos local, mas podem ser acessadas outras
mquinas na internet para a gravao de arquivos desestruturados (de texto, por
exemplo), atravs de funes de API oferecidas pela plataforma.

A aplicao pode ser executada de trs formas: a partir de um pedido da web,


de um evento na fila de tarefas ou de uma tarefa agendada. Dessa forma, as
aplicaes desenvolvidas para esse ambiente seguem um paradigma tpico da
Web, sendo estruturadas em torno de servios implementados de maneira tran-
sacional, conforme preconiza a Arquitetura Orientada a Servios (SOA Sof-
tware Oriented Architecture). Quando executada, cada transao deve retornar
um resultado em at 60 segundos. Esse limite visa estimular o processamento

20 Go uma linguagem de programao de cdigo aberto (open source) desenvolvida


originalmente pelo Google.

21 Application Programming Interface: Conjunto de rotinas e convenes atravs das quais


um software oferece sua funcionalidade para utilizao por outros programas. Por exemplo, uma
aplicao pode ativar a funcionalidade de traduo entre idiomas do Google Translate atravs da API
oferecida por ele.

22 Uma biblioteca um conjunto de funcionalidades prontas que podem ser adicionadas a


uma aplicao. Por exemplo, uma biblioteca de funes matemticas podem oferecer diversas roti-
nas de clculo que podem ser integradas a uma aplicao, gerando reaproveitamento de funcionali-
dade e, portanto, diminuindo o esforo necessrio para construir essa aplicao.

23 Arquivos de log so usados para registrar eventos ocorridos com um software. So teis
para entender o comportamento do software para deteco de falhas e otimizao de desempenho,
bem como para registrar informaes de auditoria.

24 Cron Jobs so tarefas que rodam no ambiente do Google App Engine que podem ser
agendadas para rodar em um horrio especfico ou periodicamente em intervalos regulares.

rodrigosatori@yahoo.com.br
Comprando Plataforma como Servio (PaaS) - pgina 60

modular em pequenas unidades, ou seja, sua aplicao pode ser projetada


para quebrar o conjunto de dados em subunidades que possam ser processadas
dentro do limite estabelecido. Esse tipo de processamento tira maior proveito
da infraestrutura distribuda do Google. Por outro lado, se sua aplicao precisa
processar grandes conjuntos de dados a partir de uma nica requisio, pode ser
que o Google App Engine no seja uma opo adequada, e que seja necessrio
recorrer a uma soluo de IaaS, como o Google Compute Engine.

O modelo de arquitetura imposto pelo Google App Engine fora que as apli-
caes sejam estruturadas com uma clara separao entre duas camadas, a de
tratamento das requisies e a que lida com o armazenamento de dados. A
primeira camada dever necessariamente trabalhar sem salvar um estado interno
entre as diferentes requisies, e a segunda camada manter seus estados conti-
nuamente25.

O Cloud Datastore um banco de dados NoSQL que oferece o armazenamento


de dados semiestruturados e no estruturados e que no utiliza um esquema de
dados. Permite o tratamento de grandes volumes de dados e gerencia o acesso
aos dados inclusive em casos em que existam diversas instncias trabalhando
em paralelo. Oferece alta disponibilidade e transaes atmicas.

Tambm possvel usar o Cloud SQL, que um gerenciador de bancos de da-


dos relacionais com os recursos e as funcionalidades do MySQL, com algumas
caractersticas a mais e algumas restries. ideal para aplicaes de pequeno e
mdio porte, mas tambm pode ser usado para aplicaes de grande porte se for
devidamente otimizado.

A cobrana dos servios do Google App Engine feita com base no uso. Cada
aplicativo tem uma cota diria gratuita para instncias, espao de armaze-
namento e trfego de entrada e sada. Quando a aplicao ultrapassa a cota
gratuita diria, feita a cobrana apenas pelo uso suplementar, at o montante
mximo dirio que for especificado.

Como no caso da maioria das plataformas oferecidas como servios (PaaS), o


Google App Engine uma boa opo para os desenvolvedores que querem se
concentrar essencialmente no desenvolvimento de aplicaes e gastar o mnimo
de tempo com a administrao do sistema. O grande conjunto de funcionalida-
des disponveis tambm acelera o desenvolvimento da aplicao, e o ambiente
de desenvolvimento facilita a criao de aplicaes escalveis e elsticas para

25 Above the Clouds: A Berkeley View of Cloud Computing, de Armbrust et al.

rodrigosatori@yahoo.com.br
Comprando Plataforma como Servio (PaaS) - pgina 61

tratar grandes volumes de dados e um grande nmero de usurios simultneos.

Microsoft Azure Cloud Services

A
plataforma Microsoft Azure Cloud Services oferece um ambiente para
execuo de aplicaes com base num modelo de programao bem
definido, que visa proporcionar escalabilidade e alto grau de disponibili-
dade para as aplicaes que rodam nela.

Embora suporte vrias linguagens de programao populares como Java, Py-


thon, PHP, Ruby, JavaScript (atravs da plataforma node.js) e as linguagens do
ambiente .NET (como C#), a plataforma mais familiar para os desenvolvedores
acostumados ao modelo de desenvolvimento de aplicaes e s bibliotecas
da Microsoft. A empresa oferece um kit de desenvolvimento de software (SDK)
especfico para cada linguagem suportada, e a ferramenta de desenvolvimento
Visual Studio tambm pode ser utilizada, inclusive com uma verso online.

Tipicamente, uma aplicao Azure Cloud Services deve ser estruturada em torno
de dois papis fundamentais: web role e worker role. So criadas mquinas
virtuais distintas para cada papel, e a ideia combinar mltiplas instncias de
cada uma para criar aplicaes multicamada. Instncias web role implementam
o cdigo responsvel pelo tratamento de requisies vindas da web, como re-
quisies de usurios, e normalmente as encaminha para instncias worker role.
Tambm comum utilizar instncias web role para implementar Web Services,
que so servios oferecidos para outras aplicaes atravs da internet. Instncias
worker role rodam tarefas assncronas que no dependem de interao com o
usurio e que normalmente implementam as regras de negcio e o tratamento
de dados da aplicao. A comunicao entre os dois tipos de instncias reali-
zada atravs de filas de mensagens.

O modelo de programao do Azure Cloud Services garante que a aplicao


possa suportar altas cargas de trabalho, permitindo aumentar ou diminuir auto-
maticamente o nmero de instncias de cada tipo de acordo com a demanda.
Se alguma instncia falhar, ser automaticamente reinicializada, o que garante
que a aplicao seja rapidamente recuperada. Por outro lado, o modelo im-
pem algumas restries para garantir a escalabilidade e tolerncia a falhas. Por
exemplo, a aplicao no deve armazenar informaes no sistema de arquivos
de sua mquina virtual, porque em caso de falha ou queda da mquina virtual

rodrigosatori@yahoo.com.br
Comprando Plataforma como Servio (PaaS) - pgina 62

tais informaes sero perdidas.

possvel flexibilizar a rigidez desse modelo de programao. Uma aplicao


pode ser constituda, por exemplo, apenas de instncias de um determinado tipo
(web role ou worker role). Alm disso, as aplicaes podem interagir com outras
que rodam fora do ambiente controlado pelo Azure Cloud Services, utilizando
o servio de barramento (Azure Service Bus) ou de filas de mensagens simples
(objetos Queue do Azure Storage).

Para o armazenamento de dados atravs de recursos gerenciados pela prpria


plataforma, existem quatro opes: SQL Database, Table Storage, DocumentDB
e blobs.

O SQL Database oferece a maioria dos recursos do consagrado gerenciador de


bancos de dados relacionais Microsoft SQL Server, mas sem a sobrecarga de
administrao dos bancos de dados. O SQL Database tambm suporta grande
parte das construes da linguagem de definio e manipulao de dados Tran-
sact-SQL, que j bem conhecida pelos desenvolvedores acostumados com o
Microsoft SQL Server.

O Table Storage um banco de dados NoSQL do tipo chave-valor. Diferente-


mente de um banco de dados relacional, bancos de dados NoSQL tpicos no
controlam nem restringem os tipos de dados que podem ser armazenados nele
e nem layout das tabelas de armazenamento, isto , no utilizam esquemas de
dados. Bancos de dados do tipo chave-valor permitem o armazenamento de
dados em qualquer formato, e atribuem um cdigo (chave) a cada conjunto de
dados gravado, permitindo depois a recuperao atravs desse cdigo. A vanta-
gem desse modelo a flexibilidade que oferece, alm da grande escalabilidade
no acesso ou gravao dos dados. Alm disso, o custo de armazenamento no
Table Storage menor do que no SQL Database. O Table Storage um dos tipos
especficos de objetos manipulados pelo servio de armazenamento de objetos
Azure Storage, e possui os mesmos atributos de redundncia, durabilidade e
baixo custo oferecidos pelo servio.

O DocumentDB um banco de dados NoSQL orientado a documentos que


oferece escalabilidade, alta disponibilidade e excelente desempenho para
tratamento de grandes volumes de dados. A principal diferena em relao ao
Table Storage que, em vez de manipular apenas registros do tipo chave-valor,
o DocumentDB armazena dados semiestruturados (em formato JSON26, familiar

26 JSON o acrnimo de JavaScript Object Notation, que um formato simples para descri-
o e intercmbio de dados.

rodrigosatori@yahoo.com.br
Comprando Plataforma como Servio (PaaS) - pgina 63

para quem desenvolve sites e interfaces de usurio utilizando a linguagem JavaS-


cript). Cada elemento armazenado nas tabelas do banco de dados identificado
por um nome de propriedade. Cada valor armazenado na tabela identificado
por um nome de propriedade. O nome de propriedade pode ser usado poste-
riormente para especificar critrios de seleo sobre os dados. Uma coleo de
propriedades e seus valores formam uma entidade. Pelo fato de tambm no
utilizar esquemas de dados, o DocumentDB permite que duas entidades que
contenham diferentes colees de propriedades sejam armazenadas na mesma
tabela.

O DocumentDB oferece recursos familiares para os desenvolvedores habitua-


dos aos bancos de dados relacionais tais como funes definidas pelo usurio
(escritas usando a linguagem JavaScript), suporte a transaes, gatilhos27, stored
procedures28 e realizao de consultas complexas utilizando um dialeto da
linguagem SQL29.

Blobs, ou binary large objects, so objetos de armazenamento no estrutura-


dos destinados a armazenar dados binrios arbitrrios tais como documentos,
imagens e vdeos. Assim como o Table Storage, o armazenamento de blobs
tambm proporcionado pelo servio Azure Storage, que oferece redundncia
e durabilidade garantida das informaes gravadas.

Finalmente, importante observar que o modelo de programao do Azure


Cloud Services tambm suportado pelo sistema operacional Windows Server
tradicional que roda localmente em data centers ou nuvens privadas. Isso per-
mite que uma aplicao seja desenvolvida para rodar localmente dentro de uma
organizao e, mais tarde, seja levada para a nuvem sem precisar de nenhuma
alterao. Essa caracterstica faz parte da estratgia da Microsoft de apostar em
nuvens hbridas, com as aplicaes podendo rodar em nuvens privadas ou em

27 Gatilho ou trigger um recurso para programao de bancos de dados que permite a


execuo de um trecho de cdigo sempre que ocorre um determinado evento. So comumente utili-
zados para realizar verificaes de consistncia sempre que uma informao gravada no banco de
dados, ou para propagar para outras tabelas de armazenamento uma alterao realizada sobre uma
determinada tabela.

28 Stored procedures ou Procedimentos armazenados so rotinas escritas em linguagem SQL


e disponveis para aplicaes que acessam bancos de dados relacionais. Seu nome advm do fato de
essas rotinas ficarem armazenadas diretamente no banco dados.

29 Structured Query Language (Linguagem de Consulta Estruturada) ou simplesmente SQL


uma linguagem padro para definir e manipular dados tipicamente utilizada por gerenciadores de
bancos de dados relacionais.

rodrigosatori@yahoo.com.br
Comprando Plataforma como Servio (PaaS) - pgina 64

sua nuvem pblica de maneira indistinta e at colaborativa.

Os preos do Azure Cloud Services so baseados no tamanho das instncias em


execuo, e tambm pode variar de acordo com a largura de banda e volume
de dados trafegados e o tamanho dos bancos de dados.

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 65

Comprando
Infraestrutura como
Servio (IaaS)

A
Computao em Nuvem baseia-se na alocao e desalocao de recur-
sos de acordo com a demanda. No caso da Infraestrutura como Servio,
alocam-se principalmente recursos para processamento e armazena-
mento de dados. preciso definir o tipo e o tamanho de cada mquina virtual,
qual a sua capacidade de processamento, e como ser feito o armazenamento
de dados. Para tirar proveito de uma Infraestrutura como Servio fundamental
uma boa integrao entre esses diferentes tipos de recursos.

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 66

Os elementos que devem ser considerados na compra de infraestrutura na nu-


vem so os seguintes:

>> Configurao de servidores

>> Armazenamento de dados

>> Outros servios:

>> Banda Internet

>> Trfego de E/S

>> Softwares

>> Controle de acesso

>> Facilidade de gerenciamento

>> Custos

Configurao de servidores

A compra de Infraestrutura como Servio tem como ponto de partida a escolha


da configurao de um servidor, que tambm chamado de instncia ou de
mquina virtual. Do que voc precisa: de uma mquina para uso geral, com
mais demanda de memria ou de uso de CPU? Os fornecedores oferecem algu-
mas opes para cada caso, que variam em tamanho e custo.

A escolha da regio geogrfica onde o servidor ser criado faz toda diferena
no tempo de latncia, que impacta diretamente no desempenho de uso. Quanto
mais distante dos usurios for a regio, mais demorado ser o tempo de res-
posta. Ento, se a aplicao tiver muita interao, o melhor que os servidores
sejam criados numa regio mais prxima dos usurios; caso os usurios estejam
distribudos geograficamente, podem-se criar instncias em mais de uma regio.
Se a aplicao for apenas de processamento, sem interao, pode ser interessan-
te escolher uma regio onde os preos sejam mais baixos, mesmo que seja mais

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 67

distante. Entretanto, para uma avaliao precisa dos custos envolvidos, conside-
re a legislao e a incidncia de impostos que so aplicveis a cada regio.

Armazenamento de dados

preciso definir tambm quanto voc vai precisar de espao em disco. impor-
tante observar que, normalmente, cada instncia possui um disco temporrio as-
sociado a ela, que pode ser usado durante o processamento dos dados, mas que
no ser mantido quando a instncia for liberada a ativao e desativao de
instncias so operaes muito comuns na nuvem. Portanto, os discos tempor-
rios no podem ser usados para armazenar dados que devem permanecer aps
o processamento. A opo mais comum utilizar um disco persistente, que
ser usado em conjunto com uma instncia, e que ser preservado ainda que a
instncia seja desativada. Essa opo muito semelhante ao modelo de compu-
tao tradicional , em que um servidor fsico possui um disco que usado para
armazenar os dados processados.

Alm dos discos persistentes, que podem ser usados da maneira tradicional, os
fornecedores de servios de Computao em Nuvem normalmente oferecem
uma opo de armazenamento bem mais barata, que tem menor desempenho
em termos de velocidade de acesso, mas que pode ser usada como um reposit-
rio para qualquer tipo de dados, que o servio de armazenamento de objetos.
Essa opo, combinada com o uso de discos persistentes, permite uma maior
flexibilidade na estratgia de armazenamento de dados utilizada. O mais co-
mum manter os dados e arquivos de processamento mais frequente nos discos
persistentes, e guardar no servio de armazenamento de objetos informaes
que no se alteram ou que tm baixa frequncia de atualizao tais como dados
histricos, imagens, vdeos, arquivos de udio e cpias de segurana (backups).
Os servios de armazenamento de objetos costumam oferecer um alto grau de
redundncia, o que amplia a durabilidade e disponibilidade das informaes
salvas nele e o credencia como a soluo ideal para dados histricos ou estti-
cos.

Banda Internet

Normalmente os fornecedores no cobram o trfego de entrada, isto , o volume

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 68

de informaes que so enviadas para a nuvem, mas cobram o trfego de sada.


Determinados tipos de sistemas podem se beneficiar dessa poltica de cobrana.
Por exemplo, sistemas que processam muitas informaes mas geram resultados
pouco volumosos, como o caso de sistemas analticos (Business Intelligence),
que produzem relatrios sintticos ou calculam ndices a partir de grandes volu-
mes de dados.

Uma decorrncia importante desse modelo de cobrana que, quando um


sistema hospedado em duas regies diferentes para redundncia, a eventual
troca de dados entre eles para sincronizao de bases de dados ou tarefas de
controle ser contabilizada e taxada nos mesmos moldes do trfego da sada
normal, uma vez que a internet ser usada como meio para transporte das infor-
maes.

Trfego de E/S

O trfego de dados entre as mquinas virtuais e os discos persistentes tambm


so cobrados. Isso significa que, mesmo que um site ou sistema envie poucos
dados para o usurio (use pouca banda Internet), importante considerar o
volume de operaes de entrada e sada dos sistemas a serem implantados na
nuvem, isto , o nmero de gravaes e leituras no disco que ele realiza.

Softwares e imagens binrias

Quando uma instncia criada, preciso especificar o sistema operacional que


ser usado. Os fornecedores oferecem instncias j padronizadas e que vm
com algumas opes de configurao. Por exemplo, s sistema operacional ou
sistema operacional mais banco de dados. Entretanto, pode ser que voc precise
de instncias customizadas, diferentes daquelas oferecidas pelos fornecedores.
Nesse caso, voc pode criar suas prprias imagens binrias, instalando todos os
softwares de que voc precisa. Quando criada uma nova instncia, voc pode
especificar qual a imagem binria desejada.

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 69

Controle de acesso

preciso considerar tambm o controle de acesso sua estrutura de Computa-


o em Nuvem. Avalie o grau de dificuldade de incorporar ou integrar nuvem
o sistema de identificao de usurios que j usado pela sua empresa. Alguns
fornecedores j oferecem integrao com produtos de mercado. Considere tam-
bm os recursos que o fornecedor oferece para o controle de acesso, tais como
restrio de endereo IP ou o uso de autenticao de dois fatores.

Facilidade de gerenciamento

Ao usar uma infraestrutura como servio, muitas tarefas de gerenciamento dos


recursos ficam sob sua responsabilidade. Avalie a facilidade de uso das ferra-
mentas de administrao oferecidas pelo provedor e o quanto essas ferramentas
permitem que voc acompanhe o desempenho do seu ambiente na nuvem.

Custos

O custo da infraestrutura varia de acordo com a forma planejada de uso, isto ,


se as instncias sero criadas sob demanda, se sero instncias reservadas ou se
tero uso continuado. Na seo Tipos de Instncias apresentamos aquelas que
so oferecidas por alguns fornecedores.

Na avaliao dos custos, um aspecto que tambm deve ser considerado o li-
cenciamento de software. Ao criar um servidor, o sistema operacional escolhido
faz diferena no preo. Para exemplificar, usamos a calculadora NubExpress30
para estimar o custo de servidores da AWS com a mesma configurao, alteran-
do apenas o sistema operacional, mostrando a diferena no preo final advinda
do licenciamento do software31:

30 A calculadora NubeXpress oferece uma forma simplificada de estimar o custo de servido-


res rodando na AWS, sendo uma alternativa complexa calculadora da prpria AWS.

31 Preos de maro de 2014.

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 70

A cotao exemplificada de um servidor tamanho 2XL, com disco de 30Gb, 8


ncleos, 26 ECU32 e 30Gb de RAM:

>> Servidor com sistema operacional Linux: US$ 0,76 / hora

>> Servidor com sistema operacional Windows Server: US$ 1,26 / hora

Alm do sistema operacional, pode ser necessrio licenciar um software de ge-

32 ECU o acrnimo de EC2 Compute Unit, ou unidade computacional EC2 em traduo


livre. Esta unidade foi criada para permitir a comparao do poder de processamento dos diversos
tipos de servidores na AWS. Cada ECU equivalente capacidade de processamento de 1.0-1.2
GHz do processador Opteron 2007 ou Xeon 2007.

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 71

renciamento de bancos de dados (Microsoft SQL Server, Oracle, etc.). Em alguns


casos o cliente pode aproveitar as licenas de software que j possui, em outros
no pode. preciso consultar o provedor de servios na nuvem e o contrato de
licenciamento do software para averiguar essa possibilidade.

Portanto, importante que fique claro que, quando falamos em compra de Infra-
estrutura como Servio, no estamos tratando apenas de hardware, mas tambm
de software. Alm disso, preciso considerar a incidncia de impostos sobre
servios de processamento de dados e licenas de software.

A comparao entre fornecedores de Infraestrutura como Servio no simples.


Embora os servios sejam muito parecidos, as configuraes oferecidas podem
ser muito diferentes. Tambm preciso saber qual o nome que cada fornecedor
atribui para o mesmo tipo de servio..

A seguir, apresentamos os principais servios oferecidos por trs dos maiores


fornecedores de IaaS: Amazon, Google e Microsoft.

Amazon Web Services (AWS)

Servidores

Com o Amazon EC2 (Elastic Compute Cloud) possvel criar instncias de m-


quinas virtuais com os sistemas operacionais Windows Server, Linux ou Free-
BSD, com a possibilidade de aumentar ou diminuir o nmero de instncias de
acordo com a demanda. A configurao dos servidores varia de acordo com a
necessidade: instncias de uso geral, instncias com demanda de mais CPU ou
instncias com uso de mais memria.

A AWS oferece ainda o servio Amazon CloudWatch, que monitora os recursos


e emite relatrios detalhados sobre o a utilizao da nuvem. Atravs do Clou-
dWatch possvel ativar o recurso de Auto Scaling, que usa regras pr-definidas
para criar novas instncias automaticamente em momentos de pico e remover as
instncias quando a demanda diminui.

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 72

Outro servio bastante utilizado em combinao com o recurso de Auto Scaling


o Elastic Load Balancing, que permite distribuir a carga de trabalho entre v-
rias instncias, de forma a proporcionar um desempenho uniforme das aplica-
es medida que a demanda aumenta ou diminui ou mesmo que alguma das
instncias falhe.

Claro, para que esse mecanismo de esticar e encolher funcione, a aplicao


ou site que roda nesse ambiente deve estar preparada para suportar o aumento e
diminuio automticos do nmero de instncias e da distribuio da carga de
trabalho.

Armazenamento de dados

Estes so alguns dos servios para armazenamento de dados oferecidos pela


AWS:

Amazon EBS (Elastic Block Store)

o servio de disco persistente que pode ser usado junto com as instncias EC2.
Ou seja, como ele persistente, se voc desativar a instncia EC2, os dados
do EBS continuam l. A unidade de alocao de espao no EBS um volume.
Os volumes podem ter qualquer tamanho e o usurio pode redimension-los a
qualquer momento.

H opes de discos magnticos (mais lentos e mais baratos) e discos SSD


(Solid-State Disk), que so implementados com tecnologia de semicondutores,
sem partes mveis, portanto so muito mais velozes. H dois outros fatores que
impactam diretamente no desempenho dos volumes EBS: o limite mximo de
operaes de entrada e sada por segundo e a quantidade mxima de transfe-
rncia de dados por segundo. Por exemplo, os discos SSD suportam at 3.000
operaes de entrada e sada por segundo, enquanto que os discos magnticos
so limitados a at duzentas operaes33. Alm disso, os discos SSD permitem a
transferncia de at 160 MBytes por segundo34, enquanto os discos magnticos

33 Dados de novembro de 2014.

34 idem.

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 73

so limitados a at 90.

Para aplicaes que necessitam de altas frequncias de operaes de entrada e


sada e/ou maiores quantidades de transferncia de dados do que os oferecidos
pelos volumes EBS padro, a AWS oferece ainda uma terceira opo: volumes
IOPS, que proporcionam armazenamento com desempenho consistente e baixa
latncia, tendo sido projetados para aplicaes com uso intenso de operaes
de entrada e sada, como bancos de dados.

>> Independentemente do tipo de volume EBS utilizado, todos so repli-


cados automaticamente e de forma transparente para o usurio, para
proteo contra falhas de componentes individuais, garantindo uma
disponibilidade de 99,999%. Alm disso, os volumes podem ser encrip-
tados, garantindo que todos os dados armazenados sejam criptografados,
bem como a transferncia dos dados entre os discos e as instncias de
mquinas virtuais.

Amazon S3 (Simple Storage Service)

o servio de armazenamento de objetos da AWS. possvel salvar nele qual-


quer tipo de arquivo. No preciso pr-alocar espao de armazenamento nele,
e s se paga pelo que efetivamente utilizado, no exigindo taxa mnima de
utilizao nem custo de configurao.

Sua principal caracterstica a altssima taxa de durabilidade dos objetos ali


armazenados. A AWS garante durabilidade de 99,999999999%, alm de uma
disponibilidade de 99,99% dos objetos ao longo do ano. A garantia de durabili-
dade e disponibilidade suportada pela redundncia automtica dos dados em
vrios dispositivos e diferentes zonas de disponibilidade e regies.

O acesso aos dados armazenados no S3 bem mais lento do que o acesso aos
volumes EBS, e deve ser usado como um repositrio de arquivos e objetos. Para
fins de comparao, enquanto o acesso a volumes EBS equivale ao de discos
locais, na casa de milissegundos, o acesso ao S3 a partir de uma mquina virtual
leva alguns segundos.

>> Os dados armazenados no S3 podem ser automaticamente criptografa-


dos, garantindo segurana s informaes. Como o servio S3 acessvel
pela internet atravs dos protocolos HTTP e HTTPS, ele pode ser usado
para hospedar de maneira muito barata um site web que seja constitudo

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 74

apenas por pginas estticas.

Amazon Glacier

>> um servio que fornece armazenamento seguro e durvel para ba-


ckup e arquivamento de dados, geralmente dados histricos que voc
obrigado a guardar por anos e anos e que raramente precisa recuperar. O
armazenamento tem um preo bem baixo, mas a recuperao dos dados
pode levar algumas horas. Ou seja, este servio no deve ser usado para
armazenar dados que precisam ser recuperados com rapidez e que so
usados frequentemente.

A AWS oferece ainda o AWS Storage Gateway. Trata-se de um software que


pode ser instalado na infraestrutura local do usurio e que transfere automatica-
mente para a nuvem todos os dados gravados nos discos dos servidores da rede
local. Dessa forma, os dados locais so replicados na nuvem de forma a pode-
rem ser recuperados em caso de desastre.

Bancos de dados

Amazon RDS (Relational Database Service)

Este um servio de banco de dados relacionais e atravs dele possvel utilizar


bancos de dados MySQL, Oracle, Microsoft SQL Server ou PostgreSQL.

Naturalmente, voc no precisa do RDS para usar um banco de dados rela-


cional na nuvem da AWS. Uma forma de ter este recurso seria instanciar uma
mquina virtual e instalar nela por conta prpria qualquer um desses softwares
gerenciadores de bancos de dados. A diferena que o servio RDS garante a
alocao de recursos computacionais otimizados para o melhor desempenho
de seu banco de dados, alm de realizar tarefas fundamentais de gerenciamen-
to como atualizao do software, alterao de espao para o banco de dados
e backup automtico dos dados. Em outras palavras, o servio RDS o que se
chama de DBaaS (Database as a Service ou Banco de Dados como Servio),
que libera o usurio das tarefas peridicas de gerenciamento e manuteno do
banco de dados.

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 75

O RDS oferece ainda as chamadas instncias Multi-AZ, em que o banco de


dados replicado e sincronizado automaticamente em outra zona de disponi-
bilidade. Em caso de uma parada de manuteno programada, ou no caso de
falha no programada, o banco de dados secundrio que est com os dados
atualizados em funo da replicao e sincronizao online assume automati-
camente, evitando parada no servio.

Amazon Aurora

Esta outra opo oferecida pelo RDS: um gerenciador de bancos de dados


relacionais compatvel com o MySQL, mas que oferece um desempenho muito
superior, combinado com um altssimo grau de disponibilidade. Algumas de
suas caractersticas so:

>> O servio acrescenta automaticamente mais espao de armazenamento


quando necessrio, em blocos de 10 GBytes, at o limite de 64 TBytes,
sem necessidade de interveno do usurio.

>> Para garantir menor probabilidade de interrupo dos servios, o banco


de dados replicado em trs zonas de disponibilidade diferentes, com
duas cpias dos dados em cada zona.

>> A recuperao em caso de falhas de algum dispositivo de armazenamen-


to ou de alguma instncia do banco automtica. O processo de backup
tambm se beneficia bastante dessa replicao, eliminando o aumento
de carga de trabalho e degradao de desempenho durante sua realiza-
o, pois os dados a serem copiados podem ser lidos de qualquer das
instncias.

O Amazon Aurora permite tambm que existam at 15 rplicas de leitura. Tais


rplicas compartilham os dispositivos de armazenamento com a instncia prin-
cipal, permitindo aumentar sobremaneira o volume de operaes de leitura dos
dados.

A incluso do Amazon Aurora s opes suportadas pelo servio RDS propor-


ciona, segundo afirma a Amazon, um novo gerenciador de bancos de dados que
alia a velocidade e disponibilidade dos bancos de dados comerciais de alto de-
sempenho simplicidade e baixo custo dos bancos de dados de cdigo aberto
(open source).

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 76

NoSQL

Alm do servio RDS, a AWS oferece dois outros mecanismos de banco de


dados: o SimpleDB e o DynamoDB. Ambos so bancos de dados NoSQL do
tipo chave-atributo. A proposta do SimpleDB oferecer simplicidade e flexibili-
dade em troca de limitaes de escalabilidade e desempenho. J o DynamoDB
oferece desempenho e escalabilidade, acompanhando o crescimento do volume
de dados e do nmero de operaes das aplicaes que o utilizam.

A AWS oferece tambm o Amazon Redshift, que um servio de data warehou-


se gerenciado e hospedado na nuvem. Utilizando uma arquitetura massivamen-
te paralela, o servio consegue realizar tarefas analticas sobre grandes volumes
de dados com excelente desempenho. Diversas ferramentas de Business Intelli-
gence de mercado oferecem conectores para o Amazon Redshift, como Tableau,
MicroStrategy e Jaspersoft.

Outros Servios

Alm dos recursos apresentados nas sees anteriores, a AWS oferece ainda um
grande nmero de servios adicionais que permitem a criao de uma infraes-
trutura completa de processamento na nuvem. Alguns dos servios oferecidos
pela AWS so:

>> Route53, que um sistema de nomes de domnios35 (DNS) que oferece


alto desempenho e diferentes mecanismos para balanceamento de carga.

>> CloudFront, que o servio de entrega de contedo (CDN)36 - Content


Delivery Network da AWS. Com ele, possvel espalhar o contedo de
um site pelas vrias regies da AWS pelo mundo, permitindo entregar
o contedo para o usurio a partir do ponto mais prximo a ele, o que

35 Um sistema de nomes de domnios ou DNS (Domain Name System) um servio


responsvel pela traduo de nomes de domnios internet (como exemplo.com.br) para endere-
os de rede IP (como 200.138.2.1) . Esse servio facilita o uso da internet, pois sem ele, em vez de
digitar, por exemplo, google.com.br no seu navegador, voc precisaria conhecer o endereo IP
(numrico) do servidor que desejasse acessar.

36 Content Delivery Network.

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 77

reduz o tempo de transferncia das informaes. O CloudFront suporta a


entrega de contedo esttico e dinmico e tambm de servios de strea-
ming de vdeo, entre outros recursos.

>> VPC, Virtual Private Cloud, que um servio que permite a criao de
uma seo privada e isolada na nuvem da AWS para uso particular. O
recurso de VPC permite a configurao de redes com diversas topologias
para enderear necessidades especficas. Por exemplo, com o VPC
possvel criar uma sub-rede isolada da internet, onde podem ser coloca-
dos servidores com informaes sensveis que no devem ser expostas na
rede.

>> ElastiCache, que um servio para implementar e operar um cach de


memria na nuvem. Usado para aumentar a velocidade de aplicaes,
criando uma camada intermediria de dados que reduz o acesso a ban-
cos de dados em disco, o ElastiCache oferece dois mecanismos distintos
baseados em cdigo aberto (open source): Memcached e Redis. O servi-
o implementa recursos de tolerncia a falhas, garantindo a substituio
automtica de ns que apresentem problemas de funcionamento.

>> EMR, Elastic MapReduce, que um servio para o processamento de


grandes quantidades de dados. O EMR utiliza o Hadoop, que um sof-
tware de cdigo aberto que permite distribuir os dados e process-los de
maneira paralela. Para tanto, o EMR cria um grupo de instncias de m-
quinas virtuais que pode ser redimensionado dinamicamente em funo
da necessidade de processamento.

>> SES, Simple Email Service, que um servio de baixo custo de envio de
e-mails em grande quantidade, tipicamente para mensagens de marke-
ting ou qualquer outro tipo de contedo.

>> Elastic Transcoder, que um servio de transcodificao de mdia na


nuvem. Tipicamente usado para, a partir de um vdeo em formato digital,
gerar vrias alternativas de resoluo e formato, normalmente necessrias
para atender aos diversos tipos de dispositivos pelos quais os usurios
acessam vdeos na internet. Sendo uma tarefa intensiva em termos de
processamento, a tarefa de transcodificao oferecida pelo servio per-
mite o uso de recursos sob demanda e sem a necessidade de proviso de
recursos dispendiosos e pouco utilizados.

Vrios dos servios adicionais oferecidos pela AWS esto alm do que se con-

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 78

vencionou chamar de Infraestrutura como Servio (IaaS). Alguns desses servios


so, na verdade, grandes facilitadores para o desenvolvimento de novas aplica-
es na nuvem, reduzindo bastante a complexidade de construo dentro dos
conceitos de elasticidade e escalabilidade inerentes ao ambiente.

Alm dos servios apresentados, a AWS oferece dezenas de outros servios


voltados para o gerenciamento dos recursos na nuvem, alm de mecanismos es-
pecializados ou voltados para a construo de aplicaes, incluindo aplicaes
para dispositivos mveis.

Tambm h servios voltados para gesto da segurana das informaes e siste-


mas na nuvem, tais como o servio de autenticao e gerenciamento de iden-
tidade e o servio de criao e gerenciamento de chaves de criptografia, que
armazena as chaves em mdulos de hardware de segurana (HSM Hardware
Security Module). possvel tambm alocar mdulos de hardware de segurana
diretamente na nuvem.

Existem ainda diversas opes de softwares desenvolvidos por outras empresas


para rodar na nuvem da AWS que esto catalogados no AWS Marketplace. Esses
softwares esto disponveis como imagens AMI (Amazon Machine Image), que
so imagens binrias pr-configuradas de instncias de mquinas virtuais com
o software j instalado. Ao comprar o software feita uma cpia da AMI para a
sua mquina virtual no EC2 automaticamente, com o software j pronto para ser
usado.

A AWS oferece tambm recursos especficos para aplicaes que exigem com-
putao de alta performance (HPC High Performance Computing), voltados
para a resoluo de problemas cientficos e de engenharia, tais como redes de
baixa latncia completamente compartimentadas, agrupamentos de unidades
de processamento grfico (GPU Graphic Processing Unit) para construo e
tratamento de imagens, alm de instncias especficas de alta capacidade de
processamento ou alta capacidade para realizar tarefas de entrada e sada.

Para uma lista completa dos servios oferecidos pela AWS, visite o catlogo de
produtos da empresa.

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 79

Google Compute Engine

Servidores

Google Compute Engine o componente da plataforma de nuvem do Google


que permite criar servidores virtuais rodando os sistemas operacionais Windows
Server, Linux ou FreeBSD. O ambiente implementado na mesma infraestru-
tura global utilizada pelo Google para rodar seu mecanismo de busca e outros
servios da empresa, como Gmail e YouTube. Assim como os outros fornecedo-
res, tambm existem vrias configuraes de mquinas, que podem ser para uso
geral, com mais demanda de memria ou alta utilizao de CPU, desde micro
mquinas virtuais at grandes instncias.

O Google Compute Engine oferece um servio de balanceamento de carga, de


forma que sua aplicao possa distribuir o trfego por mltiplas instncias de
mquinas virtuais. Tambm est disponvel o recurso Autoscaler, que permite
aumentar ou diminuir automaticamente o poder computacional utilizado em
resposta variao de demanda.

Conforme apresentado anteriormente (na seo Tipos de Instncias), um di-


ferencial interessante do Google Compute Engine em relao ao AWS EC2
que, enquanto a Amazon cobra o uso do tempo de processamento por hora, as
mquinas virtuais do Google so cobradas por minuto.

Outra caracterstica diferencial da plataforma em termos de cobrana, tambm


abordada em mais detalhes anteriormente, o conceito de desconto para uso
continuado. Diferentemente da AWS, que oferece descontos apenas para instn-
cias pr-alocadas por perodos longos de tempo (de um a trs anos) o que, em
certo sentido, contraria o esprito da Computao em Nuvem de pagar apenas
pelo uso o Google oferece descontos progressivos de maneira automtica
para mquinas virtuais que rodam por mais tempo. Isso garante que a alocao
e liberao de recursos possa acompanhar a variao de demanda por poder
computacional sem a necessidade de um planejamento prvio ou um compro-
misso de uso mnimo.

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 80

Armazenamento de dados

Discos persistentes

O Cloud Compute Engine oferece discos padro e discos SSD, que so mais ve-
lozes e mais caros. Os discos do Cloud Compute Engine podem ser conectados
e desconectados das mquinas virtuais criadas no ambiente, mantendo os dados
de forma persistente. Como no caso da AWS, o desempenho dos discos est
associado ao nmero mximo de operaes de gravao e escrita por segundo
(IOPS Input/Output Operations Per Second) e ao volume mximo de transfe-
rncia de dados por operao.

Todos os dados gravados nos discos do Cloud Compute Engine so criptografa-


dos j na mquina virtual, garantindo a inviolabilidade dos dados j no trfego
entre o servidor e os discos.

Google Cloud Storage

Este o servio de armazenamento de objetos do Cloud Compute Engine. Alm


de permitir o armazenamento de qualquer tipo de objeto e de alocar espao
dinamicamente, s cobrando pelo espao efetivamente utilizado, o servio
oferece ainda opes de controle de verses de objetos e um mecanismo para
gerenciar o tempo de vida dos objetos armazenados. Por exemplo, possvel
estabelecer um tempo mximo de vida para um objeto, e o servio automatica-
mente remove aquele objeto depois de vencido seu tempo de vida. Tambm
possvel controlar automaticamente o nmero mximo de diferentes verses dos
objetos armazenadas.

O Google Cloud Storage criptografa automaticamente os dados a serem armaze-


nados, e essa criptografia feita j no servidor, de forma que todos os dados que
transitam entre as mquinas virtuais e o servio de armazenamento de objetos
so criptografados.

O servio Google Cloud Storage oferece ainda uma opo mais barata de arma-
zenamento de objetos, com a mesma garantia de segurana e durabilidade dos
dados, mas com tempo de recuperao mais lento do que na opo padro.

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 81

Bancos de dados

O Google oferece dois servios de bancos de dados que podem ser usados tanto
por aplicaes tradicionais rodando no Google Compute Engine (IaaS) quanto
por aplicaes desenvolvidas para o Google Application Engine (PaaS do Goo-
gle):

Cloud SQL

um gerenciador de bancos de dados relacionais com recursos e funciona-


lidades do MySQL, com algumas caractersticas a mais e algumas restries.
No requer instalao de software nem manuteno, e o servio realiza cpias
de backup autom aticamente. Oferece ainda mecanismos de redundncia no
armazenamento dos dados, garantindo um alto grau de tolerncia a falhas. Alm
disso, o servio realiza a alocao automtica de espao de armazenamento de
acordo com a demanda, e apenas o espao em disco efetivamente utilizado
cobrado. Esta soluo endereada para aplicaes de pequeno a mdio porte,
uma vez que existem restries no tamanho mximo para as bases de dados
armazenadas (250 GBytes)37.

Cloud Datastore

Oferece armazenamento de dados semiestruturados ou no estruturados (NoS-


QL, embora o Google afirme que ele um gerenciador de bancos de dados
NoSQL-like) e gerencia o acesso aos dados, inclusive em casos em que exis-
tam diversas instncias trabalhando em paralelo. A grande vantagem deste servi-
o a escalabilidade, podendo suportar grandes volumes de dados e mltiplos
acessos simultneos.

Na verdade, o Cloud DataStore uma abstrao construda sobre o mecanismo


de armazenamento Google BigTable38. O servio oferecido de forma gerencia-

37 Informao de novembro de 2014.

38 BigTable um mecanismo distribudo de armazenamento de dados de alto desempenho


desenvolvido pelo Google para manipular grandes volumes de dados. Embora nunca tenha sido dis-
tribudo para uso externo pela empresa, sua arquitetura e funcionamento foram detalhados em um
artigo publicado em 2006, e acredita-se que inspirou o projeto de diversos bancos de dados NoSQL,
como Cassandra e Apache HBase (que o banco de dados do Hadoop).

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 82

da, no exige dimensionamento prvio e garante redundncia, disponibilidade e


consistncia de forma automtica. Tambm oferece o recurso de gerenciamento
de transaes para garantia de integridade dos dados em operaes de gravao
complexas.

BigQuery

A plataforma de nuvem do Google oferece ainda este servio de banco de


dados analtico que permite realizar pesquisas sobre grandes volumes de dados
utilizando um dialeto da linguagem SQL. As operaes de consulta podem ser
sncronas ou assncronas e os resultados podem ser armazenados em tabelas
temporrias ou persistentes. Atualmente, diversas ferramentas analticas de
Business Intelligence do mercado, como Tableau e QlikView, possuem conec-
tores para o BigQuery, permitindo a manipulao de grandes volumes de dados
armazenados na nuvem.

Vale ainda lembrar que possvel rodar qualquer servidor de bancos de dados,
relacional ou no, na infraestrutura do Google Compute Engine. Basta instanciar
uma mquina virtual e carregar nela o software desejado. Porm, nesse caso, o
gerenciamento do banco de dados fica todo por conta do usurio.

Outros Servios

O Google Compute Engine oferece uma srie de recursos e servios adicionais


para apoiar a construo de uma infraestrutura computacional abrangente, alm
de servios especficos para a construo de aplicaes. Alguns desses servios
adicionais so:

>> VPN, que permite a construo de redes privadas virtuais entre a infra-
estrutura local do cliente e os recursos alocados na nuvem do Google
atravs de um canal seguro.

>> Prediction API, que um servio que permite integrar algoritmos de


aprendizagem de mquina rodando na nuvem do Google a aplicaes
desenvolvidas pelos usurios. Algoritmos desse tipo permitem, por
exemplo, a criao de mecanismos de recomendao de produtos para
clientes baseados em seus histricos de preferncias ou a previso de

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 83

tendncias futuras baseadas em dados histricos.

>> Translate API, que um servio que permite integrar aplicaes de-
senvolvidas pelo usurio ao Google Tradutor. Dessa forma, possvel
adicionar s funcionalidades de uma aplicao os recursos de traduo
de documentos entre os vrios idiomas suportados pelo servio.

O Google Compute Engine oferece ainda diversos softwares de terceiros prontos


para serem executados em sua plataforma, incluindo gerenciadores de bancos
de dados e ferramentas de automao e gerenciamento de configurao, alm
de mecanismos de troca de mensagens entre aplicaes.

Alm das opes de infraestrutura como servio (Google Compute Engine) e de


plataforma como servio (Google App Engine), o Google oferece um grande n-
mero de ferramentas na modalidade SaaS (Software como Servio): seu prprio
mecanismo de busca que d nome empresa, Gmail, YouTube, Google Maps,
Google Translate, Google Apps, Google Hangout e vrios outros.

bom lembrar que o Google uma empresa 100% internet, e que a Computa-
o em Nuvem sempre fez parte de sua estratgia, o que naturalmente o qualifi-
ca como um competidor forte nesse mercado agora e para o futuro.

Microsoft Azure

Servidores

O Microsoft Azure permite a criao de mquinas virtuais rodando sistemas


operacionais Windows Server ou Linux. Da mesma forma que outros forne-
cedores, o ambiente oferece vrias configuraes possveis de servidores para
cenrios de uso geral, maior demanda por capacidade de processamento ou
com maior demanda por memria.

As diferentes configuraes de instncias so oferecidas em duas categorias,


Basic e Standard. A diferena entre as duas categorias que as instncias
Basic, mais baratas, no oferecem servios de balanceamento de carga nem

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 84

de redimensionamento dinmico dos recursos computacionais (Autoscaling).


Tipicamente, as instncias do tipo Basic oferecem uma alternativa mais econ-
mica para servidores de teste, aplicaes no escalveis que rodam em apenas
um servidor e aplicaes de processamento em lote (batch).

O servio de balanceamento de carga do Microsoft Azure, o Azure Traffic


Manager, permite a distribuio do trfego entre mltiplas instncias de uma
aplicao baseada em diferentes polticas. possvel, por exemplo, rotear as
requisies vindas da internet para as instncias geograficamente mais prximas
do usurio. Tambm possvel distribuir o trfego igualmente entre os servido-
res, ou direcionar as requisies para um nico conjunto de servidores, manten-
do uma instalao de contingncia para a qual o trfego s direcionado em
caso de falha da primeira. O mecanismo de Autoscale permite o redimensiona-
mento dinmico e automtico dos recursos computacionais baseado em diver-
sos contadores de desempenho.

Conforme citado anteriormente, embora a tabela de preos do Microsoft Azure


indique os valores por hora de uso das instncias, a cobrana realizada
por minutos de uso, como no Google Compute Engine. A principal forma de
cobrana o pagamento pelo uso, sem o conceito de instncias reservadas da
AWS. Entretanto, a Microsoft oferece um modelo diferenciado de cobrana para
empresas: o Enterprise Agreement. Na verdade, trata-se do contrato de licencia-
mento de software que a empresa j mantm com seus clientes corporativos.
possvel acrescentar a esse contrato um compromisso mnimo de consumo de
servios do Microsoft Azure: a empresa paga um valor antecipado para con-
sumo ao longo do ano, e o que for excedido, ser cobrado trimestralmente ou
anualmente. Essa compra antecipada gera um desconto progressivo baseado no
volume financeiro envolvido.

Armazenamento de dados

No Microsoft Azure, sempre que uma mquina virtual instanciada ela j tem
dois discos associados a ela: o de sistema operacional e o de dados temporrios.
O disco do sistema operacional criado a partir de imagens binrias dos siste-
mas operacionais suportados. O custo do disco temporrio j est includo no
custo da mquina virtual, e o disco de sistema operacional taxado em funo
do espao utilizado.

Os discos persistentes, chamados de data disks, podem ser discos padro ou dis-

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 85

cos SSD, e tambm no caso da nuvem da Microsoft, o desempenho dos discos


estar associado tecnologia do disco e ao nmero mximo de operaes de
gravao e escrita por segundo (IOPS Input/Output Operations Per Second),
alm do volume mximo de dados que podem ser transferidos em cada opera-
o. possvel conectar vrios discos persistentes a cada mquina virtual.

Azure Storage

No Microsoft Azure, os discos persistentes so apenas um caso especial do


servio de armazenamento de objetos, chamado de Azure Storage. Essa arquite-
tura proporciona uma vantagem interessante em termos de custo para o usu-
rio: quando um disco persistente criado, necessrio definir o seu tamanho
lgico, mas apenas o espao efetivamente utilizado ser taxado, isto , apenas
o volume de dados realmente gravado no disco que ser cobrado. Portanto, se
um volume de disco persistente tem tamanho lgico de 50 Gbytes, mas apenas
10 Gbytes so usados, o valor a ser pago mensalmente ser o equivalente a 10
Gbytes.

O Azure Storage oferece alto grau de redundncia das informaes armazena-


das nele, e a cobrana feita apenas pelo volume de dados salvos, com descon-
tos progressivos medida que mais espao utilizado. Alm disso, proporciona
diferentes mecanismos de armazenamento para diferentes tipos de objetos:

>> Blob: pode armazenar qualquer tipo de texto ou dados binrios, como
documentos, imagens ou arquivos de mdia.

>> Table: para armazenar conjuntos de dados estruturados no relacionais.


Na prtica, um banco de dados NoSQL do tipo chave-valor que per-
mite armazenar grandes volumes de informaes estruturadas, mas sem
formato pr-definido, conforme citado anteriormente.

>> Queue: implementa um mecanismo simplificado de filas persistentes,


permitindo a comunicao entre componentes de aplicaes.

>> Arquivos: permite o compartilhamento de arquivos entre diferentes


mquinas virtuais, como se estivessem acessando o mesmo servidor de
arquivos em uma rede local. Oferece compatibilidade com o protocolo
SMB, permitindo que mesmo aplicaes legadas possam compartilhar
arquivos na nuvem.

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 86

Azure Backup

Este outro servio importante oferecido pela Microsoft, um software que ins-
talado na infraestrutura local do usurio e que copia automaticamente os dados
dos discos dos servidores locais para a nuvem. Os dados so encriptados antes
de serem enviados, garantindo sua inviolabilidade tanto no trnsito quanto no
armazenamento dentro da infraestrutura do Azure. H recursos integrados para
compactao dos dados e limitao da largura de banda internet utilizada para
sua transmisso. Os dados so armazenados de forma redundante, garantindo
durabilidade e acessibilidade. Depois da cpia inicial, apenas os dados altera-
dos so transferidos, garantindo um tempo mais rpido para a realizao dos
backups e minimizando o espao utilizado na nuvem.

Bancos de dados

As opes de bancos de dados gerenciados do Microsoft Azure j foram apre-


sentados na seo que fala sobre a soluo PaaS da Microsoft, Azure Cloud
Services:

>> SQL Database: oferece a grande maioria dos recursos do gerenciador de


bancos de dados relacionais Microsoft SQL Server, suportando tambm
grande parte das construes da linguagem Transact-SQL.

>> Azure Storage Table: banco de dados NoSQL do tipo chave-valor flexvel
que oferece grande escalabilidade e alto desempenho no acesso ou gra-
vao de dados.

>> DocumentDB: banco de dados NoSQL orientado a documentos que


oferece escalabilidade, alta disponibilidade e excelente desempenho
para tratamento de grandes volumes de dados. Oferece vrios recursos
no disponveis em outros gerenciadores de bancos de dados desse tipo,
como suporte a transaes, gatilhos e realizao de consultas complexas.

Alm das opes de bancos de dados gerenciados, tambm possvel rodar na


infraestrutura do Microsoft Azure qualquer sistema gerenciador de bancos de
dados comercial que rode sobre as plataformas Windows Server ou Linux. Em
particular, alguns produtos de mercado j possuem imagens binrias de mqui-
nas virtuais j configuradas para rod-los.

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 87

Um exemplo de gerenciador de bancos de dados comercial suportado pelo


Microsoft Azure o Oracle, sendo possvel tanto instalar sua prpria licena ou
alugar uma a partir de uma imagem de mquina virtual pr-configurada.

Outro exemplo o ClearDB, que oferece uma verso do MySQL com recursos
de redundncia para suportar tolerncia a falhas.

O Microsoft Azure oferece ainda um servio para anlise de dados baseada no


Apache Hadoop: o HDInsight, que permite o processamento distribudo de
grandes volumes de dados com escalabilidade e excelente desempenho. A partir
da infraestrutura elstica do Microsoft Azure possvel aumentar ou diminuir
o nmero de ns de processamento em funo do volume de dados a serem
analisados. O Hadoop capaz de processar dados semiestruturados ou deses-
truturados, permitindo capturar e manipular informaes advindas das mais dife-
rentes fontes. Para permitir uma visualizao amigvel dos dados armazenados e
processados pelo HDInsight, a Microsoft integrou ao Excel recursos para utilizar
esse servio como fonte de dados.

Outros Servios

Dentro da estratgia de Computao em Nuvem da Microsoft, vrios novos


servios vm sendo integrados ao Azure. Alguns dos principais so:

>> Rede Virtual, que o servio para criao de uma rede privada virtual
(VPN) entre a infraestrutura local do usurio e a infraestrutura do Azure.

>> CDN, que o servio de entrega de contedo do Azure, que espalha


o contedo de um site pelos vrios pontos de presena da nuvem da
Microsoft, permitindo entreg-lo a partir do ponto geogrfico mais pr-
ximo. O Azure CDN suporta a entrega de contedo esttico, streaming
de vdeo e tambm permite a interao dos usurios com as aplicaes
rodando na nuvem.

>> Servios de Mdia, que um servio para codificao, empacotamento


e distribuio de vdeos e udio em larga escala. possvel realizar o
streaming de vdeos (inclusive ao vivo) e a criao de bibliotecas para
entrega de vdeos sob demanda. Tambm possui recursos para cobrana
e proteo de direitos autorais.

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 88

>> Batch, que um servio para o agendamento de tarefas em lote em larga


escala, podendo utilizar processamento paralelo e a realizao de cargas
de trabalho que exigem grande poder computacional.

>> Websites, que um servio que facilita a disponibilizao de sites Web,


incluindo pginas estticas e contedo dinmico atravs de aplicaes
que podem ser desenvolvidas em diferentes linguagens de programao.
Tambm permite criar sites baseados em ferramentas populares para
construo de portais e gerenciamento de contedo como WordPress,
Joomla e Drupal.

>> Cache, que um servio para implementar e operar um mecanismo de


cach distribudo baseado no software de cdigo aberto (open source)
Redis. usado para aumentar a velocidade de execuo de aplicaes,
reduzindo o acesso a bancos de dados em disco.

>> Recuperao de Site, que um servio que se prope a replicar os dados


da infraestrutura local do usurio e monitor-la constantemente, sinali-
zando em caso de falhas. Alm disso, permite uma rpida retomada em
caso de desastres, orquestrando a recuperao dos servios de forma
ordenada.

Nuvens Hbridas

Um ponto importante da estratgia da Microsoft para Computao em Nuvem


a criao de nuvens hbridas baseadas em sua tecnologia. Considerando que
o sistema operacional Windows Server est presente em uma imensa base de
clientes corporativos, a empresa tem disponibilizado ferramentas para facilitar a
construo de nuvens privadas, mantendo seu tradicional modelo de negcios
baseado em venda de licenas de software, enquanto posiciona o Microsoft
Azure como uma extenso natural do poder computacional das infraestruturas
locais. Dessa forma, procura proporcionar uma transio suave para a tecnolo-
gia de nuvem atravs de uma adoo gradual pela sua base de clientes, alm
de garantir completa compatibilidade entre a infraestrutura privada e sua oferta
de nuvem pblica. uma estratgia consistente que vem sendo executada de
maneira muito competente.

Baseando-se nessa estratgia, o Microsoft Azure oferece alguns servios que


proporcionam integrao entre aplicaes que rodam na nuvem e as aplicaes
que rodam na infraestrutura privada de seus clientes, como o caso do Azure

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 89

BizTalk e o Azure Active Directory:

>> Azure Biztalk a verso do Microsoft BizTalk rodando na nuvem, e


oferece recursos de integrao entre aplicaes tais como troca de men-
sagens, converso de diferentes formatos de dados e compatibilizao
entre diferentes protocolos de comunicao.

>> Azure Active Directory permite estabelecer as mesmas identidades de


usurios e senhas para todas as aplicaes na nuvem. Alm disso, ele se
integra ao Active Directory que roda nos servidores Windows Server da
infraestrutura privada do cliente, permitindo o gerenciamento unificado
e centralizado das identidades dos usurios locais e na nuvem, o que
reduz custos e facilita o acesso aos recursos computacionais.

Outro produto da Microsoft para a integrao entre infraestruturas locais e a


nuvem pblica o Azure StorSimple. O produto uma soluo de armazena-
mento hbrida, que consiste em um hardware de SAN39 instalado na infraestrutu-
ra local e integrado nuvem. Nesse caso, os dados so armazenados localmente
e, seguindo alguma poltica configurvel, verses mais antigas das informaes
ou pores especficas dos dados so enviadas para nuvem, incluindo cpias de
segurana (backup). A integrao, nesse caso, fica transparente para os usurios
locais, e a distribuio das informaes entre a infraestrutura local e a nuvem
feita de maneira automtica pelo equipamento.

Seguindo sua tradio de apoiar o desenvolvimento de aplicaes para seus am-


bientes operacionais, a empresa oferece tambm servios exclusivos na nuvem
para facilitar a construo de aplicaes e incentivar a adoo da Computao
em Nuvem pelos desenvolvedores de software. Um dos servios desse segmento
oferece um engenho de anlise preditiva e aprendizado de mquina, o Azure
Machine Learning. Outro servio oferece ferramentas para desenvolvimento de
aplicativos mveis, o Azure Mobile Services.

O Microsoft Azure tambm oferece recursos para computao de alto desem-


penho (HPC High Performance Computing), tais como instncias de alto
poder de processamento, o servio Azure Batch para processamento em lote j
apresentado anteriormente, e uma opo de rede de baixa latncia e alta taxa

39 SAN - Storage Area Network, um equipamento que implementa uma rede dedicada
que funciona como um disco de rede de alto desempenho e com recursos de tolerncia a falhas,
centralizando o armazenamento de dados dos servidores em uma rede local. Normalmente, o SAN
concentra os dispositivos de armazenamento da rede, gerando a iluso de um dispositivo nico e
uniforme para os equipamentos cliente.

rodrigosatori@yahoo.com.br
Comprando Infraestrutura como Servio (IaaS) - pgina 90

de transferncia de dados. A empresa oferece ainda um pacote para a constru-


o de uma infraestrutura de computao hbrida de alto desempenho baseada
no Windows Server, de maneira a rodar localmente as tarefas que exigem alto
desempenho at o limite de sua capacidade, e complementar o poder computa-
cional de forma transparente utilizando recursos da nuvem pblica.

H ainda uma infinidade de solues especficas desenvolvidas por terceiros, e


que esto disponveis como imagens binrias de mquinas virtuais para a rpida
criao de instncias. Essas solues esto catalogadas no Azure Marketplace.

A Microsoft oferece ainda diversas opes de software como servio (SaaS),


especialmente verses de alguns de seus produtos mais consagrados. O car-
ro-chefe o Office 365, que a verso na nuvem do tradicional conjunto de
ferramentas de produtividade pessoal Microsoft Office. Outros produtos incluem
o Microsoft Exchange, que permite a criao de um servidor de correio eletr-
nico corporativo diretamente na nuvem, e o Microsoft SharePoint, que uma
ferramenta para a construo de portais colaborativos.

A oferta de Computao em Nuvem da Microsoft bastante abrangente e, con-


siderando sua estratgia e a fora de sua base instalada de produtos de software,
a empresa est posicionada para manter sua relevncia no mercado de tecnolo-
gia, mesmo com o avano do uso da nuvem representando uma mudana im-
portante em seu modelo de negcios tradicional, baseado na venda de licenas
de software.

rodrigosatori@yahoo.com.br
Disaster Recovery recuperao de dados - pgina 91

Disaster Recovery
recuperao de dados

U
ma poltica de Disaster Recovery visa manter o negcio operando mes-
mo em caso de falhas de hardware, software, problemas na rede, falha
humana, falta de energia eltrica, roubo de equipamentos, incndio,
catstrofes naturais, etc. Nos dias de hoje, em que as empresas dependem tanto
das informaes armazenadas em seus servidores de dados e em que os pro-
cessos de negcio esto baseados em tarefas automatizadas pelos sistemas de
software, necessrio garantir que as informaes e os ambientes operacionais
possam ser rapidamente restaurados em ocasies de contingncia. Normalmen-
te, a poltica de Disaster Recovery se baseia na replicao de dados e ambientes
de execuo a fim de manter o negcio operando ou restaur-lo rapidamente
nessas situaes de emergncia.

Apesar de ser uma poltica comum em grandes empresas, a manuteno de uma


estrutura de Disaster Recovery nunca esteve no radar das pequenas e mdias,
devido ao alto custo de replicar todos os ambiente operacionais envolvidos,
incluindo hardware e software. Em um ambiente de computao tradicional,
preciso duplicar completamente a infraestrutura, alm de manter tudo atualiza-
do e pronto para entrar em operao. Isso significa duplicar os custos de implan-
tao e de manuteno.

Com a popularizao dos servios de Computao em Nuvem, o cenrio mu-


dou. Manter uma estrutura paralela principal passou a ser uma opo vivel
tambm para pequenas e mdias empresas.

Na nuvem, o custo dos recursos proporcional ao uso. Ento, por exemplo,


voc pode criar na nuvem uma infraestrutura secundria que seja um espelho
da infraestrutura primria, mas em menor escala, mantida com baixo custo. Em
caso de necessidade, isto , se a infraestrutura primria falhar, voc pode ativar
a infraestrutura secundria e ampliar em poucos minutos os recursos utilizados
por ela, sob demanda, para assumir o processamento.

Naturalmente, para que o processamento na estrutura secundria possa ser


ativado quase imediatamente necessrio que seus dados estejam sincroniza-

rodrigosatori@yahoo.com.br
Disaster Recovery recuperao de dados - pgina 92

dos com os da estrutura primria. Manter os dois ambientes completamente


sincronizados pode ser custoso. Uma estratgia possvel a de realizar backups
peridicos dos dados da infraestrutura primria para a secundria.

Nesse cenrio, torna-se imperativo o planejamento e implantao de uma


poltica de backup adequada para as necessidades de continuidade do neg-
cio. Essa poltica deve estabelecer que as cpias de segurana sejam testadas
periodicamente, para garantir que os mecanismos de backup estejam funcio-
nando corretamente. Alm disso, a eficincia de uma estrutura de recuperao
de dados est ligada a dois fatores: Recovery Time Objective (RTO) e Recovery
Point Objective (RPO).

Recovery Time Objective (RTO) o perodo de tempo mximo em que cada


aplicao dever voltar a funcionar em caso de interrupo, ou seja, o perodo
mximo aceitvel de interrupo do negcio.

Recovery Point Objective (RPO) define o tempo retroativo dos dados que sero
recuperados em caso de falha. Deve-se considerar o que uma perda aceitvel
que no cause grande prejuzo operacional. Por exemplo, considere um sistema
com RPO de 4 horas, cujo ltimo backup foi feito s 10 horas. Se o incidente
ocorrer s 13 horas, tudo o que foi feito entre 10 e 13 horas ser perdido.

Ao analisar suas aplicaes e escolher quais sero migradas para a nuvem,


preciso definir o RPO para cada uma delas de forma a estabelecer uma poltica
de backup que seja adequada a essa necessidade.

O passo seguinte definir o modelo de Disaster Recovery a ser implantado,


considerando o RTO das aplicaes. O modelo de Disaster Recovery indica
quais os recursos devem ser replicados, e define o mecanismo a ser utilizado

rodrigosatori@yahoo.com.br
Disaster Recovery recuperao de dados - pgina 93

para garantir uma rpida recuperao em caso de necessidade. Apresentamos a


seguir alguns modelos possveis40.

Modelo 1: Backup na nuvem

Tambm conhecido como cold start, este o modelo mais simples de ser
implantado. O backup da estrutura primria feito na nuvem, ou seja, a nuvem
usada somente como local externo de armazenamento de dados. Em caso de
interrupo das atividades na estrutura primria, os dados so transferidos da
nuvem para a infraestrutura secundria.

40 Para uma discusso detalhada do tema, veja Disaster Recovery as a Cloud Service: Eco-
nomic Benefits & Deployment Challenges, de Wood et al.

rodrigosatori@yahoo.com.br
Disaster Recovery recuperao de dados - pgina 94

Modelo 2: Backup e
infraestrutura secundria na
nuvem

Este modelo tambm conhecido como warm start ou chama-piloto. A


ideia de chama-piloto anloga a de um aquecedor a gs. Nesse equipamento,
uma pequena chama fica sempre acesa para que o acendimento total do aque-
cedor seja feito rapidamente, quando necessrio. Neste cenrio, a infraestrutura
primria continua sob a tutela da empresa, porm tanto o backup quanto a infra-
estrutura secundria ficam na nuvem. Em caso de interrupo das atividades, a
infraestrutura secundria entra em operao, utilizando os dados armazenados
na nuvem.

rodrigosatori@yahoo.com.br
Disaster Recovery recuperao de dados - pgina 95

Na infraestrutura secundria na nuvem devem ser instalados os sistemas mais


crticos da empresa a chama-piloto , que devem ter seus dados atualizados
em uma periodicidade compatvel com seu RPO. Em caso de necessidade,
esse ncleo crtico entra rapidamente em operao, eventualmente alocando
mais recursos para que rode com um desempenho adequado. Em seguida, o
ambiente de produo ampliado para que os sistemas menos crticos tambm
comecem a ser recuperados. A alocao dos recursos, em caso de falha, pode
ser feita de forma automatizada, o que representa economia de tempo e maior
segurana no processo de recuperao do ambiente de produo.

rodrigosatori@yahoo.com.br
Disaster Recovery recuperao de dados - pgina 96

Modelo 3: Alta disponibilidade


Para aplicaes que exigem um tempo de recuperao (RTO) muito curto, o
modelo de alta disponibilidade, tambm conhecida como hot start, o mais
indicado. A infraestrutura primria pode estar num data center controlado pela
empresa ou na nuvem, e a secundria criada na nuvem. Ambas ficam em
operao, e o processamento distribudo entre as duas. Se uma delas tiver
problemas, a outra assume integralmente o processamento. A vantagem de essas
infraestruturas estarem hospedadas em um ambiente de Computao em Nuvem
que, em caso de falha de uma delas, a outra pode ter sua capacidade de pro-
duo aumentada rapidamente para atender ao incremento de trfego.

rodrigosatori@yahoo.com.br
hora de colher os benefcios da nuvem - pgina 97

hora de colher os
benefcios da nuvem

A
nuvem amplia consideravelmente as possibilidades para criao de
uma infraestrutura de backup e recuperao de dados. Tambm diminui
consideravelmente os custos de implantao de solues modernas de
processamento de dados e mecanismos de interao com seus clientes atravs
de canais digitais, tornando acessvel s pequenas e mdias empresas recursos
antes disponveis somente para grandes organizaes.

Entretanto, importante deixar claro que os conceitos bsicos para a implan-


tao de uma infraestrutura slida de TI no mudam com a adoo da nuvem:
planejamento consistente, execuo competente, testes frequentes e treinamen-
to dos usurios continuam sendo fundamentais.

O baixo entendimento sobre o funcionamento de Computao em Nuvem mui-


tas vezes leva algumas organizaes a acreditarem em poderes mgicos asso-
ciados a essa tecnologia. O simples fato de uma aplicao rodar na nuvem no
garante a ela atributos como tolerncia a falhas, replicao de dados, elastici-
dade e escalabilidade. Especialmente no caso de aplicaes que foram original-
mente desenvolvidas para rodar em infraestruturas locais estticas, necessrio
avaliar se suas arquiteturas so adequadas para a migrao para a nuvem. Em
muitos casos, pode ser necessria uma reengenharia em sua estrutura. Outro
ponto importante diz respeito aos cuidados com polticas de backup e aspectos
de segurana, da mesma forma que se faz com aplicaes locais. Na Opus
Software, em nossas consultorias e servios, frequentemente temos nos depara-
do com situaes em que a migrao para a nuvem foi feita de maneira pouco
planejada, o que acarreta em grandes riscos para o ambiente computacional das
organizaes e, consequentemente, para seus negcios.

Portanto, a Computao em Nuvem s vai gerar os benefcios que pode pro-


porcionar se sua adoo for realizada de maneira ordenada e se seus recursos
forem utilizados da maneira adequada. Caso contrrio, essa adoo poder
gerar uma falsa impresso de segurana, por puro desconhecimento. E, quando
os riscos se materializarem, os prejuzos podem ser imensos.

rodrigosatori@yahoo.com.br
hora de colher os benefcios da nuvem - pgina 98

O fato que a tecnologia de Computao em Nuvem veio para ficar e j est


transformando a forma como as empresas e organizaes de todos os portes
processam suas informaes e oferecem seus produtos e servios ao mercado.
A adoo dessa tecnologia proporciona inmeros benefcios, reduzindo custos
e viabilizando solues que eram inimaginveis antes. A questo no mais
perguntar SE uma organizao vai adotar a nuvem, mas sim QUANDO ela ir
dar esse passo inevitvel. Como toda nova tecnologia transformadora que atinge
o patamar da produtividade e viabilidade econmica, a Computao em Nuvem
abre um mundo de novas possibilidades que permite ampliar o alcance e me-
lhorar o desempenho das mais diversas atividades empresariais. hora de usar
esse imenso potencial a favor de seu negcio!

rodrigosatori@yahoo.com.br
Referncias - pgina 99

Referncias

>> Armbrust, Michael et al. Above the Clouds: A Berkeley View of Cloud
Computing (2009).

>> Chang, Fay, et al. Bigtable: A distributed storage system for structured
data.ACM Transactions on Computer Systems (TOCS)26.2 (2008): 4.

>> Daniels, Jeff. Server Virtualization Architecture and Implementation


Crossroads 16.1 (2009): 8-12.

>> Duboc, Leticia, David S. Rosenblum, and Tony Wicks. A framework for
modelling and analysis of software systems scalability. Proceedings of
the 28th international conference on Software engineering. ACM (2006).

>> Frey, Sren, and Wilhelm Hasselbring. The cloudmig approach: Model-
-based migration of software systems to cloud-optimized applications.
International Journal on Advances in Software4.3 and 4 (2011): 342-353.

>> Harms, Rolf, and Michael Yamartino. The economics of the cloud.,
Microsoft whitepaper, Microsoft Corporation(2010).

>> Herbst, Nikolas Roman, Samuel Kounev and Ralf Reussner. Elasticity in
Cloud Computing: What It Is, and What It Is Not. (2013).

>> Lawton, George. Developing software online with platform-as-a-service


technology.Computer41.6 (2008): 13-15.

>> Mell, Peter, and Timothy Grance, The NIST definition of cloud compu-
ting. (2011).

>> Reese, George.Cloud application architectures: building applications


and infrastructure in the cloud. OReilly Media, Inc., 2009.

>> Wood, Timothy, et al. Disaster recovery as a cloud service: Economic

rodrigosatori@yahoo.com.br
Referncias - pgina 100

benefits & deployment challenges.Proceedings of the 2nd USENIX con-


ference on Hot topics in cloud computing. USENIX Association (2010).

>> Amazon Web Services (AWS) - Cloud Computing Services.Amazon


Web Services, Inc.Web. 23 Dec. 2014. <http://aws.amazon.com/>.

>> App Engine - Run Your Applications on a Fully-managed Platform-as-


-a-Service (PaaS) Using Built-in Services.Google Developers. Web. 23
Dec. 2014. <https://cloud.google. /appengine/>.

>> Blog Opus Software Dedicado ao Alinhamento entre TI e os Neg-


cios. Opus Software. Web. 23 Dec. 2014. <http://blog.opus-software.
com.br/>.

>> Google Compute Engine - Cloud Computing & IaaS.Google Develo-


pers. Web. 23 Dec. 2014. <https://cloud.google.com/compute/>.

>> Microsoft Azure: Plataforma em Nuvem da MicrosoftMicrosoft Azure.


Web. 23 Dec. 2014. <http://azure.microsoft.com/pt-br/>.

www.opus-software.com.br

rodrigosatori@yahoo.com.br
rodrigosatori@yahoo.com.br
- pgina 102

rodrigosatori@yahoo.com.br
- pgina 103

rodrigosatori@yahoo.com.br
- pgina 104

rodrigosatori@yahoo.com.br
rodrigosatori@yahoo.com.br

Você também pode gostar