Sunteți pe pagina 1din 11

CLOUD COMPUTING

PEDRO MORHY BORGES LEAL

MAC0412 - Organizao de Computadores ca Prof. Alfredo Goldman 7 de dezembro de 2010

CLOUD COMPUTING

1. Introducao Com o grande avano da tecnologia de processadores, armazenamento e transmisso c a de dados surgiu a possibilidade do modelo chamado Cloud Computing. O custo de atualizar um clusters de servidores muito grande, j que o que se compra hoje daqui e a a um ano j est ultrapassado e com avano da velocidade e qualidade de transmisso a a c a de dados na Internet trouxe um novo interesse, por que ao invs de processar programas e no computador local no executa-los em um lugar remoto por um baixo custo, e ainda a mais, se precisar de mais performance e armazenamento isso rapidamente fornecido, e ou se o inverso, ter a possibilidade de desalojar recursos rapidamente fosse obtida? Cloud Computing disponibilizao de recursos e servios necessrios conforme a dee ca c a manda requer. Ento, por exemplo, ao lanar um portal na Internet, ao invs de pagar a c e uma mensalidade e congurao xa em um servidor, o usurio pode pegar a menor conca a gurao existente em uma maquina virtual na nuvem e, se comear a ter mais acessos ca c e precisar de mais performance, utilizar a tela de gerenciamento na sua conta na cloud para realizar a operao de dobrar a memria principal e seu processador a partir da ca o prxima hora. E depois que seu portal estiver fazendo sucesso ele percebe que durante o a noite ocorre muitos acessos, enquanto que de manh no, ento ele pode congurar a a a a cloud utilizar determinados recursos em diferentes horas do dia, atendendo a demanda e economizando gastos1. Os diversos benef cios trazidos pela computao na nuvem, que sero apresentados na ca a seo 2, vem atraindo muitas pessoas. O exemplo acima um deles, hoje muito ca e e mais fcil comear um negcio sem muito recursos do que antigamente, no preciso a c o a e prever o quanto de servidores sero necessrios at o nal do ano dependendo do xito a a e e obtido. Na seo 3 temos a descrio de como a arquitetura implementada pelas provedoras de ca ca e cloud. Cloud Computing no veio do nada, ela se baseia e usa algumas tecnologias que a j existem no mercado a algum tempo, na seo 6 vemos a descrio de algumas delas e a ca ca a relao delas com a nuvem. ca Diferentes de tipos de servios so oferecidos aos usurios pelos provedores, tudo depende c a a da necessidade dele. Temos trs siglas que representam cada tipo de servio: IaaS, PaaS e c e SaaS, na seo 4 temos o signicado e a descrio de cada uma delas. Alm desse tipos ca ca e de servios temos ainda os tipos de cloud oferecidas, a mais conhecida a Cloud Pblica, c e u que a principal diferena das outras o compartilhamento de recursos. As caracter c e sticas de cada uma so mostradas na seo 5. Aps as descries gerais de uma Cloud, seo a ca o co ca 7, vemos uma breve descrio dos desaos em pesquisa que a computao na nuvem tem ca ca que enfrentar. No se sabe ao certo quando foi o surgimento do Cloud Computing e nem do nome, em a 2006 ganhou popularidade quando o CEO da Google descreveu seu modelo de negcios o com ele, mas em 2010 inmeros servios na nuvem surgira.Na seo 9 temos um teste u c ca de performance das principais Clouds dispon veis no mercado atualmente.
Na Amazon atualmente no h uma modo automtico para fazer isso, mas pode ser feito facilmente a a a com um script.
1

PEDRO MORHY BORGES LEAL

Esse trabalho foi baseado no artigo Cloud computing: state-of-the-art and challenges escritos por Qi Zhang, Lu Cheng e Raouf Boutaba, e foi originalmente publicado no Journal of Internet Services and Applications em Janeiro de 2010. 2. Benef cios O grande numero de benef cios que Cloud Computing tem sobre os modelos antigos vem atraindo a ateno no mundo. Todos os benef ca cios so relacionados entre si, abaixo eles a so apresentados[2]: a Baixo Investimento Inicial : Descritos no exemplo da introduo, o usurio no precisa ca a a comprar um servidor para ele com as conguraes baseadas na perspectiva sobre a co quantidade de uso do novo portal on-line, que desenvolveu, no ano. Com pouco ele pode contratar uma pequena maquina virtual em um dos provedores de servio e se o portal c zer sucesso ele pede para melhorar os recursos. O custo por hora de uma maquina virtual bem simples na Amazon EC2 de U$0.02[3], ou seja, em um ms utilizando 24 e e horas por dia temos aproximadamente U$15.00. Baixo Custo: A agilidade na alocao e desalocao de recursos torna a utilizao deles ca ca ca em uma forma tima, no desperdiando dinheiro e nem perdendo usurios nais por o a c a falta deles. Aumento de armazenamento: O limite de armazenamento no depende mais da quana tidade de servidores que a empresa tenha, no tamanho do banco de dados que possui internamente, ou no espao f c sico interno. Podemos pensar que no existe limite de a armazenamento, sempre que precisar de mais armazenamento s alocar recursos na e o cloud. Escalabilidade: O provedor de servios possui uma grande quantidade de recursos para c casos em que o usurio precisa rapidamente aumenta-los. Isso traz mais agilidade e a segurana ao usurio. Nos modelos antigos a demora muito maior, o que traz muitos c a e problemas e por conseqncia mais gastos. ue Mobilidade: O acesso ao gerenciamento da nuvem muito simples, geralmente sobre uma e interface web, possibilitando o acesso de qualquer lugar e qualquer dispositivo. Equipe de TI com outro foco: Os problemas de hardware e alocao de recursos agora ca so problemas do provedor de servios, o foco da equipe agora pode ser direcionado a a c outro assunto. 3. A arquitetura em camadas O ambiente de um servidor de Cloud Computing geralmente divida em camadas, cada e camada tem sua prpria responsabilidade e no precisa e nem tem acesso as responsabilio a dades das outras camadas. Isso nos traz o benef de baixo acoplamento, o que facilita cio utilizao de diferentes aplicaoes para cada camada j que a implementao delas no ca c a ca a afeta muito como as camadas se comunicam. Abaixo vemos os detalhes de cada uma delas:

CLOUD COMPUTING

Camada de Hardware: responsvel pelos recursos f a sicos como servidores, switches, roteador, etc. Ento nesta camada preocupaes como congurao, tolerncia a falhas, a co ca a consumo de energia e resfriamento precisam ser levadas em conta. Geralmente os provedores de nuvem compram containers que j possuem toda infra-estrutura de um servidor, a s preciso plugar o cabo de rede e energia e pronto. oe Camada de Infra-estrutura: responsvel pelo gerenciamento de recursos dispon a veis. Utilizando a virtualizao essa camada abstrai o hardware. Alguns softwares de virca tualizao so o Xen, que utilizada pela Amazon EC2[4] e Rackspace[5], KVM e o ca a e VMWare. A virtualizao que traz a vantagem de alocar e desalocar recursos abstrataca mente. Camada de Plataforma: aqui onde o sistemas operacionais esto localizados e junto e a com eles as ferramentas para o software rodar como interpretadores e banco de dados. Isso serve para facilitar a implantao de alguma aplicao na cloud. Ento caso o ca ca a queira colocar uma aplicao web em Java, essa camada possue todas as ferramentes e ca conrguraes necessrias para esse processo ser facilmente executado. co a Camada de Software: Est localizado as aplicaes que rodam na cloud. S depende a co o de como a camada de plataforma est implementada para rodar e ter determinados a comportamentos, como se aproveitar da elasticidade de recursos, ou de um determinado banco de dados.

4. Modelo de Negocios Os modelos de negcios utilizados se baseia arquitetura de camadas, temos trs deles: o e Infrastructure as a Service(IaaS), Platform as a Service(PaaS) and Software as a Service(SaaS). Cada um tem determinado servio a ser oferecido ao usurio. Na gura c a 1 temos a representao de cada uma, junto com o servio concreto fornecido do lado ca c direito e do lado esquerdo exemplos de implementaes. co

Figura 1. Modelos de Servios Oferecidos c

PEDRO MORHY BORGES LEAL

A primeiro modelo o SaaS que fornece aplicaes prontas para usurios nais. O e co a Google Docs2 um exemplo, o usurio utiliza um editor de texto na nuvem. E hoje e a em dia visto diversos softwares que s eram utilizados nas prprias maquinas nos e o o usurios nais so vistos implementados na nuvem, alm do prprio Google Docs, temos a a e o o OnLive3, que fornece jogos para serem executados na nuvem, o Animoto4, que a partir de algumas fotos feito um video com elas, efeitos visuais e sonros, e automaticamente e o armazenado na conta do usurio para ele poder compartilhar com que quiser. a Logo depois temos o PaaS, que fornece ao usurio alguma plataforma montada pronta a para receber um tipo de aplicao desenvolvida. Por exemplo, o Google App Engine[6] ca oferece ao usurio arcabouos de Java e Python, ento o usurio s precisa colocar uma a c a a o aplicao desenvolvida em uma dessas linguagens e, sem a necessidade de instalar o ca banco de dados e o framework, a aplicao j pode entrar em produo. A Microsoft ca a ca tambm tem um servio com esse modelo chamado Microsoft Azure. e c E por m temos o IaaS que fornece maquinas virtuais ao usurio. O usurio tem a a a possibilidade de escolher suas conguraes iniciais de VMs e a partir de uma interface co tem a possibilidade de gerenciar essas maquinas virtuais. Na gura 2 temos um exemplo de uma tela de gerenciamento da Cloud da Amazon, uma das provedores de IaaS. Nela temos diversas informaes sobra as maquinas virtuais dos usurios, como qual a sua co a e congurao ou o estado atual dela: iniciando, ligada, desligada ou desligando. Vale ca lembrar que apenas quando a maquina est no estado ligada que ela cobrada do a e e usurio. a 5. Tipos de Cloud Existem diferentes tipos de implementaes de Computao em Nuvem. Os exemplos co ca descritos at o momento se referiam ` Clouds P blicas, a mais utilizada atualmente. e a u Porm ela possui algumas desvantagens que para algumas aplicaes so bem cr e co a ticas. O controle de processamento de dados no muito eciente, j que provavelmente mais a e a de um usurio estar dividindo recursos de uma mesma maquina com outros usurios e a a a caso ocorra uma sobrecarga de tarefas, o servio para o usurio car mais lento do que c a a o normal. Alm disso existe uma escassez de congurao de segurana que so muito e ca c a importantes para aqueles tipos de aplicaes. co Para tentar solucionar esses problemas, um modo oferecido a Cloud Privada, que e no compartilha recurso com outros usurio. Ainda sim podemos ter diversas aplicaes, a a co mas o usurio o mesmo, e ele que controla como os recursos so compartilhados entre a a e a suas aplicaes. Nesse caso, o ambiente muito mais controlado porm perde as grandes co e e vantagens que a Cloud Pblica traz, como o investimento inicial muito baixo e a alta u escalabilidade. Uma opo para ter o benef das duas mencionadas acima, utilizar a chama Cloud ca cio e H brida. Parte dela uma Cloud Privada, onde o usurio tem o seu ambiente controlado e a
2 3

http://docs.google.com/ http://www.onlive.com/ 4 http://animoto.com/

CLOUD COMPUTING

Figura 2. Tela de Gerenciamento da Amazon EC2 mas se precisar escalar ou possuir algumas tarefas que no so to cr a a a ticas e podem ser executadas em um ambiente de recursos compartilhados s utilizar a parte pblica, e o u que utiliza servios de uma provedora de Cloud Pblica. c u Quando o problema da Cloud Pblica for a falta de conguraes e segurana, a alternau co c tiva utilizar as chamadas Virtual Private Clouds que funciona como uma camada e em cima da pblica, formando uma casca de proteo a mais e com as conguraes que u ca co o usurio precisar. a

6. Tecnologias Relacionadas A Computao na Nuvem tem uma certa relao com diversas tecnologias encontradas ca ca atualmente. A primeira delas a Computao em Grade, ambas se utilizam da idia e ca e de computao distribu ca da, onde vrios computadores so utilizados para realizar um a a mesmo objetivo. A diferena que a Cloud utiliza-se da tecnologia de virtualizao para c e ca dividir recursos e utilizar-los de uma forma dinmica. a Cloud Computing emprega um modelo chamado Utility Computing, que traz a idia de e prover recursos sob demanda e apenas pagar pelo que utiliza, ao invs de pagar uma e mensalidade xa. Do mesmo modo que ns pagamos apenas e energia que utilizamos o em nossas casas, esse modelo aplica isso para a computao. ca

PEDRO MORHY BORGES LEAL

Virtualizao a tecnologia base de cloud. Ela abstrai a camada de hardware para as ca e aplicaes de alto-n permitindo ao usurio a alocao de recursos dinmicos. A partir co vel a ca a dela que a computao na nuvem traz algumas vantagens como a escalabilidade. ca 7. Caracter sticas gerais Algumas caracter sticas que a difere das tecnologias tradicionais so descritas abaixo: a Recursos Compartilhados: Uma grande quantidade de recursos esto dispon a veis em um provedor de servios nas nuvens. Essa quantidade compartilhada por diversos usurios. c e a Esses recursos dinmicos so muito uteis tambm para o provedor realizar suas tarefas a a e de gerenciamento. Unico local de acesso para diversos dispositivos: Como o gerenciamento de uma cloud geralmente localizada na web, ela pode ser acessada de qualquer lugar e por qualquer e dispositivo, como smartphones. Geo-Localizao: Algumas provedoras de nuvem distribuem seus servidores em diversas ca regies do mundo para atingir uma performance melhor a determinados usurios e uma o a maior segurana no seu servio. A Amazon EC2, por exemplo, tem centros de dados c c localizados no leste e oeste dos Estados Unidos, na Irlanda e em Singapura. Fornecimento de Recursos Dinmicos: O recursos oferecidos pela nuvem so caracterizaa a dos por serem altamente dinmicos. Eles podem aumentar e diminuir conforme necessita a o usurio. Isso traz uma reduo de custos a ele, j que o que ele usa especializado na a ca a e demanda que possu . Auto-organizao: Um provedor de cloud deve ter recursos inteligentes para resolver ca problemas que surgem. Se em um determinado momento uma grande quantidade de acessos e utilizao de processamento, por exemplo, ocorre e os servidores no esto ca a a preparados para isso, a nuvem deve se auto-organizar para no ter tantos problemas. a Em uma grande data center situaes como essa so comuns. co a Utility Computing: Como mencionado anteriormente, a cloud s cobra pelo o que o o usurio utiliza e fornece recursos em demanda. a 8. Pesquisas A Computao na Nuvem ainda uma tecnologia muito nova, e ainda tem muito o ca e que avanar. Muitos problemas ainda no esto resolvidos e ainda existe muita pesquisa c a a sobre as tcnicas e tecnologias utilizadas. Abaixo temos uma breve descrio de algumas e ca delas: Oferecimento de Recursos Automatizados: Assim como dito anteriormente na seo ca 7, a cloud precisa ser inteligente para resolver problemas que ocorrem durante o seus funcionamento. Quando essas situaes ocorrem elas devem ser resolvidas em tempo co real, sem interromper o sistema.

CLOUD COMPUTING

Migrao de Virtual Machines: Em sistema altamente virtualizado e com muitos servica dores, a migrao de maquinas virtuais invitavel. Por exemplo, temos dois servidores, ca e interessante passar uma maquina virtual para um est muito carregado e outro no. E a a o mais vazio, mas como fazer isso sem que o usurio dela no perceba? a a Consolidao de Servidores: Um data center possui muitos servidores e para evitar cusca tos muito altos de energia e at de compra de mais servidores necessrio algoritmos e e a de como otimizar o uso deles. Ento se alguns servidores no esto em uso interesa a a e sante desliga-los para no gastar energia ou distribuir os processos de outros para ele? a Algoritmos que resolvem problemas de consolidao de servidores so NP-dif ca a cil. Gerenciamento de Energia: Em 2006 nos Estados Unidos o consumo de energia dos data centers superou 1,5% do consumo de energia do pa Centros de processamentos s. de dados gastam muita energia e representam uma grande parte dos custos gerais de uma cloud. Ento, por exemplo, problemas de como refrigerar esses servidores de uma a forma tima ainda no esto completamente resolvidos. O gerenciamento de energia o a a e um tpico que altamente discutido hoje em dia. o e Gerenciamento e Anlise de Trafego de Dados: Para um melhor gerenciamento e plaa nejamento de uma Cloud, interessante possuir dados e anlises de como est o trfego e a a a de dados de um data center, porm neles existem milhares de conexes, e como rastrear e o de uma forma inteligente esse grande trfego de dados ainda uma questo que precisa a e a de muita pesquisa. Segurana de Dados: Uma outra grande pesquisa em computao na nuvem a seguc ca e rana dos dados. Os provedores precisam garantir que os dados de cada usurio no c a a podem ser acessados por outros. Diversas tcnicas de segurana so utilizadas porm e c a e em cloud vrios usurios dividem os mesmo recursos, e como impedir que um usurio a a a no tenha como acessar o recurso dos outros ou como garantir que os dados do usurio a a so realmente condenciais. a Software Frameworks: Para o gerenciamento e o funcionamento de uma cloud, diversos softwares so utilizados. Como por exemplo o MapReduce, que gerencia como as tarefas a so distribu a das entre os diversos n existentes, porm estudos mostram que essa ferrao e menta se comporta de um modo diferente dependendo do tipo de tarefa utilizada. Outros tipos de ferramenta como gerenciamento de arquivos em uma cloud so utilizados. a 9. Testes de servicos de cloud Um estudo de performance realizado em Junho de 2010[8]pela Bitcurrent e Webmetrics. Uma quatidade de testes realizados em 5 diferentes plataformas de nuvem: Amazon(IaaS), Google(PaaS), Rackspace(IaaS), Salesforce.com(PaaS) e Terremark(IaaS). Para cada uma delas uma bateria de diferentes tipos de testes foram realizadas. Os testes foram: Requisio de um objeto pequeno ca Requisio de um objeto grande ca

PEDRO MORHY BORGES LEAL

Execuo de tarefas intensivas de processamento ca Execuo de tarefas intensivas de entrada/saida ca Execuo 5 aplicaes do mundo real ca co

Figura 3. Mdia de latncia nos 4 testes para cada plataforma e e A imagem 3 mostra a mdia de latencia nos 4 primeiros testes da lista acima para e cada servio. Todas lidaram bem com a imagem pequena, j com a imagem de 2 MB c a a Rackspace, Amazon e Terremar, todas que oferecem infra-estrutura como servios c demoraram um tempo substancial. Para processamento de dados a Salesforce foi bem devagar, e Amazon tambm, mas para amazon a congurao utilizada foi bem pequena. e ca E por m a de entrada e saida, o Google foi o melhor de todos. Na execuo de aplicaes nativas, no grco mostrado na gura4, as clouds PaaS se ca co a sairam melhores novamente. A Salesforce e a Google foram bem rpidas, seguidas de a Amazon e Rackspace. Por ultimo com uma grande quantidade de testes com tempo de resposta de 12 segundos ca a Terremark. Outras informaes sobre os testes e mais grcos podem ser encontrados no documento co a publicado. Alm disso, no documento est escrito algumas concluses a partir dos testes e a o

CLOUD COMPUTING

Figura 4. Performance de aplicaes nativas co

feitos. A primeira delas que outros usurios que utilizam a mesma cloud realmente e a afetam a sua performance. Se alguns usurios esto utilizando os mesmos recursos que a a voc e de uma forma bem expressiva, isso reetido no seu desempenho. Mas nas clouds e e PaaS quando o sistema est devagar, ele est para todos que o utilizam, enquanto que a a nas clouds IaaS isso j um pouco diferente, existe uma separao maior de CPU. ae ca Alm disso, quando o algum quiser contratar o servio tem que pensar para qual e e c propsito ser, j que, cada tipo de aplicao reete de um modo diferente em cada o a a ca tipo de nuvem. Na seo de benef ca cios, est descrito em um dos itens que o fornecimento de armazenaa mento muito grande, mostrando um pouco a idia de que ilimitado, mas nesses testes e e e mostrado que isso tem um preo. Para passar muitos dados para a nuvem custa muito e c tempo, o processo no rpido. a e a

10

PEDRO MORHY BORGES LEAL

Referencias
[1] Zhan, Q et al (2010) Cloud computing: state-of-art and research challenges Journal of Internet Services and Applications 1(1):7-18 [2] http://cloudcomputing.sys-con.com/node/640237 [3] Dezembro de 2010, http://aws.amazon.com/ec2/pricing/ [4] http://aws.amazon.com/ec2/ [5] http://www.rackspace.com/ [6] http://code.google.com/appengine/ [7] http://www.microsoft.com/windowsazure/ [8] Cloud computing performance. A Bitcurrent study on the performance of cloud computing platforms. Julho, 2010 dispon em http://www.webmetrics.com/landingpage/bitcurrentcloud2/index.html vel

S-ar putea să vă placă și