Avançar para a área de conteúdo

Ao clicar em Enviar, você concorda com os termos e condições do developerWorks.

A primeira vez que acessar o developerWorks, um perfil será criado para você. Informações do seu perfil (tais como: nome, país / região, e empresa) estarão disponíveis ao público, que poderá acompanhar qualquer conteúdo que você publicar. Seu perfil no developerWorks pode ser atualizado a qualquer momento.

Todas as informações enviadas são seguras.

  • Fechar [x]

Ao se conectar ao developerWorks pela primeira vez, é criado um perfil para você e é necessário selecionar um nome de exibição. O nome de exibição acompanhará o conteúdo que você postar no developerWorks.

Escolha um nome de exibição de 3 - 31 caracteres. Seu nome de exibição deve ser exclusivo na comunidade do developerWorks e não deve ser o seu endereço de email por motivo de privacidade.

Ao clicar em Enviar, você concorda com os termos e condições do developerWorks.

Todas as informações enviadas são seguras.

  • Fechar [x]

Manifesto Arquitetural: Uma introdução às possibilidades (e riscos) da computação em nuvem

Mikko Kontio, Director, Softera
Mikko Kontio tem formação em desenvolvimento de software e consultoria. Atualmente é diretor da Softera, uma empresa de desenvolvimento de software voltada para soluções de portais de negócios e cobrança de telecomunicações.

Resumo:  A computação em nuvem tornou-se um tópico de grande interesse nos meios de comunicação e no segmento de mercado de tecnologia da informação. Há críticos que dizem que isso não é nada novo. Nesta edição final de Manifesto Arquitetural, saiba sobre as possibilidades e riscos da computação em nuvem.

Visualizar mais conteúdo nesta série

Data:  16/Set/2011
Nível:  Introdutório Também disponível em :   Inglês
Atividade:  1450 visualizações
Comentários:  


Introdução

Houve uma agitação crescente sobre computação em nuvem durante o ano passado. Grandes empresas como IBM®, Microsoft® e Amazon anunciaram suas estratégias para computação em nuvem. Empresas menores, até mesmo iniciantes ofereceram seus serviços. Como sempre, quando há grande agitação em torno de alguma coisa, é bom perguntar por que nos preocupamos com isso e quais são os benefícios a serem ganhos pelos clientes. Esta última parcela de Manifesto Arquitetural explora, em um alto nível, a computação em nuvem e suas possibilidades para fornecedores e clientes.

Também chamada de Software as a Service (SaaS), a computação em nuvem às vezes também é denominada de Everything as a service (EaaS). Ela pode incluir os servidores, bancos de dados, software ou qualquer combinação deles. Em Camadas exploraremos as diferentes camadas (ou serviços) que os fornecedores de computação em nuvem podem oferecer. Também discutiremos os riscos dos serviços baseados em nuvem. Primeiro, porém, uma introdução à computação em nuvem.


Computação em nuvem

Serviços da Web da IBM e Amazon

IBM e AWS estão fazendo parceria para fornecer acesso ao software IBM em um ambiente de computação virtual. A experiência Amazon EC2 permite avaliar e usar software sem precisar instalá-lo no sistema. É possível ajustar a capacidade quase instantaneamente, criar aplicativos prontos para a empresa em um ambiente confiável de alto desempenho em que você paga somente pelo tempo e pela capacidade que usar. Nossas ofertas de software no EC2 incluem:

  • DB2 Express-C 9.5
  • Informix Dynamic Server Developer Edition 11.5
  • WebSphere Portal Server e Lotus Web Content Management Standard Edition
  • WebSphere sMash

Este é código no nível do produto, com todos os recursos e opções ativados. Obtenha mais informações e faça o download do Amazon Machine Images para esses produtos no developerWorks Cloud Computing Resource Center.

Para saber sobre mais recursos da computação em nuvem, consulte o Cloud computing space no developerWorks.

Em resumo, computação em nuvem significa que as empresas, os usuários dos serviços de TI, podem comprar seus serviços relacionados a TI como um serviço. Em vez de comprar servidores para serviços internos ou externos e ou comprar licenças de software, a empresa pode comprá-los como um serviço. Isso não é nada novo. Os serviços de hospedagem existem há algum tempo, permitindo concentrarmo-nos mais nos negócios do que na infraestrutura de TI. Ainda assim, a computação em nuvem tem algo mais a oferecer.

Imagine que um grande fornecedor está vendendo suas mercadorias por um portal da Web. Ele precisa de acesso a servidores e infraestrutura para suportar os maiores picos de demanda (horas de pico do dia, dias de pico antes de feriados), mas na maior parte do tempo consegue seguir com capacidade menor. Ele começa a pensar se realmente precisa ser proprietário de tanta infraestrutura que não é usada inteiramente a maior parte do tempo. Com um serviço de hospedagem, o grande fornecedor poderia comprar a infraestrutura necessária como um serviço, pagar uma taxa mensal ou anual e preocupar-se menos com a infraestrutura. Ele compraria exatamente a capacidade que precisar, à medida que precisar nos momentos de pico. Com computação em nuvem, pagaria pela capacidade de pico com base no uso. Os benefícios para o cliente são bem óbvios.

Características

Há várias características importantes da computação em nuvem:

  • O cliente não precisa conhecer (e comprar) a capacidade total que poderá precisar no horário de pico. A computação em nuvem torna possível escalar os recursos disponíveis ao aplicativo. Uma empresa iniciante não precisa se preocupar se a campanha de propaganda funcionar muito bem e congestionar os servidores.
  • O cliente paga somente pelo que usar. Não precisa comprar servidores ou capacidade para suas necessidades máximas. Geralmente isso resulta em economias de custo.
  • A nuvem alocará e desalocará automaticamente (ou, em alguns casos, com operações semimanuais) CPU, armazenamento e largura de banda de rede sob demanda. Quando houver poucos usuários em um site, a nuvem usa bem pouco espaço para executar o site e vice-versa.
  • Como os datacenters que executam os serviços são enormes e compartilham recursos entre um grande grupo de usuários, os custos de infraestrutura são menores (eletricidade, prédios etc.). Assim, os custos que são repassados ao cliente são menores.

Os clientes recebem os serviços que desejam e pagam somente pelo uso real. Se o seu o Web site receber grande número de visitantes cinco dias por semana, mas ficar quase parado nos fins de semana, eles pagarão pela capacidade que precisarem (e usarem) somente nos dias úteis.


Camadas

Há várias camadas reconhecidas na computação em nuvem. Os fornecedores nessas camadas têm ofertas de serviços e modelos de operação bastante diferentes. Alguns fornecedores concentram-se na construção e manutenção de um datacenter enorme, enquanto outros concentram-se na construção de um aplicativo simples e fácil de usar e cheio de recursos. As camadas, de baixo para cima, são: infraestrutura, armazenamento, plataforma, aplicativo, serviços e cliente.

Infraestrutura
Na base está a infraestrutura do serviço ou a virtualização da plataforma. Você obtém o tipo de ambiente do servidor que desejar. Essa é a oferta básica; os clientes ainda precisam manipular o servidor, toda a instalação de software e a manutenção eles mesmos.

A infraestrutura da computação em nuvem se diferencia dos serviços de hospedagem tradicionais devido à escalabilidade e à precificação de pagar à medida que usar. Uma empresa iniciante poderá estar bastante interessada em obter a escalabilidade e não pagar pelo tempo em que não estiver usando o serviço. É conveniente, principalmente se estiver tentando aumentar o tráfego no seu aplicativo da Web mas não souber em quanto tempo ou em que nível terá sucesso.
Armazenamento
Com a camada de armazenamento, você obtém um banco de dados ou algo semelhante e paga por gigabyte por mês. A camada de armazenamento não é nada novo ou especial, exceto para a pilha completa de serviços. Ela é, naturalmente, vital.

Existem várias possibilidades de armazenamento. Algumas são bancos de dados relacionais tradicionais e algumas são soluções proprietárias como o Bigtable do Google ou o SimpleDB da Amazon.
Plataforma
A camada de plataforma tem pilhas de soluções como Ruby on Rails, LAMP ou Python Django. Agora as coisas começam a ficar interessantes. Aquela empresa iniciante fictícia não precisa lidar com toda a instalação do software do servidor ou manter suas versões atualizadas, porque isso vem com o serviço. Ela pode se concentrar em desenvolver e divulgar seu aplicativo.
Aplicativo
A camada de aplicativo contém aplicativos que são oferecidos como serviços. Os exemplos mais famosos provavelmente são Salesforce.com e Google Docs, mas existem centenas, se não milhares de aplicativos (reais) que podem ser adquiridos como serviços.

Aplicativos da Web populares como Facebook, Flickr e LinkedIn são serviços em nuvem. Nesses casos, o cliente provavelmente não sabe se o aplicativo é executado em um datacenter escalável, em um serviço de hospedagem comum ou no porão dos provedores de serviços. Mas isso não é preocupação ou problema do cliente que precisa usar o aplicativo. Essa camada provavelmente é a parte mais visível da computação em nuvem. Ela enfatiza os benefícios que podem ser observados pelos clientes.
Serviços
A camada de serviços contém operações de máquina para máquina interoperáveis pela rede. O exemplo mais prevalecente dessa camada são os serviços da Web. Outros exemplos incluem sistemas de pagamento como Paypal e serviços de mapeamento como Google Maps e Yahoo Maps.
Cliente
Na parte superior da pilha está a camada do cliente, que contém os usuários dos sistemas em nuvem. Os clientes são, por exemplo, usuários de desktop (thin client ou thick client) e usuários remotos (Symbian, Android, iPhone).

Como podemos ver, existem amplas oportunidades para os fornecedores oferecerem serviços novos e existentes e para os clientes encontrarem serviços e aplicativos que resolvem seus problemas. No entanto, há alguns riscos que os clientes precisam entender.


Riscos

Há vários pontos a considerar antes de assinar serviços baseados em nuvem. Não pense nos riscos a seguir como entraves ou falhas primordiais, mas como problemas que devem ser reconhecidos ao se tomar decisões. Você deverá analisar se os serviços baseados em nuvem são certos para as suas necessidades e quais dos serviços disponíveis são certos para você.

Dependência de um determinado fornecedor
Certifique-se de que existe uma maneira fácil de tirar os seus dados do serviço. Se estiver usando um serviço de infraestrutura, fazer backup dos arquivos e dos dados deverá ser relativamente fácil. Se estiver usando um aplicativo da Web, tenha certeza de haver um plano para levar seus dados consigo caso precisar mudar para outro fornecedor. Não é necessário sempre mudar todos os dados para o novo aplicativo se você tiver uma maneira de visualizar os dados. Por exemplo, não é necessário mudar todos os dados do aplicativo de rastreamento antigo para o novo se você tiver acesso à sua visualização.
Confiabilidade
Se alguma coisa der errado com o provedor de serviços, como os servidores ficarem inativos, o cliente não pode fazer nada. Para situações como essa, é melhor escolher um provedor de serviços que ofereça sites espelhados. Mas às vezes nem isso é suficiente; até mesmo os grandes fornecedores podem ter problemas.
Segurança de dados
Não é sempre um risco. Os procedimentos e o conhecimento de segurança do fornecedor poderão ser bem melhores que os de uma empresa iniciante.

O problema a considerar é: quem consegue ver seus dados e quais são as políticas do fornecedor quanto a isso. Por exemplo, se seus dados forem sensíveis para os concorrentes verem, verifique as políticas do fornecedor.
Saindo dos negócios
Investigue o que aconteceria aos seus dados ou ao aplicativo se o fornecedor for obrigado a sair dos negócios. Esse aspecto negativo pode ser algo raramente mencionado nos materiais de marketing. Se a exportação dos dados for fácil, o possível encerramento do fornecedor não deverá ser tão perigoso. Você ainda enfrentaria o problema de encontrar um novo aplicativo (ou fornecedor) adequado para as suas necessidades comerciais.

Conclusão

Nesta edição você aprendeu sobre a essência da computação em nuvem, as características principais, as camadas e alguns riscos que deverão ser avaliados. Para o cliente médio, computação em nuvem significa obter os serviços que desejar e pagar pelo uso. A computação em nuvem tem muitas características, como escalabilidade, alocação de recursos sob demanda e economia de escala. Há seis camadas na planilha da computação em nuvem, indo da infraestrutura à camada de cliente. Os fornecedores operam e oferecem serviços em uma ou mais das camadas. Você também aprendeu sobre os riscos que os clientes e os futuros fornecedores deverão considerar.

A computação em nuvem não é apenas uma tendência que poderá acontecer algum dia. É uma realidade; os usuários da Web típicos usam serviços em nuvem diariamente, quer saibam ou não. No futuro próximo provavelmente veremos uma tendência mais forte de os serviços e aplicativos corporativos mudarem para as nuvens. Naturalmente, há determinados aplicativos que as corporações prefeririam executar em seus próprios servidores, mas a maior parte dos aplicativos corporativos deveria ser apropriada para a computação em nuvem.


Recursos

Aprender

Obter produtos e tecnologias

Discutir

Sobre o autor

Mikko Kontio tem formação em desenvolvimento de software e consultoria. Atualmente é diretor da Softera, uma empresa de desenvolvimento de software voltada para soluções de portais de negócios e cobrança de telecomunicações.

Ajuda para Relatar Abuso

Relatar abuso

Obrigado. Esta entrada foi sinalizada para atenção do moderador.


Ajuda para Relatar Abuso

Relatar abuso

Falha no envio do Relatório de abuso. Tente novamente mais tarde.


developerWorks: Registre-se


Precisa de um ID IBM?
Esqueceu seu ID IBM?


Esqueceu sua senha?
Alterar sua senha

Ao clicar em Enviar, você concorda com os termos de uso do developerWorks.

 


Na primeira vez que você efetua sign in no developerWorks, um perfil é criado para você. Informações selecionadas do seu perfil developerWorks são exibidas ao público, mas você pode editá-las a qualquer momento. Seu primeiro nome, sobrenome (a menos que escolha ocultá-los), e seu nome de exibição acompanharão o conteúdo que postar.

Selecione seu nome de exibição

Ao se conectar ao developerWorks pela primeira vez, é criado um perfil para você e é necessário selecionar um nome de exibição. O nome de exibição acompanhará o conteúdo que você postar no developerWorks.

Escolha um nome de exibição de 3 - 31 caracteres. Seu nome de exibição deve ser exclusivo na comunidade do developerWorks e não deve ser o seu endereço de email por motivo de privacidade.

(Deve possuir de 3 a 31 caracteres.)


Ao clicar em Enviar, você concorda com os termos de uso do developerWorks.

 


Classificar este artigo

Comentários

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=80
Zone=Software livre, Cloud computing
ArticleID=757759
ArticleTitle=Manifesto Arquitetural: Uma introdução às possibilidades (e riscos) da computação em nuvem
publish-date=09162011
author1-email=mikko.kontio@softera.fi
author1-email-cc=

Conheça a IBM da sua cidade

A IBM está mais perto do que você imagina!