Académique Documents
Professionnel Documents
Culture Documents
Computao em Nuvem
Primeira Edio
So Paulo - SP - Brasil
Edio realizada por Opus Software Com. e Repr. Ltda
2015
DISTRIBUIO
Faculdade IBTA, em parceria com a Opus Software, est distribuindo este livro.
O IBTA Instituto Brasileiro de Tecnologia Avanada foi fundado em 2001, com o
objetivo de ser um centro de excelncia em educao superior nas reas de tecnologia
e gesto.
A instituio rapidamente conquistou e marcou seu espao no mercado de Educao,
movida pelos excelentes resultados das avaliaes do MEC e reconhecimento em
importantes publicaes no segmento como Guia do Estudante e Ranking da Voc SA.
As parcerias estratgicas com as empresas do mercado de TI, entre elas, Microsoft,
Cisco, SAP, Oracle, IBM e PMI, contribuem para que os cursos sejam alinhados com as
principais demandas do mercado empregador.
Contato: Faculdade IBTA - estudenoibta@ibta.edu.br - http://goo.gl/8MsbJb
Produo
Contedo
Introduo........................................................................................................ 10
Por que Computao em Nuvem?.................................................................... 13
Bons motivos para adotar a Computao em Nuvem.................................... 14
Custo........................................................................................................ 14
Agilidade.................................................................................................. 15
Flexibilidade............................................................................................. 15
Alta disponibilidade................................................................................. 16
Por que a Computao em Nuvem inevitvel?........................................... 16
A Computao em Nuvem favorece a Inovao....................................... 17
Economia de escala.................................................................................. 17
Economia de escala do lado dos fornecedores................................ 18
Economia de escala do lado da demanda....................................... 19
O que incentiva e o que dificulta o uso da Computao em Nuvem............ 20
Vantagens................................................................................................. 20
Dificuldades ............................................................................................ 21
Custos enterrados: fator que deve ser considerado........................................ 22
Conceitos fundamentais................................................................................... 25
O que Computao em Nuvem?................................................................ 25
Sob demanda........................................................................................... 26
Acesso amplo........................................................................................... 27
Medio de uso........................................................................................ 28
Provedores de Computao em Nuvem.................................................... 29
Tipos de instncias ...................................................................................... 29
Instncias AWS sob demanda................................................................... 30
Instncia AWS reservada .......................................................................... 30
Instncia AWS spot .................................................................................. 31
Instncia padro do Google...................................................................... 32
Instncias do Microsoft Azure................................................................... 33
Virtualizao X Computao em Nuvem...................................................... 34
Elasticidade e Escalabilidade........................................................................ 35
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
Introduo - pgina 10
Introduo
>>
estudenoibta@ibta.edu.br
Introduo - pgina 11
essa classe profissional acompanhar estas mudanas na maneira de pensar 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.
>>
>>
Alm disso, estamos assistindo a uma digitalizao crescente da economia. Todos os negcios esto se transformando em negcios de Tecnologia da Informao, 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-
estudenoibta@ibta.edu.br
Introduo - pgina 12
gia, fazendo com que ela desempenhe um papel de relevncia crescente nas organizaes. 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, produzindo e implantando com sucesso vrias solues baseadas em tecnologia. Cabe
destacar que o nosso negcio tambm foi profundamente alterado por tais transformaes, 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 proporcionar 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 negcios alavancadas por TI.
Boa leitura.
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
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 escolher 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 qualquer momento. Instantaneamente.
estudenoibta@ibta.edu.br
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 infraestrutura 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.
1
Para uma discusso detalhada do tema, veja Disaster Recovery as a Cloud Service: Economic Benefits & Deployment Challenges, de Wood et al.
estudenoibta@ibta.edu.br
Economia de escala3
A vantagem econmica advm da economia de escala resultante do uso mais
eficiente dos recursos computacionais de propsito geral, que so compartilhados, 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 produtivo 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 ambiente 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 Armbrust et al.
3
Uma abordagem detalhada sobre o tema oferecida pelo artigo The economics of the
cloud, de Rolf Harms e Michael Yamartino.
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
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.
estudenoibta@ibta.edu.br
>>
>>
>>
>>
Reduo de investimentos iniciais e eliminao dos custos de manuteno, segurana, eletricidade, espao e outros que seriam necessrios;
Elasticidade e escalabilidade, isto , a capacidade de se ajustar dinamicamente demanda, esticando ou encolhendo a capacidade computacional 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;
estudenoibta@ibta.edu.br
>>
Outros fatores indicados como incentivadores da adoo da nuvem j eram previstos na teoria, mas so menos bvios e interessante ressaltar que o mercado
normalmente tambm os leva em considerao:
>>
>>
Acesso a melhores ferramentas para rastreamento e auditoria dos sistemas e da integridade dos dados, sem ter que investir nessas ferramentas.
Dificuldades
>>
Necessidade de melhor integrao entre os sistemas que rodam na nuvem e os sistemas que rodam internamente na organizao;
>>
estudenoibta@ibta.edu.br
>>
>>
>>
>>
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
Em situaes como essa, quando se fala em uma nova aplicao a ser implantada, 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 aplicaes, dos processos de negcio suportados por elas e por uma avaliao dos
elementos que fundamentam a deciso de onde rodar cada tipo de aplicao.
estudenoibta@ibta.edu.br
Conceitos fundamentais
O que Computao em Nuvem?
final, o que Computao em Nuvem? E o que no ? Desde o advento 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 Computao em Nuvem foi caracterizada de maneira muito abrangente, incluindo toda
e qualquer forma de virtualizao de servidores e de terceirizao de infraestrutura 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 consolidando, 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 proposta 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.
estudenoibta@ibta.edu.br
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 disponveis devem parecer ilimitados, sendo possvel alocar a quantidade desejada
desses recursos a qualquer momento.
Alm disso, a empresa cliente pode reparametrizar as especificaes do servidor, aumentando de modo fixo sua capacidade, se isso se mostrar realmente necessrio e vantajoso do ponto de vista econmico, uma vez que o uso automtico de recursos adicionais, se muito frequente, pode ser menos vantajoso que um
aumento permanente de capacidade.
The NIST definition of cloud computing, de Peter Mell e Timothy Grance, 2011.
estudenoibta@ibta.edu.br
>>
>>
>>
>>
Acesso amplo
Os recursos devem estar disponveis atravs da rede (internet) e devem ser acessveis 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
estudenoibta@ibta.edu.br
Medio de uso
estudenoibta@ibta.edu.br
>>
>>
>>
>>
Softlayer (IBM);
importante observar que todos esses provedores oferecem os recursos fundamentais que caracterizam a Computao em Nuvem. Infelizmente, alguns
provedores de hospedagem e terceirizao de data centers insistem em apresentar suas ofertas como Computao em Nuvem, o que dificulta ao mercado 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 precificao de cada um deles pode parecer tarefa complicada para quem comea
a percorrer o mundo da Computao em Nuvem. Porm essa sensao desaparece 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
estudenoibta@ibta.edu.br
de servios. Quando em execuo, as mquinas virtuais so chamadas de instncias. 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.
estudenoibta@ibta.edu.br
de de aumentar a capacidade da instncia ou de mud-la de zona de disponibilidade (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 disponibilidade ou por aplicaes que tm um uso constante e contnuo. Quanto
menos variar a necessidade de processamento e quanto menos horas ela for subutilizada em um perodo, mais vantajosa a compra de instncias reservadas.
>>
>>
>>
estudenoibta@ibta.edu.br
isto define-se uma combinao inicial que pode ser, ento, monitorada e ajustada continuamente.
O modelo de instncias do Google, por sua vez, apresenta algumas caractersticas diferentes que podem ser mais apropriadas, em termos de custo, para
determinados tipos de aplicao.
>>
estudenoibta@ibta.edu.br
>>
>>
estudenoibta@ibta.edu.br
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 minutos 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 trimestralmente ou anualmente.
Virtualizao X Computao em
Nuvem
irtualizao de servidores uma forma de se otimizar o uso de servidores 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 movidos 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 usurios 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 Architecture and Implementation, de Jeff Daniels.
estudenoibta@ibta.edu.br
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
termo elasticidade teve origem nas reas de Fsica e Economia, mas hoje
tambm bastante empregado na rea de Computao.
estudenoibta@ibta.edu.br
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 desempenho. Para uma discusso mais aprofundada sobre o termo, veja A framework for Modelling and
Analysis of Software Systems Scalability. de Duboc, Rosenblum e Wicks.
estudenoibta@ibta.edu.br
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 escalabilidade 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 ambientes 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 escalabilidade, 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:
9
A classificao apresentada vem do artigo The CloudMIG Approach: Model-based Migration of Software Systems to Cloud-optimized Applications. de Sren Frey e Wilhelm Hasselbring.
estudenoibta@ibta.edu.br
A.
B.
C. Pronto para a nuvem: quando o sistema no possui nenhuma caracterstica incompatvel com a nuvem;
D.
E.
Q
>>
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 comunidade especfica de usurios de empresas que tenham interesses em comum.
estudenoibta@ibta.edu.br
Nuvem pblica
aquela oferecida pela internet por um provedor de servios, em que os recursos 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 necessariamente uma combinao de recursos computacionais em que os equipamentos 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.
estudenoibta@ibta.edu.br
>>
>>
estudenoibta@ibta.edu.br
Nuvem Hbrida
J uma nuvem hbrida constituda de uma juno de servios de nuvem pblica 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 segurana 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 potencializa, mas no necessariamente oferece, de fato, maior segurana.
>>
>>
estudenoibta@ibta.edu.br
>>
Fonte: IaaS, PaaS and Saas Terms Clearly Explained and Defined, Siverlight Hack.
estudenoibta@ibta.edu.br
Regies e zonas de
disponibilidade
s termos regio e zona de disponibilidade so usados por um dos principais fornecedores de Computao em Nuvem, a Amazon Web Services
(AWS). Embora sejam termos especficos desse fornecedor, podem ser
estudenoibta@ibta.edu.br
>>
>>
>>
>>
>>
>>
>>
>>
11
Virgnia
Califrnia
Oregon
So Paulo
Irlanda
Tquio
Singapura
Sidney
Dados de 2014.
estudenoibta@ibta.edu.br
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:
12
Dados de 2014.
estudenoibta@ibta.edu.br
sia Pacfico:
Japo:
Brasil:
Iowa
Ireland
Hong Kong
Saitama Prefecture
Virginia
Netherlands
Singapore
Osaka Prefecture
Virginia (2)
Illinois
Texas
California
13
Dados de 2014.
estudenoibta@ibta.edu.br
E faz diferena a regio que voc escolher para criar sua infraestrutura na nuvem? 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:
estudenoibta@ibta.edu.br
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 distribudos 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-
estudenoibta@ibta.edu.br
treg-lo a partir do data center que estiver mais prximo do usurio que faz a requisio. 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 aplicao 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.
estudenoibta@ibta.edu.br
>>
>>
>>
>>
Nvel 4, regies
>>
estudenoibta@ibta.edu.br
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 construir 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.
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
>>
>>
>>
Para tais aplicaes, nos perodos de baixa demanda, poucos recursos da nuvem
so utilizados. Conforme a demanda cresce, novos recursos podem ser adicionados infraestrutura. Naturalmente, possvel automatizar atravs de scripts
todo o trabalho de anlise e alocao ou liberao de recursos.
15
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
Esses trs tipos de aplicao se beneficiam enormemente da elasticidade proporcionada 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 Nuvem. Quando uma aplicao desenvolvida para o modelo tradicional de computao 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 seguinte 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.
estudenoibta@ibta.edu.br
Comprando Software
como Servio (SaaS)
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
Comprando Plataforma
como Servio (PaaS)
17
ton.
18
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
podem ser compartilhados com outras aplicaes, ou ser necessrio export-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 equivalente. 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 ferramentas 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 concentremos nesses dois fornecedores, existem inmeras plataformas no mercado.
Algumas das mais populares so:
>>
>>
>>
>>
>>
>>
AppFog
Caspio
Engine Yard
Heroku
Red Hat OpenShift
Jelastic
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
25
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
para quem desenvolve sites e interfaces de usurio utilizando a linguagem JavaScript). 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 posteriormente 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 habituados 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 estruturados 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 permite 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 utilizados 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.
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
Comprando
Infraestrutura como
Servio (IaaS)
Computao em Nuvem baseia-se na alocao e desalocao de recursos de acordo com a demanda. No caso da Infraestrutura como Servio,
alocam-se principalmente recursos para processamento e armazenamento 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.
estudenoibta@ibta.edu.br
>>
>>
>>
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 algumas 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 resposta. 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 interessante escolher uma regio onde os preos sejam mais baixos, mesmo que seja mais
estudenoibta@ibta.edu.br
distante. Entretanto, para uma avaliao precisa dos custos envolvidos, considere 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. importante observar que, normalmente, cada instncia possui um disco temporrio associado 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 temporrios 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 computao 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 repositrio 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 comum 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 estticos.
Banda Internet
Normalmente os fornecedores no cobram o trfego de entrada, isto , o volume
estudenoibta@ibta.edu.br
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.
estudenoibta@ibta.edu.br
Controle de acesso
preciso considerar tambm o controle de acesso sua estrutura de Computao 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 tambm 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 ferramentas 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 licenciamento 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, alterando 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 servidores rodando na AWS, sendo uma alternativa complexa calculadora da prpria AWS.
31
estudenoibta@ibta.edu.br
>>
>>
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
Armazenamento de dados
Estes so alguns dos servios para armazenamento de dados oferecidos pela
AWS:
33
34
idem.
estudenoibta@ibta.edu.br
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 replicados 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 encriptados, garantindo que todos os dados armazenados sejam criptografados,
bem como a transferncia dos dados entre os discos e as instncias de
mquinas virtuais.
>>
Os dados armazenados no S3 podem ser automaticamente criptografados, 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
estudenoibta@ibta.edu.br
Amazon Glacier
>>
um servio que fornece armazenamento seguro e durvel para backup 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.
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 relacional 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 gerenciamento 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.
estudenoibta@ibta.edu.br
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:
>>
>>
>>
estudenoibta@ibta.edu.br
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 flexibilidade 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 warehouse gerenciado e hospedado na nuvem. Utilizando uma arquitetura massivamente paralela, o servio consegue realizar tarefas analticas sobre grandes volumes
de dados com excelente desempenho. Diversas ferramentas de Business Intelligence 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 infraestrutura completa de processamento na nuvem. Alguns dos servios oferecidos
pela AWS so:
>>
>>
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 endereos 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
estudenoibta@ibta.edu.br
>>
>>
>>
>>
>>
Vrios dos servios adicionais oferecidos pela AWS esto alm do que se con-
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
Armazenamento de dados
Discos persistentes
O Cloud Compute Engine oferece discos padro e discos SSD, que so mais velozes 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 transferncia de dados por operao.
Todos os dados gravados nos discos do Cloud Compute Engine so criptografados j na mquina virtual, garantindo a inviolabilidade dos dados j no trfego
entre o servidor e os discos.
estudenoibta@ibta.edu.br
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 Google):
Cloud SQL
um gerenciador de bancos de dados relacionais com recursos e funcionalidades 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 (NoSQL, 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 existam diversas instncias trabalhando em paralelo. A grande vantagem deste servio 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 gerencia37
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 distribudo 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).
estudenoibta@ibta.edu.br
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 conectores 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 infraestrutura 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
estudenoibta@ibta.edu.br
>>
Translate API, que um servio que permite integrar aplicaes desenvolvidas 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.
Microsoft Azure
Servidores
O Microsoft Azure permite a criao de mquinas virtuais rodando sistemas
operacionais Windows Server ou Linux. Da mesma forma que outros fornecedores, 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
estudenoibta@ibta.edu.br
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 sistemas 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-
estudenoibta@ibta.edu.br
Azure Storage
No Microsoft Azure, os discos persistentes so apenas um caso especial do
servio de armazenamento de objetos, chamado de Azure Storage. Essa arquitetura proporciona uma vantagem interessante em termos de custo para o usurio: 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 armazenadas nele, e a cobrana feita apenas pelo volume de dados salvos, com descontos progressivos medida que mais espao utilizado. Alm disso, proporciona
diferentes mecanismos de armazenamento para diferentes tipos de objetos:
>>
>>
>>
>>
estudenoibta@ibta.edu.br
Azure Backup
Este outro servio importante oferecido pela Microsoft, um software que instalado 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 alterados 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 apresentados na seo que fala sobre a soluo PaaS da Microsoft, Azure Cloud
Services:
>>
>>
>>
estudenoibta@ibta.edu.br
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 prximo. 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.
estudenoibta@ibta.edu.br
>>
>>
>>
>>
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 tecnologia 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
estudenoibta@ibta.edu.br
>>
>>
estudenoibta@ibta.edu.br
de transferncia de dados. A empresa oferece ainda um pacote para a construo 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 computacional 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 carro-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 eletrnico 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, considerando sua estratgia e a fora de sua base instalada de produtos de software,
a empresa est posicionada para manter sua relevncia no mercado de tecnologia, mesmo com o avano do uso da nuvem representando uma mudana importante em seu modelo de negcios tradicional, baseado na venda de licenas
de software.
estudenoibta@ibta.edu.br
Disaster Recovery
recuperao de dados
ma poltica de Disaster Recovery visa manter o negcio operando mesmo 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 processos 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. Normalmente, 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 atualizado e pronto para entrar em operao. Isso significa duplicar os custos de implantao e de manuteno.
Com a popularizao dos servios de Computao em Nuvem, o cenrio mudou. 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-
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
40
Para uma discusso detalhada do tema, veja Disaster Recovery as a Cloud Service: Economic Benefits & Deployment Challenges, de Wood et al.
estudenoibta@ibta.edu.br
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 aquecedor seja feito rapidamente, quando necessrio. Neste cenrio, a infraestrutura
primria continua sob a tutela da empresa, porm tanto o backup quanto a infraestrutura secundria ficam na nuvem. Em caso de interrupo das atividades, a
infraestrutura secundria entra em operao, utilizando os dados armazenados
na nuvem.
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
hora de colher os
benefcios da nuvem
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br
Referncias
>>
>>
>>
>>
>>
>>
>>
>>
>>
Mell, Peter, and Timothy Grance, The NIST definition of cloud computing. (2011).
>>
>>
estudenoibta@ibta.edu.br
benefits & deployment challenges.Proceedings of the 2nd USENIX conference on Hot topics in cloud computing. USENIX Association (2010).
>>
>>
>>
>>
Google Compute Engine - Cloud Computing & IaaS.Google Developers. Web. 23 Dec. 2014. <https://cloud.google.com/compute/>.
>>
estudenoibta@ibta.edu.br
- pgina 103
estudenoibta@ibta.edu.br
estudenoibta@ibta.edu.br