Beruflich Dokumente
Kultur Dokumente
Ao Prof. Ednardo David Segura, por sua orientao competente e pelos estmulos constantes
ao longo desta caminhada.
(Albert Einstein)
BAUMGARTNER, Ricardo Megale; MOREIRA, Rafael da Silva. Desenvolvimento em
Cloud Computing. 2013. Curso de Sistemas de Informao, Universidade do Vale do
Sapuca, Pouso Alegre, 2013.
RESUMO
A necessidade de acesso a recursos de forma rpida, com baixo custo fez surgir o cloud
computing, um modelo computacional que permite a utilizao de recursos apenas na
quantidade e tempo que forem necessrios. Pelo fato de esse modelo ser uma tendncia para a
rea de tecnologia da informao, o objetivo desta pesquisa mostrar os conceitos, as
vantagens e desvantagens, os riscos e as possibilidades que ele oferece, documentando teorias
e definies. A partir de toda a pesquisa realizada foi possvel alm da compreenso de seu
funcionamento, tambm a criao de uma aplicao que utilizasse esses conceitos e teorias.
Para que, alm de documentadas, elas fossem demonstradas.
ABSTRACT
The requiring access to quickly resources, with low cost and without the need for physical
equipment has raised the cloud computing, a computational model that allows the use of
resources in the quantity and time needed. Because this model is an Information Technology
tendency, the objective of this resource is show the concepts, the advantages and
disadvantages, the risks and possibilities that it offers, documenting theories and definitions.
From all the research done was possible further the understand its functioning, also creating
an application that utilizes this concepts and theories. For besides documented they were
demonstrated.
INTRODUO ........................................................................................................................ 13
2. QUADRO TERICO ........................................................................................................... 17
2.1 CLOUD COMPUTING...................................................................................................... 17
2.2 SEGURANA DA INFORMAO ................................................................................. 18
2.3 TECNOLOGIAS USADAS NA APLICAO DA PESQUISA ..................................... 18
2.3.1 HYPERTEXT MARKUP LANGUAGE (HTML) ......................................................... 19
2.3.2 JAVASCRIPT ................................................................................................................. 20
2.3.3 JQUERY .......................................................................................................................... 21
2.3.4 CASCADING STYLE SHEET (CSS) ............................................................................ 22
2.3.5 PHP .................................................................................................................................. 23
3 QUADRO METODOLGICO ............................................................................................. 25
3.1 TIPOS DE PESQUISA....................................................................................................... 25
3.2 CONTEXTOS DA PESQUISA ......................................................................................... 26
3.3 INSTRUMENTOS ............................................................................................................. 26
3.4 PROCEDIMENTOS........................................................................................................... 27
3.4.1 PLANEJAMENTO.......................................................................................................... 27
3.5 CARACTERSTICAS DO CLOUD COMPUTING ......................................................... 27
3.6 MODELOS DE SERVIOS .............................................................................................. 29
3.7 MODELOS DE IMPLANTAO .................................................................................... 32
3.8 SEGURANA .................................................................................................................... 33
3.8.1 CONTROLES DE SEGURANA .................................................................................. 34
3.8.2 PADRES DE SEGURANA DA FEDERAO ....................................................... 35
3.8.3 SLA.................................................................................................................................. 36
3.8.4 FATORES DE SEGURANA NA MIGRAO PARA NUVEM ............................... 36
3.8.5 OUTRAS QUESTES DE SEGURANA .................................................................... 37
3.9 PLATAFORMAS DE DESENVOLVIMENTO ................................................................ 38
3.9.1 WINDOWS AZURE ....................................................................................................... 38
3.9.2 AWS AMAZON .............................................................................................................. 45
3.9.3 GOOGLE APP ENGINE ................................................................................................ 55
3.10 ESTUDOS DE CASO ...................................................................................................... 57
3.10.1 GRUPO ING ................................................................................................................. 57
3.10.2 GOL LINHAS AREAS ............................................................................................... 59
3.10.3 PEIXE URBANO .......................................................................................................... 61
3.10.4 FOURSQUARE ............................................................................................................ 61
3.11 DESENVOLVIMENTO DO SOFTWARE ..................................................................... 62
3.12 IMPLANTAO ............................................................................................................. 63
3.13 MIGRAO ENTRE REGIES..................................................................................... 65
3.14 RESULTADOS ................................................................................................................ 67
4 DISCUSSO DOS RESULTADOS ..................................................................................... 73
5 CONSIDERAES FINAIS ................................................................................................ 77
REFERNCIAS ....................................................................................................................... 78
INTRODUO
1
Data Centers so centrais de armazenamento e processamento de dados onde vrios servidores so alocados.
2
Hardware a parte fsica de um computador formada pelos componentes eletrnicos.
Esse novo modelo pode reduzir custos, pois sistemas de gerenciamento mais robustos
no mais necessitaro de grandes recursos fsicos como servidores potentes e uma rede bem
estruturada para serem implantados. O processamento dos dados ser feito na nuvem pelos
servidores e entregue ao computador que requisitou atravs do navegador de internet
(TAURION, 2009).
O fato de ser possvel acessar as aplicaes de qualquer local pode facilitar a
disposio de uma empresa espalhada geograficamente permitindo, por exemplo, a integrao
sem a necessidade de uma grande infraestrutura e gastos com manuteno, diminuindo os
custos e riscos que podem ocorrer quando se tem uma estrutura de comunicao complexa.
Como o acesso a essas aplicaes no requer compatibilidade com o sistema
operacional instalado, possvel utilizar a aplicao tanto no Windows como no Linux ou
IOS no sendo necessria a troca de equipamentos ou de sistemas operacionais por
incompatibilidade.
A computao em nuvem confundida s vezes com a computao em grade (Grid
Computing), pois as duas tecnologias visam flexibilidade atravs de recursos ociosos de
vrios computadores. A grande diferena a alocao de recursos que, na computao em
nuvem, so alocados conforme a demanda e na computao em grade feita uma distribuio
por igual desses recursos (TAURION, 2009).
A segurana dos dados sempre foi uma preocupao global na rea tecnolgica. O
risco existe em computadores pessoais, tablets, celulares e em grandes empresas. Todos esto
vulnerveis e isso no diferente quando se utiliza o cloud computing. Em um documento
feito pela CSA (Cloud Security Alliance) foram listadas e descritas grandes ameaas
segurana da computao em nuvem na atualidade.
Dentre elas esto questes importantes, como violao e perda dos dados, maior
facilidade de interceptao de informaes por conta de trafegarem na internet e a perda de
credenciais de acesso, que poderiam prejudicar de forma irreversvel uma organizao.
Essa uma questo primordial e delicada para a computao em nuvem, pois ir
influenciar no rumo desse modelo. A escolha da utilizao do cloud computing deve levar em
conta o grau de necessidade de uso do sistema. Quando preciso ter certeza da localizao
dos dados e disponibilidade total da aplicao, sem depender da conexo com a internet ou ter
nveis maiores de segurana deve-se considerar uma nuvem privada (TAURION, 2009).
Esse novo modelo j despertou o interesse de muitas pessoas, como Edin (2011) que
elaborou um trabalho em que comenta as vantagens e desvantagens da computao em nuvem
14
explicando a arquitetura, os modelos e duas das principais plataformas de desenvolvimento
em cloud computing. Tambm realizou um comparativo entre a Amazon AWS e o Microsoft
Azure. Nesse comparativo ele constata que o Azure por ter uma plataforma onde fornece
integradas todas as ferramentas necessrias para o desenvolvimento, torna mais fcil o
gerenciamento das instncias e aplicaes implantadas no servidor, mas suporta uma
quantidade menor de linguagens de programao. Tambm viu que a Amazon fornece a
infraestrutura primria, com acesso sob demanda s instncias de mquinas virtuais
personalizveis e tem suporte a um nmero maior de linguagens para programao.
Hsu (2009) apresentou um estudo de caso com os diversos conceitos em relao ao
cloud computing, debatendo sobre a implantao desse modelo na empresa Pathwork que
necessitava suprir sua necessidade de processamento. Ele ressalta os benefcios obtidos nessa
implantao como economia e maior capacidade computacional sem precisar investir em
infraestrutura.
Melo (2009) tambm mostrou os conceitos que definem o que a computao em
nuvem, destacando suas vantagens, desvantagens e os principais servios da nuvem. Tambm
citou sobre a segurana, confiabilidade e as empresas que oferecem esse servio.
Muitos j documentaram e estudaram esse novo modelo computacional e pelo fato de
a tecnologia evoluir de um modo muito rpido, pensou-se ser vlido estudar novamente esses
conceitos para criar um estudo mais recente. Pesquisas anteriores no demonstraram esse
modelo em funcionamento, por isso esta pesquisa tem o objetivo geral de estudar os principais
conceitos do cloud computing e demonstrar esse modelo em uso. Para o alcance dele foram
seguidos alguns passos:
15
contratao de sistemas mais robustos utilizando menos recursos computacionais, barateando
vrias tecnologias, deixando-as mais acessveis para a populao.
Esse modelo computacional permite ainda que projetos carentes, de incluso social,
escolas ou rgos pblicos, possam ter acesso a vrias tecnologias com um gasto muito
menor, possibilitando que eles tenham melhor qualidade, beneficiando a sociedade. Com a
reduo da infraestrutura de hardware necessria para esse modelo, a quantidade de lixo
tecnolgico gerado ser drasticamente reduzida, sendo um aliado para um desenvolvimento e
uma sociedade sustentvel.
Com a documentao dos principais conceitos e da utilizao das principais
ferramentas do cloud computing como o uso dos recursos sob demanda, utilizao de banco
de dados, criao de instncias, redes virtuais dentre outras, espera-se que este projeto possa
ser utilizado como auxlio em estudos ou pesquisas sobre o assunto abordado.
O trabalho se divide em quatros captulos. Sendo o primeiro capitulo uma introduo
sobre o tema que ser abordado mostrando conceitos bsicos e o objetivo dessa pesquisa. O
segundo captulo apresenta as teorias e descries de ferramentas utilizadas para a
demonstrao da pesquisa. O terceiro captulo demonstra o tipo e o contexto da pesquisa, os
instrumentos para produo de dados e os procedimentos. No quarto e quinto captulo
encerrou-se com a discurso de resultados que traz, como contedo, o que foi alcanado com
os estudos por trs desta pesquisa. Por fim so apresentadas as referncias utilizadas para a
formao deste documento.
16
2. QUADRO TERICO
Quando o termo computao em nuvem apareceu pela primeira vez, descobriu-se uma
forma de computao rpida. Uma analogia muito utilizada foi a da eletricidade que gerada
por vrios fornecedores, entregue sob demanda e paga pela quantidade usada. Esse foi o
conceito que deu origem s nuvens pblicas que fornecem recursos de computao na forma
comumente chamada infrastructure-as-a-service (IaaS). As nuvens pblicas no atendem a
todos os clientes principalmente em questes de segurana, por esse motivo surgiram nuvens
privadas e hbridas (HADHAT, 2012).
O preo das mquinas virtuais muito baixo, por isso usurios e desenvolvedores
podem, por meio de pagamento eletrnico, ter acesso e alocar esses recursos instantaneamente
no sendo necessria a espera por meses para um novo servidor ser montado e estar
disponvel (HADHAT, 2012).
Muitas organizaes ainda no esto prontas pra mover todas suas aplicaes para
provedores de nuvens pblicas. Em geral, isso ocorre por causa de conceitos em torno de
conformidade e governana, por isso existem vrios aspectos de segurana e modelos de
servios que devem ser analisados para a escolha da utilizao ou no dessa tecnologia
(HADHAT, 2012).
17
2.2 Segurana da informao
Anlise de riscos;
Poltica de segurana;
Controle de acesso fsico e lgico;
Treinamento e conscientizao dos funcionrios;
Plano de contingncia;
18
2.3.1 Hypertext Markup Language (HTML)
Fig. 1 Cdigo exemplo de uma estrutura HTML Fonte: Elaborado pelo autor.
Nesse exemplo podemos identificar algumas das principais tags para documentos
HTML.
3
W3C Abreviao para World Wide Web Consortium.
19
<html> define o incio do documento. Indica ao navegador que o contedo entre essas
tags devem ser tratadas como cdigo;
<head> so etiquetas e contedo do cabealho;
<body> so etiquetas e contedo do corpo, contendo parte do documento que ser
mostrado pelo navegador, como textos e imagens;
Uma pgina HTML um arquivo que contm escrito todo o cdigo em modo texto.
Esse arquivo possui a extenso de .html ou .htm, no existindo diferena alguma entre qual
delas utilizar, porm aconselhado utilizar sempre a mesma extenso em todos os arquivos
para que no haja confuso (ALVAREZ, 2004).
2.3.2 JavaScript
20
2.3.3 jQuery
Com isso entende-se que o jQuery uma biblioteca de extrema importncia, pois traz
recursos que minimizam as dificuldades em programao e geram grandes benefcios em um
site como adicionar interatividade e dinamismo as pginas web.
4
MIT Abreviao de Massachusetts Institute of Technology.
5
GPL Abreviao de General Public License.
6
DOM Abreviao para Document Object Model
21
2.3.4 Cascading Style Sheet (CSS)
O CSS a sigla para Cascading Style Sheet que, traduzido, significa efeitos de estilo
em cascata. definido como um modo simples e organizado de adicionar estilos, fontes e
posio para as marcaes, deixando o HTML com sua funo original de exclusivamente
fazer a marcao e estruturao dos contedos. Cabe ao CSS todas as funes de apresentao
da pgina web (SILVA, 2012). Segundo Miyagusku (2007, p. 8);
O CSS foi criado proveniente das deficincias e limitaes que o HTML passou a
apresentar. Com a necessidade de sites mais complexos, repletos de recursos e informaes, a
questo da formatao e manuteno de arquivos HTML passou a ficar complicada para os
programadores. Para resolver esse problema surgiu o CSS que separa as configuraes de
formataes do contedo do arquivo HTML. A configurao de formatao fica em um
arquivo parte. Abaixo a Figura 2 apresenta a sintaxe do CSS (MIYASGUSKU, 2012).
A sintaxe de uma regra CSS est descrita no seletor apresentado acima. O elemento
antes das chaves { } (pargrafos, cabealhos, componentes de lista de tabelas entre outros)
22
indica o elemento da pgina HTML. Os atributos que esto dentro das chaves e seus
respectivos valores definem a formatao do elemento.
A utilizao do CSS fornece a certeza de que todo o site estar padronizado e
formatado, proporcionando uma enorme economia de trabalho, pois dispensa a repetio de
cdigo em cada arquivo HTML. Tambm o mesmo cdigo CSS pode ser reaproveitado para
definir o layout em outros arquivos HTML.
2.3.5 PHP
Ao invs de muitos comandos para mostrar HTML, as pginas PHP contm o HTML
juntamente com seus cdigos, neste caso, mostra na tela a frase "Ol, Eu sou um script PHP!.
O cdigo delimitado por tags iniciais e finais (<?php e ?>) que permitem mudar do HTML
para a linguagem PHP.
O que distingui o PHP de algo como JavaScript no lado do cliente que o cdigo
executado no servidor, gerando HTML que ento enviado para o cliente. O cliente recebe os
resultados da execuo desse script, mas no sabe como o cdigo fonte.
23
O PHP uma linguagem de script do lado do servidor, portanto, possvel coletar
dados de formulrios, gerar pginas com contedo dinmico ou enviar e receber cookies7.
Existem alguns campos onde os scripts podem ser utilizados:
Ele pode ser utilizado na maioria dos sistemas operacionais, incluindo Linux, variantes
Unix (incluindo HP-UX, Solaris e OpenBSD), Microsoft Windows, Mac OS X, RISC OS, e
outros. Tambm suportado pela maioria dos servidores web atuais, incluindo Apache,
Microsoft Internet Information Server, Personal Web Server, Netscape and iPlanet Servers,
Oreilly Website Pro Server, Caudium, Xitami, OmniHTTPd, e outros.
7
Cookies so grupos de dados trocados entre o navegador e o servidor de pginas, colocado num arquivo de
texto criado no computador.
24
3 QUADRO METODOLGICO
Para atingir os reais objetivos desta pesquisa, foi utilizado um design que a caracteriza
como exploratria. Esse tipo de pesquisa permitiu um estudo para obter os conhecimentos
necessrios sobre o tema proposto.
Para Andrade (2007, p.111), Pesquisa o conjunto de procedimentos sistemticos,
baseado no raciocnio lgico, que tem por objetivo encontrar solues para problemas
propostos, mediante a utilizao de mtodos cientficos.
A pesquisa exploratria pode ser entendida como um estudo que tem como principal
objetivo descobrir ideias, percepes, gerar hipteses precisas sobre um determinado assunto.
Caracteriza-se por sua flexibilidade e versatilidade, pois no so empregados procedimentos
formais de pesquisa (HONORATO, 2004).
Gil (2007, p.43) afirma que:
Ainda Gil (2007) diz que o objetivo de pesquisa exploratria fornecer a viso geral
de modo aproximativo, sobre determinado assunto. Esse tipo de pesquisa bastante utilizado
quando o tema proposto pouco conhecido e explorado.
Com base nessas informaes o tipo de pesquisa que melhor se define nesse trabalho
a pesquisa exploratria, com objetivo de explorar as documentaes bibliogrficas existentes
25
em sites e livros, pesquisar as teorias j definidas, explorar os recursos da nuvem escolhida e
abordar de maneira clara tudo que foi pesquisado.
3.3 Instrumentos
26
3.4 Procedimentos
3.4.1 Planejamento
9
TI Abreviao de Tecnologia da Informao.
10
Mquina Virtual um software de ambiente computacional em que um sistema operacional ou programa pode
ser instalado e executado.
11
Multi-Tenant uma arquitetura que permite que mltiplos usurios compartilhem os mesmos recursos fsicos
do servidor, mas permaneam logicamente isolados.
28
3.6 Modelos de Servios
12
Software conjunto de instrues a serem seguidas por uma mquina.
29
Fig. 4 Plataforma como servio
Fonte: https://chapters.cloudsecurityalliance.org/brazil/files/2012/04/cap17.pdf
30
Fig. 5 Modelos de servios da computao em nuvem
Fonte: http://www.solidq.com/sqj/pt/Documents/2010_August_Issue/SQJ%20002.pdf
31
3.7 Modelos de Implantao
Existem alguns modelos para se seguir na hora de implantar o cloud computing, eles
devem ser analisados e escolhidos cuidadosamente. Eles so divididos em trs tipos e
descritos a baixo (ASHLEY, 2009).
3.8 Segurana
33
O fato de o cloud computing ainda ser um conceito e um modelo computacional em
crescimento torna fundamental a ateno s evolues das tecnologias e conceitos que o
formam e o sustentam. Essa evoluo, ainda prematura, do modelo de cloud computing pode
levar gestores de TI a tomarem decises com algum grau de risco, pois nem sempre as
tecnologias envolvidas esto no nvel de maturidade que seria desejvel, no permitindo que
se tenha certeza do resultado final. Por esses motivos, a segurana se torna um ponto crtico
que deve ser muito bem analisado (TAURION, 2010).
14
Comutadores so semelhantes aos hubs, mas podem identificar o destino e enviam essas informaes apenas
para os computadores que devem receb-las.
34
Polticas de segurana: Para tornar o controle de acesso e a alocao de recursos
eficaz, preciso definir, resolver e implantar polticas de segurana de forma
consistente.
Automao de servios: Possuir uma forma automatizada de gerenciar e analisar os
fluxos e processos de controle de segurana para auxiliar as auditorias extremamente
importante para que as auditorias sejam feitas com maior agilidade.
15
Roteador um dispositivo que encaminha pacotes de dados entre redes de computadores.
16
Token um dispositivo que auxilia quanto segurana ao gerar uma senha temporria.
17
ID Abreviao de identidade.
35
O gerenciamento da configurao a capacidade de federar dados de configurao
para servios, aplicativos e mquinas virtuais.
Como as melhores prticas costumam se tornarem padres, importante que um
desenvolvedor observe as que j existem, pois assim estar usando-as e cumprindo os padres
de federao.
3.8.3 SLA
Realizar uma migrao de uma aplicao para a nuvem pode ser uma tarefa
complicada, pois a segurana nessa rea traz muitos desafios, mas muitos deles podem ser
superados quando se tem um planejamento de migrao. Para isso preciso ter conhecimento
de quais os servios que podem se aproveitar da migrao para a nuvem e quais os problemas
de segurana, privacidade e regulamentao podem ocorrer com a migrao do servio
(ALLIANCE, 2012).
Existem ocasies em que se pode optar por no realizar a migrao por questes
legais, em situaes que exijam que os dados fiquem localizados em um data center no pas
36
de origem, dever ser realizado um estudo referente ao assunto, pois como a legislao varia
conforme o pas em que os dados esto hospedados, a migrao para nuvem jamais dever ser
feita sem que esse aspecto seja analisado (ALLIANCE, 2012).
A maior causa de migraes fracassadas a falta de um planejamento inicial e a no
compreenso das implicaes de se realizar essa migrao. O modelo de servio que se
escolhe para a migrao deve ser muito bem estudado, pois dependendo da situao, uma total
readaptao precisa ser feita (ALLIANCE, 2012).
Em uma migrao que inclua o desenvolvimento de novas aplicaes j na nuvem, no
s os servios para o usurio final sero afetados, mas tambm a plataforma de
desenvolvimento.
Mesmo que todo o contrato seja revisado e estudado por todos da empresa, no fim o
contratante tem que confiar que este contrato ser respeitado, pois a partir da assinatura, todos
os dados da empresa sero manuseados por pessoas com quem o contratante provavelmente
nunca ter contato (ALLIANCE, 2012).
Durante o processo de escolha do provedor importante entender previamente alguns
aspectos como a liberao de logs, pois caso o contratante necessite de algum tipo de
investigao nos seus dados ele precisa saber qual a poltica do provedor para liberar essas
informaes (ALLIANCE, 2012).
preciso ter um conhecimento prvio das condies de liberao desses dados, pois se
houver a necessidade de uma ordem judicial, preciso saber por quanto tempo esses logs
ficam armazenados ou ainda se existe uma garantia de que eles no sero mesclados com os
de outros clientes (ALLIANCE, 2012).
necessrio tambm lembrar de que no basta ter certificaes para servios SLA18 se
a equipe interna que gerencia o data center no possui um treinamento adequado e no segue
um padro de segurana para acesso dos dados (ALLIANCE, 2012).
de extrema importncia que o contratante do servio tenha um conhecimento
profundo da poltica de segurana usada pelo provedor e saber onde ficam armazenados os
dados fisicamente. No necessrio saber o endereo do data center, mas precisa-se saber a
18
SLA Abreviao para Service Level Agreement.
37
localizao geogrfica do mesmo, pois em caso de falha desse servidor, os dados podem ser
transferidos para fora do pas de origem, com leis diferentes e por isso o contratante fica
sujeito a regras diferentes do seu pas de origem (ALLIANCE, 2012).
Alm de todas essas preocupaes contratuais e com o manuseio dos dados, outro
ponto importante so os empregados mal intencionados ou despreparados que so
responsveis por 80% de ataques maliciosos dentro das empresas, sendo mais nocivos que
usurios de fora dessa rede (GRIMES, 2010)
O risco aumenta se o contratante no sabe exatamente qual o tipo de treinamento que
os funcionrios recebem e qual o tipo de punio dada para infraes no possvel vazamento
de dados (ALLIANCE, 2012).
Por fim os dados so de propriedade do cliente e isso tem que ser explcito em
contrato, pois o manuseio ser realizado pelo provedor de servios da nuvem, mas os dados
sempre sero do cliente. Para evitar futuras complicaes, o contratante tem que exigir uma
documentao contratual quanto a essa propriedade final dos dados ALLIANCE, 2012).
O Windows Azure uma plataforma que suporta vrias linguagens e atua como um
ambiente de desenvolvimento, hospedagem de servios e gerenciamento, fornecendo uma
computao sob demanda e armazenamento para hospedar, escalar e gerenciar aplicaes web
suportando SOAP19, XML20 e PHP21 dentre outros (MICROSOFT, 2010).
19
SOAP Sigla de Simple Object Access Protocol.
20
XML Sigla de Extensible Markup Language.
21
PHP Sigla de Hypertext Preprocessor.
38
O Azure uma plataforma como servio (PaaS) que disponibiliza as principais
funcionalidades como processamento, armazenamento, gerenciamento e administrao das
aplicaes, alm do suporte ao modelo de software como servio (SaaS). Para complementar
essa plataforma, existem 3 servios que podem ser considerados os mais importantes, como o
SQL Azure, Windows Azure AppFabric e o Windows Azure Storage. Esses servios podem
ser utilizados pelas aplicaes hospedadas na plataforma principal, como ilustrado na Figura
8 (CAMBIUCCI, 2011).
39
Worker Role Tem como funo processar todos os pedidos armazenados na fila
pelos web roles, sendo o responsvel por realizar as tarefas mais lentas. Pode em
alguns casos conectar-se a outras instncias.
VM Role So instncias que do acesso ao sistema operacional, pois representam a
maquina virtual criada pelo usurio.
Os web roles e worker roles permitem um maior grau de abstrao onde o usurio se
preocupa apenas com a aplicao, sem ser responsvel por atualizaes de infraestrutura ou
sistema operacional. Se for necessrio maior controle e customizao o VM role permite que o
usurio fique responsvel por essas atualizaes (CAMBIUCCI, 2011).
41
Fig. 11 Funcionamento do tables Fonte: http://i.msdn.microsoft.com/dynimg/IC501804.jpg
42
Existe ainda um quarto tipo de armazenamento chamado Drive que oferece uma
unidade NTFS22, permitindo a manipulao de arquivos. Ele montado a partir de um blob
ampliando as funcionalidades das aplicaes na nuvem (CAMBIUCCI, 2011).
22
NTFS - New Technology File System
23
Business intelligence Traduo inteligncia de negcios em ingls.
43
3.9.1.4 Windows Azure Virtual Network
O Virtual Network um servio que permite aumentar a capacidade das redes locais
utilizando os servios do Azure, fazendo com que ele seja uma extenso da rede com criao
de mquinas virtuais, atribuio endereos e configurao de DNS24 (COND, 2013). A
Figura 13 ilustra esse servio em funcionamento.
24
DNS Domain Name System
44
Fig. 14 Roteamento do Traffic Manager
Fonte: http://msdn.microsoft.com/pt-br/library/window
sazure/hh744833.aspx
O usurio solicita o servio atravs de um domnio, que aponta para o DNS do Traffic
Manager que usa o mtodo de balanceamento de carga previamente definido e o status do
monitoramento para escolher qual servio deve atender solicitao. Depois de feita a
escolha, ele resolve o DNS do servio que ir atender a requisio e retorna o IP25que o
usurio ir usar para ter o acesso direto (MICROSOFT, 2013).
46
3.9.2.1 Elastic Compute Cloud (EC2)
26
Framework uma abstrao que une cdigos comuns entre vrios projetos de software provendo uma
funcionalidade genrica.
27
Data Warehousing um sistema de computao utilizado para armazenar informaes relativas s atividades
de uma organizao em bancos de dados.
47
3.9.2.4 CloudFront
Como nos mostra o resultado do estudo de caso, o CloudFront se mostrou muito mais
eficiente do que os servios das outras duas empresas (cujo os nomes no foram revelados)
em que foram realizados os mesmos testes, mostrando assim ser uma boa opo de servio
para esse tipo de necessidade.
48
3.9.2.5 Simple DB (SDB)
49
3.9.2.8 Fulfillment Web Service (FWS)
28
HTTP um protocolo de comunicao.
29
SMTP o protocolo padro para envio de e-mails atravs da Internet.
50
3.9.2.11 Simple Email Service
3.9.2.12 CloudWatch
3.9.2.13 Route 53
O Virtual Private Cloud (VPC) um servio que permite aproveitar uma seo privada
e isolada da nuvem onde possvel executar recursos em uma rede virtual. Possibilita tambm
definir uma topologia de rede que se assemelhe a uma rede real, com o controle total sobre o
ambiente de rede virtual, incluindo a seleo do seu prprio intervalo de endereos IP 31,
30
DNS um sistema de gerenciamento de nomes hierrquico.
31
IP uma identificao de um dispositivo (computador, impressora, etc) em uma rede local ou pblica.
51
criao de sub-redes e configurao de tabelas de roteamento e gateways32de rede
(AMAZON, 2013).
32
Gateway uma mquina intermediria geralmente destinada a interligar redes, separar domnios de coliso,
ou mesmo traduzir protocolos.
33
Bucket um objeto abstrato cujo papel conter dados prprios de um usurio.
52
3.9.2.18 Import/Export
O Suporte Premium atua como um canal de suporte fornecido em tempo integral por
engenheiros de suporte tcnico. O servio ajuda clientes a utilizarem os produtos e recursos
fornecidos de forma correta (AMAZON, 2013).
3.9.2.20 RedShift
34
Data Warehouse - Depsito de dados digitais que serve para armazenar informaes detalhadas relativamente
a uma empresa, criando e organizando relatrios.
53
3.9.2.21 OpsWorks
O OpsWorks se encontra em sua verso beta at a data em que essa pesquisa foi feita.
Ele uma plataforma para o gerenciamento de qualquer escala ou complexidade na nuvem,
oferecendo uma facilidade no gerenciamento do ciclo de vida dos aplicativos, incluindo
provisionamento de recursos, gerenciamento de configurao, implementao de aplicativos,
atualizaes de software, monitoramento e controle de acesso (AMAZON, 2013).
O OpsWorks permite modelar e visualizar o aplicativo em camadas que definem como
configurar um conjunto de recursos gerenciados simultaneamente. Tambm possvel definir
a configurao de software para cada camada, como scripts de instalao e tarefas de
inicializao (GARCIA, 2013).
Ele muito parecido com o Elastic Beanstalk, onde ele oferece containers (IIS,
Node.JS, PHP, Ruby, Python e Tomcat) e preciso customizar esses containers, porm
existem limites para isso (GARCIA, 2013).
O OpsWorks, tem outro conceito (stacks e layers), em que possvel criar e configurar
containers como o necessrio. Gerenciando um ambiente com dezenas, centenas ou at
milhares de servidores, o OpsWorks como uma "receita de bolo", uma vez feita e funcional,
possvel replic-la quantas vezes for preciso (GARCIA, 2013).
54
3.9.3 Google App Engine
O Google App Engine (GAE) uma plataforma como servio que fornece um
ambiente de desenvolvimento para que aplicaes possam ser desenvolvidas e implementadas
na nuvem, acabando com a necessidade de manter servidores ativos. O ambiente de
desenvolvimento contm suporte ao Java, permitindo a criao do aplicativo usando
tecnologias Java padro, incluindo JVM35, servlets36 Java ou qualquer outra linguagem que
utilize um compilador com base na JVM. O GAE tambm disponibiliza um ambiente para
desenvolvimento em Python, PHP e GO37, essas duas ltimas de forma experimental
(GOOGLE, 2013). A Figura 17 ilustra a arquitetura de um sistema GAE.
35
JVM Java Virtual Machine.
36
Servlets um componente do lado servidor que gera dados HTML e XML para a camada de apresentao de
um aplicativo web.
37
GO Linguagem de programao lanada em 2009 pela Google.
55
No GAE no se tem a transparncia de onde sua aplicao foi implementada, ao
contrrio do AWS onde se tem a liberdade de escolha dos servidores a serem utilizados. As
interaes com essa plataforma so feitas atravs de servlets e chamadas a recursos externos a
sua aplicao, podem ter durao de no mximo trinta segundos por questes de
escalabilidade (GUIMARES, 2012).
56
3.9.3.2 Google App Engine Task Queue
O GAE Task Queue um servio que permite que sejam criadas filas de
processamento em segundo plano. A plataforma aloca o quanto for necessrio de recursos
para realizar o que foi configurado na task. O servio gratuito, porm o tempo de
processamento utilizado para a realizao da tarefa ser cobrado (GUIMARES, 2012).
O grupo ING uma organizao financeira que atua em todo o mundo, atende a 85
milhes de clientes privados, corporativos e institucionais contando com uma mo de obra em
torno de 107 mil pessoas em mais de quarenta pases na Europa, Amrica do Norte, Amrica
Latina, sia e Austrlia e possui 1.261 trilho de euros em ativos. O objetivo do ING ser o
banco preferencial para seus clientes, sendo a primeira escolha para todas as necessidades
bancrias e financeiras (ING, 2013).
O ING definiu sua estratgia para economias substanciais nos custos e, ao mesmo
tempo proporcionar um maior controle sobre infraestrutura de TI, maior estabilidade, e uma
melhor organizao da empresa. Para isso, o ING percebeu que o papel dos profissionais de
TI tinha que mudar com a adoo de um novo conceito para a gesto dessa rea, e que a
nuvem tem um impacto sobre todas as reas da empresa. Com isso foi dado um treinamento
com os princpios bsicos da virtualizao e computao em nuvem, garantindo que todos os
envolvidos tivessem habilidade para permitir que a organizao conseguisse realizar essa
transio com sucesso (ING, 2013). Alguns pontos que pretendiam ser alcanados com isso
so:
57
Transformar a rea de TI de um departamento tradicional para um provedor de
servios da prpria empresa;
Conseguir um baixo custo com o fornecedor de cloud computing;
Reduzir o risco e a complexidade que existe quando os dados no esto todos no
mesmo local;
Conseguir a virtualizao de plataformas, visando o avano da tecnologia;
Construir um modelo operacional em nuvem;
O cloud computing promete um modelo mais flexvel para os sistemas que colocam a
unidade de negcios ou o cliente no centro do processo. No entanto, isso no vai acontecer
repentinamente, pois as pessoas, processos e tecnologia precisam acompanhar esta mudana.
O processo para a implantao incluiu alteraes na forma de trabalho das pessoas, nos tipos
de habilidades necessrias para a organizao e a relao dos usurios com os gestores de TI.
O sucesso na preparao da organizao para lidar com o cloud computing est no fato de que
o ING no tratou a mudana para a nuvem como uma questo apenas de TI, mas sim
envolveu toda a organizao. Para conseguir isso, iniciou-se uma conscientizao em larga
escala e em torno desse objetivo (ING, 2013). A Figura 18 mostra um grfico de conscincia
do ING e do ciclo de vida do programa de educao ao longo do tempo.
58
O programa foi iniciado com um vdeo explicativo, mostrando que a empresa estava
passando por uma mudana tecnolgica e de processos em longo prazo. Ao mesmo tempo
iniciaram uma srie de atividades para divulgar esse treinamento aos funcionrios. Enquanto a
campanha de marketing interno estava em andamento, foi dado inicio transio de modelo
de TI. Os cursos de formao foram disponibilizados on-line, permitindo que os funcionrios
pudessem fazer os cursos em horrios convenientes para eles (ING, 2013).
Cada funcionrio, cujo cargo foi diretamente afetado por essa transio, participou do
programa de conscientizao e treinamento. Os gerentes de projeto, gerentes-chave de
negcios e gerentes de relacionamento participaram de um programa de conscientizao,
focando a necessidade do negcio e os principais conceitos. Assim como os profissionais de
TI, bem como usurios de negcios com um impacto muito grande em suas funes tambm
participaram do programa (ING, 2013).
O ING treinou cerca de mil e quinhentas pessoas para garantir a capacidade de
gerenciar a nova nuvem. Um livro contendo material de leitura adicional e estudos de caso foi
feito e entregue para aqueles que completaram o treinamento. Finalmente, uma simulao de
negcios virtual, permitiu aos participantes colocarem os conhecimentos obtidos em prtica
(ING, 2013).
Com cerca de 63 destinos em toda a Amrica do Sul, a GOL Linhas Areas se tornou
uma das maiores companhias areas do Brasil. Como a conexo internet ainda no est
disponvel nos avies, a companhia percebeu que os passageiros necessitavam de
entretenimento de bordo e criou uma soluo alinhada com a estratgia da empresa
(AMAZON, 2011).
O maior desafio foi determinar como gerenciar o contedo que controlado
automaticamente. Desde informaes sobre os acessos realizados pelo passageiro e
programao que conta com mais de 14 mil opes como vdeos, artigos de revistas, jogos,
contedo de esportes e notcias (AMAZON, 2011).
59
Um servidor instalado no avio, possui um ponto de acesso wireless38 e trabalha em
conjunto com os servidores centrais implementados na nuvem. Sempre que um avio
aterrissa, o servidor dele conecta-se a uma rede wireless do aeroporto, que se conecta ao
servidor para sincronizar o contedo. Esta arquitetura revolucionria na indstria area
(AMAZON, 2011).
A empresa conseguiu parceiros de negcios, permitindo que eles faam e gerenciem a
publicidade remotamente de acordo com o destino dos passageiros (AMAZON, 2011). A
Figura 19 mostra um diagrama de arquitetura a bordo e em terra funciona.
Quando a GOL decidiu criar esse sistema, a empresa percebeu que precisava de um
provedor web para que o projeto tivesse sucesso, pois se no houver tempo suficiente para
atualizar o servidor a bordo com um arquivo grande, ele pode ser carregado parcialmente no
aeroporto atual e o restante na prxima parada (AMAZON, 2011).
38
Wireless rede de computadores sem a necessidade do uso de cabos.
60
3.10.3 Peixe Urbano
O Peixe Urbano um portal que auxilia na descoberta dos melhores produtos, servios
e atividades de cada cidade. Para as empresas locais, funciona como uma ferramenta de
marketing que permite realizar uma grande divulgao alm da fidelizao de novos clientes.
Cada cidade tem o seu prprio site do Peixe Urbano, com ofertas selecionadas a sua regio,
cobrindo mais de 80 cidades do Brasil, Argentina, Mxico e Chile (AMAZON, 2011).
O site comeou com recursos limitados para investir em infraestrutura, mas j visavam
o potencial de rpido crescimento caso o servio fizesse sucesso. Com isso escolheram o
cloud computing pela necessidade de uma soluo que tivesse custo baixo e fosse altamente
escalvel. Atualmente o Peixe Urbano executa uma mdia de 180 instncias no EC2, servio
de instncias do AWS, simultaneamente. A capacidade de escalabilidade garante a
estabilidade do site mesmo com usos extremos, em que em alguns casos a variao de pico
ultrapassa os 1000%. Utilizando o cloud computing a empresa evitou a despesa investir em
hardware, se concentrando apenas na procura de ofertas para seus usurios (AMAZON,
2011).
3.10.4 Foursquare
O Foursquare, que uma rede social baseada na localizao dos usurios, conta hoje
com de 10 milhes de contas ativas. atravs de um aplicativo para smartphones que os
usurios trocam dicas compartilham lugares por meio de sua localizao, registrando em torno
de 5 milhes de check- ins por dia. Utilizando o Amazon Elastic MapReduce, servio do
AWS, possvel realizar anlises como relatrios dirios sobre o uso de cada cliente, anlise
de tendncia a longo prazo, avaliao de novos recursos dentre outros para melhor entender e
atender seus clientes (AMAZON, 2012).
A facilidade de se fazer toda essa anlise em um provedor de nuvem simplifica o
processo de implantao e gerenciamento principalmente por causa da flexibilidade,
permitindo que os grupos de dados que tenham maior necessidade de serem analisados sejam
colocados rapidamente para anlise. Os engenheiros podem executar um cluster dedicado a
testar novas funcionalidades e a equipe de anlise de dados pode expandir dinamicamente seu
conjunto de relatrios durante os perodos de maior necessidade (AMAZON, 2012).
61
O fato de a cobrana ser feita sobre os recursos utilizados faz com que os custos sejam
reduzidos significativamente usando clusters transitrios para anlises. Alm disso, a nuvem
permite que o Foursquare evite utilizar recursos caros para manter seu grupo de anlises
utilizando a instncias disponveis (AMAZON, 2012).
Recentemente o Foursquare decidiu que iria gastar mais de 1 milho de dlares com
instncias reservadas por ano, conseguindo com isso reduzir os custos em 35%. Devido baixa
nos preos praticados pela AWS a economia foi ainda maior, pois a queda nos preos aliada
com o uso de instncias far o total de reduo dos custos chegar a 53%. Com o uso da nuvem
o Foursquare conseguiu no apenas diminuir seus gastos como tambm o tempo de
processamento de dados sem a necessidade de desenvolver aplicativos adicionais para anlise
dos dados mais urgentes (AMAZON, 2012).
62
3.12 Implantao
A implantao foi feita pelo servio Elastic Beanstalk, que permite criar uma nova
aplicao e fazer o deploy do projeto compactado de maneira bem prtica. Existem outras
maneiras de se fazer o deploy, como por exemplo, utilizar o GIT e o AWS Elastic Beanstalk
APIs. Essa por envolver linhas de comando, o deploy se torna um pouco mais complexo,
portanto optou-se em no utilizar. Outra maneira de fazer o deploy seria utilizar o plugin de
cdigo aberto para o Eclipse Java IDE. Porm esse seria apenas para aplicaes java web que
no foi o caso da aplicao desenvolvida.
Ao iniciar uma nova aplicao foi escolhida a plataforma PHP, pois foi a linguagem
utilizada no desenvolvimento da aplicao. No ambiente criado, foi instanciado uma instncia
Linux 64 bits no EC2 e foi criado um bucket no S3 onde a aplicao foi armazenada. A Figura
20 ilustra o ambiente criado.
O Elastic Beanstalk torna a implantao bastante simples, pois possui uma interface
amigvel e sem complicaes. No entanto a url oferecida para acesso aplicao no
adequada para o uso do usurio final. Para esse problema utilizou-se outro servio da AWS
chamado Route 53. Com ele foi possvel associar um domnio criado em qualquer outro site a
aplicao que foi implantada. A Figura 21 ilustra a arquitetura do Elastic Beanstalk.
63
Fig. 21 Arquitetura Elastic Beanstalk Fonte: Elaborado pelo autor.
64
Para conexo ao banco foi necessrio informar o usurio e senha que foi definida
inicialmente na criao da instncia e a manipulao do banco e criao das tabelas foram
feitos atravs do NetBeans, por meio de uma conexo remota. A figura 22 mostra essa
configurao da IDE para o acesso.
Fig. 23 Configurao da IDE para acesso ao RDS. Fonte: Elaborado pelo autor.
Aps realizar as configuraes acima foi possvel ter acesso e criar as tabelas
necessrias para uso da aplicao. As funcionalidades oferecidas pelo RDS permitem criar as
tabelas de duas formas. A primeira por meio da interface do Netbeans e a segunda por meio
de scripts SQL.
Para um melhor entendimento sobre a estrutura do Elastic Beanstalk, foi elaborado um
diagrama para demonstrao. A Figura
A migrao entre regies importante quando se deseja utilizar alguma outra regio
que esteja mais prxima ou que oferea uma latncia menor.
A migrao do Elastic Block Store (EBS) pode ser feita por um recurso chamado EBS
Snapshot Copy que permite copiar os snapshots de discos EBS entre regies diferentes. Esse
recurso facilita o uso de mltiplas regies AWS para realizar uma expanso geogrfica,
migrao de data centers e disaster recovery (AMAZON, 2013). A Figura 24 ilustra uma
cpia de EBS.
65
Fig. 24 Efetuando copia de um snaphost para outra regio. Fonte: Elaborado pelo autor.
Pode-se observar que um snaphost de uma instncia de So Paulo pode ser copiado
para qualquer outra regio.
66
3.14 Resultados
Aps muito estudo e pesquisa foi possvel enfim compreender mais a fundo o que
cloud computing e como realizar a escolha do provedor de servios. A partir desse
conhecimento foi desenvolvida uma aplicao para a demonstrao prtica dos recursos
oferecidos por esse modelo computacional. A Figura 25 ilustra a aplicao criada.
67
Fig. 26 Arquitetura de usurio utilizando os recursos AWS Fonte: Elaborado pelo autor
Pode-se observar que o usurio entra com o endereo da aplicao, o Route 53 faz o
direcionamento do endereo externo para a aplicao, o Elastic Load Balancing faz a
distribuio de carga entre as instncias EC2 e o Auto Scaling finca encarregado de criar e
excluir instncias conforme a demanda da aplicao. Outros recursos que utilizados tambm
foi o S3 e o banco de dados RDS.
. As linguagens utilizadas para o desenvolvimento da aplicao foram o PHP, para
processar as requisies do aplicativo, o JavaScript para validao dos formulrios, o JQuery
e seu plugin JCrop para localizao dinmica dos lbuns e recorte de fotos.
Com o uso do SDK39 para PHP fornecido pela AWS foi possvel que a aplicao
realizasse o acesso ao S3. Esse SDK um conjunto de classes PHP que elimina a
complexidade de cdigo em se conectar aos servios da AWS.
A figura 24 mostra como acessar esse servio para a criao de um bucket no S3.
39
SDK- Sigla de Software Development Kit.
68
Fig. 27 Cdigo PHP pra criao do bucket no S3 Fonte: Elaborado pelo autor.
Com isso possvel que cada usurio tenha seus arquivos protegidos e separados dos
demais, pois cada usurio registrado na aplicao tem seu prprio bucket. Dentro deles
possvel a criao de lbuns se assim solicitados pelos usurios
69
Para a criao do lbum, foi utilizado o mtodo putObject do SDK. Ele faz a
verificao da existncia desse lbum; caso ele exista, os arquivos so gravados nele, caso
contrrio, o lbum criado. A Figura 29 ilustra a utilizao mtodo.
Fig. 29 Cdigo PHP para criao de lbuns e arquivos. Fonte: Elaborado pelo autor.
Esse mtodo retorna uma reposta, pois caso o arquivo no seja gravado retornada
uma reposta de falha e a quantidade de fotos que no foram gravadas, do contrrio uma
resposta positiva devolvida. A Figura 30 ilustra o resultado conseguido com esse mtodo.
Fig. 30 lbuns e fotos criados pela aplicao Fonte: Elaborado pelo autor.
70
Para realizar a excluso dos arquivos foi utilizada a funo unlink. Essa funo
recebe o diretrio e nome do arquivo a ser excludo e retorna uma reposta de sucesso ou falha.
O cdigo ilustrado a na Figura 31.
Fig. 31 Cdigo PHP para excluso de lbuns e arquivos. Fonte: Elaborado pelo autor.
40
PDO O PHP Data Objects um modo de acesso base de dados em PHP.
71
Fig. 32 Painel de configurao do Elastic Beanstalk Fonte: Elaborado pelo autor.
72
4 DISCUSSO DOS RESULTADOS
Com o estudo dos conceitos e servios da computao em nuvem, foi possvel criar
uma aplicao que utilizasse ambos. Configurando o Elastic Beanstalk para a criao de
instncias adicionais no EC2 conseguimos garantir que o servidor ficasse sobrecarregado e
houvesse o risco de a aplicao ficar inoperante.
Pelo fato de a aplicao desenvolvida no ser pblica e por isso no contar com um
grande nmero de acessos, a escalabilidade foi configurada com um valor mximo de 25% e
mnimo de 10% de utilizao da CPU. Lembrando que a instncia escolhida a t1.micro e
possui uma baixa capacidade de processamento, sendo que a quantidade de processamento
pode ser facilmente atingida.
No comeo foi simulado um acesso aplicao com a configurao feita para no
criar instncias adicionais. O resultado foi que o processamento ultrapassou os 25%
estipulados e continuou subindo, como ocorre atualmente no modelo convencional de
computao. Na Figura 33 ilustrada a instncia.
Observa-se que existe apenas uma instncia EC2 criada e executando na nuvem, por
isso a aplicao corre o risco de ficar indisponvel caso acontea uma falha nela e no exista
outra para assumir o processamento. As Figuras 34 e 35 ilustram as estatsticas de utilizao
desta instncia.
73
Fig. 34 Painel de estatstica da instncia Fonte: Elaborado pelo autor.
Fig. 35 Estatsticas de uso da aplicao com uma instncia. Fonte: Elaborado pelo autor.
74
Fig. 36 Configuraes de escalabilidade. Fonte: Elaborado pelo autor.
Em seguida foi realizado um upload de vrios arquivos de fotos que geraram um uso
da CPU de 31% conforme a figura 37.
Fig. 37 Estatsticas de uso da aplicao com uma instncia Fonte: Elaborado pelo autor.
Imediatamente uma nova instncia comeou a ser inicializada no EC2, para que esse
valor se mantivesse dentro do estipulado na configurao anterior.
O recurso responsvel para que esse escalonamento acontecesse foi o Auto Scaling,
que permite que os servidores do EC2 aumentem ou diminuam os recursos automaticamente
de acordo com definies estabelecidas previamente para a aplicao. A Figura 38 ilustra a
criao automtica desta segunda instncia.
75
Fig. 38 Criao da segunda instncia. Fonte: Elaborado pelo autor.
Quando esse valor fica, por um certo perodo, dentro dos valores escolhidos de
processamento, automaticamente a instncia eliminada. A Figura 39 mostra as estatsticas
do uso das duas instncias.
Fig. 39 Estatsticas de uso da aplicao com duas instncias. Fonte: Prprio autor.
76
5 CONSIDERAES FINAIS
77
REFERNCIAS
AMAZON; Facilite migrao entre regies, expanso geogrfica e disaster recovery com
o EBS Snapshot Copy. Disponvel em: < http://aws.typepad.com/brasil/2012/12/facilite-
migracao-entre-regioes-expansao-geografica-e-disaster-recovery-com-o-ebs-snapshot-
copy.html> Acesso em 14 de novembro de 2013.
78
AMAZON; Amazon Route 53. 2013. Disponvel em: <http://aws.amazon.com/pt/route53/>
acesso em 21de julho de 2013.
AMAZON; Amazon Simple DB. 2013. Disponvel em:
<http://aws.amazon.com/pt/simpledb/> Acesso em 19 de julho de 2013.
79
BARBOLO, Rafael. Conhea os servios em nuvem oferecidos pela Amazon. 2011.
Disponvel em: <http://www.bitabit.eng.br/2011/02/15/conheca-os-servicos-em-nuvem-
oferecidos-pela-amazon-web-services/> acesso em 19 de julho de 2013.
CLOUD COMPUTING USE CASES GROUP; Use Cases. 2010. Disponvel em:
<http://cloudusecases.org/Cloud_Computing_Use_Cases_Whitepaper-4_0.odt>. Acesso em:
03 de junho de 2013.
COND, Luciano.; Virtual Network agora tem suporte para Windows RRAS e Conexo
Ponto para Rede Virtual. 2013. Disponvel em:
<http://blogs.msdn.com/b/conde/archive/2013/05/06/an-250-ncio-virtual-networks-agora-
suporta-windows-rras-e-conex-227-o-ponto-para-rede-virtual.aspx> Acesso em: 27 de agosto
de 2013.
FROST & SULLIVAN; Comparing CDN Performance: Amazon Cloud Fronts Last Mile
Testing Results. 2013. Disponvel em:
<http://media.amazonwebservices.com/FS_WP_AWS_CDN_CloudFront.pdf> Acesso em 19
de julho de 2013.
GIL, A.C.; Mtodos e Tcnicas de Pesquisa Social. 5. Ed. So Paulo. Atlas. 2007.
GOODMAN, D.; JavaScript - Guia definitivo. 4 Ed. OReilly & Associates, Inc.2002.
80
GUIMARES, Leandro;. Sua aplicao Java nas nuvens: de conceitos a exemplos em
AWS e Google App Engine. 2012. Disponvel em:
<http://www.infoq.com/br/presentations/java-nuvem-aws-gae> Acesso em: 11 de setembro de
2013.
READHAT. Why the future of the cloud is open. 2012. Disponvel em:
<http://www.redhat.com/rhecm/restrhecm/jcr/repository/collaboration/jcr:system/jcr:versionS
torage/7dc14d8f0a0526016894ca8fec26281a/4/jcr:frozenNode/rh:pdfFile.pdf>. Acesso em:
03 de junho de 2013.
ROGER, Grimes; Rogue employees and clueless users can cause even more damage than
the bad guys outside the gate. 2010. Disponvel em: <http://www.infoworld.com/d/security-
central/the-true-extent-insider-security-threats-281>. Acesso em: 03 de junho de 2013.
SNOWMAN, G. 2010. Diferena nos tipos de Computao nas Nuvens. Disponvel em:
<http://www.solidq.com/sqj/pt/Documents/2010_August_Issue/SQJ%20002.pdf>. Acesso
em: 28 de maio de 2013.
81
TAURION, C.; Cloud Computing: Transformando o mundo da Tecnologia da
Informao. Editora Brasport. Rio de Janeiro 2009.
TAURION, C.; Bate papo sobre Cloud Computing. 2009. Disponvel em:
<https://www.ibm.com/developerworks/community/blogs/ctaurion/entry/seguran_c3_a7a_em
_cloud_computing3?lang=en>. Acesso em: 06 de junho de 2013.
82
APNDICES
APNDICE 1
CONFIGURAO DO REPOSITRIO SUBVERSION
Configurao do repositrio subversion.
1. necessrio ter uma conta no Google. Aps a criao dela, acessar o endereo
https://code.google.com/intl/pt-BR/ e fazer o login.
2. Aps isso, na tela seguinte ir at a opo Create a new project como ilustrado na
Figura 01.
Aps seguir esses passos, o repositrio estar devidamente configurado para ser usado
com o SVN.
APNDICE 2
CONFIGURAO DO CONTROLE D VERSO NO
NETBEANS
Configurao do controle de verso no NetBeans
A IDE de desenvolvimento escolhida foi o NetBeans IDE 7.3.1 por ser uma
ferramenta j conhecida pelos membros do projeto. A seguir sero apresentados os passos
utilizados para configurao do SNV no NetBeans, partindo do pressuposto de que o mesmo
j esteja instalado. O tutorial de criao do repositrio pr-requisito para que seja possvel
prosseguir.
5. Por fim escolha o nome e a localizao onde o projeto ser salvo. Vale lembrar que
precisa ser na mesma pasta onde foi configurado anteriormente o repositrio
(c:\xampp\htdocs). Feito isso, est concluda a parte de configurao do repositrio e
criao do projeto.
1. Clicar na aba Services no console de servios da AWS e escolher o Route 53, aps a
janela do servio se abrir clicar em Create Hosted Zone como ilustrado na Figura 09.
2. Na Figura 10, no canto direito h o campo Domain Name, nele ser colocado o
domnio criado, no caso awstcc.tk. Aps isso clicar em Create Hosted Zone.
4. Nesta tela ilustrada na Figura 12, no canto superior esquerdo, clicar em Create record
set. Do lado direito aparecero vrios campos. O campo Name onde ser colocado
o prefixo para o domnio, na Figura 12 foram criados trs registros, um com o prefixo
www, outro com * e outro em branco, assim o domnio ser reconhecido pelo
servio de vrias maneiras. No campo Alias, escolha a opo Yes, uma lista ir
aparecer contendo todas as instncias ativas da conta.
Fig. 14 Acessando aplicao atravs do Route 53. Fonte: Elaborado pelo autor.
APNDICE 4
AMAZON ELASTIC BEANSTALK
Amazon Elastic Beanstalk
8. Na Figura 20 o Beanstalk dar duas opes. Onde a primeira permite a criao de uma
instncia no RDS e a segunda permite colocar esse ambiente dentro de uma rede
virtual com o VPC.
Fig. 20 Configurando recursos adicionais. Fonte: Elaborado pelo autor.
Fig. 21 Configurando a instncia usada pelo Elastic Beanstalk. Fonte: Elaborado pelo autor.
10. Aps os passos anteriores o ambiente est configurado. A Figura 22 mostra a tela
inicial do Beanstalk, onde sero listados todos os ambientes existentes.
Fig. 24 Aplicao sendo executada no Elastic Beanstalk. Fonte: Elaborado pelo autor.
Na opo Configuration possvel escolher as configuraes de escalabilidade, tipo da
instncia, configuraes de notificao, configuraes de logs e de rede. A Figura 25
demostra essas configuraes.
O EC2 o servio que oferece instncias para que sejam usadas em uma rede virtual
ou por aplicaes que sejam um SaaS e portanto iro utilizar o processamento delas. Este
tutorial mostra como criar e acessar as instncias tanto para Linux, quanto para Windows.
Fig. 26 Tela inicial do Elastic Cloud Computing. Fonte: Elaborado pelo autor.
7. Agora escolher um nome para key pair, que a chave que ser usada para acesso
instncia como demostrado na Figura 33.
10. As Figuras 36 e 37 ilustram a instncia que foi criada, mas leva alguns minutos para
que ela esteja inicializada com suas configuraes.
Fig. 36 Instncia sendo criada no Elastic Cloud Compute. Fonte: Elaborado pelo autor.
Fig. 37 Instncia criada no Elastic Cloud Compute. Fonte: Elaborado pelo autor.
11. Para se conectar instncia, aps selecion-la clicar com o boto direito sobre ela e
em seguida no menu Connect como ilustrado na Figura 38.
Fig. 38 Menu de opes da instncia. Fonte: Elaborado pelo autor.
APNDICE 6
CONEXO A UMA INSTNCIA LINUX
Conexo a uma instncia Linux
Essa parte do tutorial assume que o usurio tenha seguido at no apndice 5 e que a
instncia escolhida tenha sido com o sistema operacional Linux.
1. Aps selecionar a opo Connect, na tela que se abriu selecionar a segunda opo
Connect from your browser using the Java SSH Client, lembrando que necessrio
ter o Java instalado no computador. No campo Private key coloque o caminho de
onde o arquivo da chave foi salvo e clique em Launch SSH Client.A Figura 39 ilustra
essa configurao.
Fig. 39 Tela principal de conexo a uma instncia Linux. Fonte: Elaborado pelo autor.
2. Aps isso ele instalar localmente o mindTerm, que o cliente que dar acesso ao
console da sua instncia Linux. A Figura 40 demostra o mindTerm dando acesso a
uma instncia Linux.
Fig. 40 mindTerm dando acesso instncia Linux. Fonte: Elaborado pelo autor.
Essa parte do tutorial assume que o usurio tenha seguido at o passo 10 e que a
instncia escolhida tenha sido com o sistema operacional Windows.
1. Aps selecionar a opo Connect, na tela que se abriu selecione a opo Log in with
your credentials e clique em Retrieve Password como demostrado na Figura 41.
Fig. 41 Tela de conexo a uma instncia Windows. Fonte: Elaborado pelo autor.
2. Clique no boto Escolher Arquivo e selecione sua pair key e em seguida clique em
Decrypt Password como ilustrado na Figura 42.
Fig. 42 Decodificando a key pair para acesso. Fonte: Elaborado pelo autor.
Fig. 45 Colocando Usurio e senha para acesso. Fonte: Elaborado pelo autor.
Aps seguir esses passos, ser possvel o acesso instncia criada, conforme a a
Figura 47.
Fig. 47 Instncia acessada pelo acesso remoto do Windows. Fonte: Elaborado pelo autor.
O Amazon RDS o servio que fornece uma instncia de banco de dados na nuvem.
Este tutorial mostra como criar uma instncia.
7. Por fim sero exibidas todas as configuraes selecionadas para a criao da instncia
como ilustrado na Figura 54.
Fig. 54 Resumo das configuraes escolhidas. Fonte: Elaborado pelo autor.
Com os passos anteriores concludos, aguardar alguns minutos at que ela seja criada
nos servidores da AWS. A Figura 55 demostra o RDS sendo criado e a Figura 55 ilustra o
RDS Criado.
.
Fig. 55 Instncia sendo criada no Amazon RDS. Fonte: Elaborado pelo autor.
Fig. 56 Instncia criada no Amazon RDS. Fonte: Elaborado pelo autor.
2. Na tela seguinte demostrado na Figura 59, sero pedidos o nome e a regio do bucket,
aps colocar essas informaes, clicar em Create.
Fig. 60 Relao de buckets criados no Amazon S3. Fonte: Elaborado pelo autor.