Olá pessoal, tudo certo?
A computação em nuvem (ou cloud computing) tem sido um dos assuntos mais discutidos atualmente no mundo da tecnologia da informação. Seja pela oportunidade de redução de custos em TI para cenários corporativos ou pelo poder de computação e alta disponibilidade via internet que oferece, computação em nuvem será um elemento importante para a composição de arquiteturas em empresas e soluções de software nos próximos anos.
De fato, estamos vivenciando um momento bem interessante, enquanto acompanhamos o interesse crescente sobre conceitos como TI dinâmica, Negócio Ágil (ou Agile Business) e mesmo Computação em Nuvem. Alguns especialistas já afirmam que com essas tecnologias, abre-se uma grande janela de oportunidades para novos negócios, soluções de software inovadoras e modelos de infraestrutura combinadas em empresas. Portanto, teremos mudanças a vista, seja para arquitetos, desenvolvedores ou IT Pros.
Por outro lado, se você procurar por definições sobre computação em nuvem, encontrará dezenas, sendo várias até mesmo conflitantes entre si. Cenários de grid computing, cluster computing e cloud compunting são frequentemente associados, enquanto que siglas como PaaS – Platform as a Services, SaaS – Software as a Service, IaaS – Infrastructure as a Service e mesmo CaaS – Communication as a Service tornam-se conhecidas de todos. Algumas empresas tradicionais ainda defendem que as ofertas oferecidas por fornecedores de cloud computing já existem há muito tempo, em cenários conhecidos como private clouds, diferenciando das ofertas de public cloud. Em tempos de novidades é assim mesmo, todos precisam se posicionar e algumas confusões acontecem, enquanto o mercado decide qual será a direção a ser tomada.
Neste contexto, a Microsoft apresentou para o mercado um novo sistema operacional chamado Windows Azure, que oferece uma infraestrutura (IaaS) e uma plataforma (PaaS) como serviço, a partir de datacenters da Microsoft espalhados pelo mundo. Além dos recursos nativos do Windows Azure, a plataforma Azure oferece ainda uma série de serviços que capacitam as aplicações com bancos de dados, barramentos de serviços, mecanismos para controle de acesso, suporte ao modelo de software como serviço (SaaS – Software as a Service), entre outros recursos.
Outros fornecedores como Goggle, Amazon, IBM, Sales Force, etc. seguem a mesma corrida do cloud computing com recursos e funcionalidades, disputando parte dessa TI dinâmica do futuro.
Idenpendente do provedor de solução em nuvem que você adote, algumas questões são realmente críticas e devem ser tratadas, no momento de formatação de sua solução baseada na nuvem. Vejamos algumas dessas questões, que colecionei depois de conversas com várias empresas:
- Qual é seu custo de operação e manutenção de infraestrutura associada a uma determinada aplicação?
- Qual é seu custo com utilidades, como refrigeração, consumo de energia elétrica, área física de hospedagem de infraestrutura, etc.?
- Qual é seu custo de evolução associado ao hardware, diagnóstico de falhas, substituição e recuperação em seus datacenters locais?
Pensando ainda em custos, podemos agrupar essas questões em três grupos principais:
- custos de infraestrutura de rede (com segurança, firewall, isolamento, máquinas virtuais, instâncias de processamento, etc.);
- custos de infraestrutura de armazenamento (com hardware específico, planejamento de capacidade, crescimento estimado, replicação, backup, etc.);
- custos de administração/operação (com monitoração, logging, segurança, estatísticas de operação, SLA’s, etc.)
Em resumo, uma boa decisão pelo uso de computação em nuvem passa pelo bom entendimento de sua realidade local, mapeando custos, recursos necessários e restrições que devem ser respeitadas em sua solução. E entre restrições citamos latencias suportadas, níveis de operação dos serviços contratados, estatísticas de serviços disponíveis, entre outras. Assim, abrir a caixa preta de sua TI local é parte do processo.
A discussão é boa e ainda vamos ler muitos artigos e recomendações sobre esses assuntos.
Um abraço!
Waldemir Cambiucci
Blog: http://blogs.msdn.com/wcamb/
Twitter: http://twitter.com/wcamb/
3 Comentários
Olá Waldemir Cambiucci,
Uma questão que acho de extrema importância neste contexto de computação em nuvem é sobre as diferentes tecnologias que cada provedor de serviço oferece e a não compatibilidade entre elas, deixando soluções desenvolvidas para rodar em nuvem presas a um único provedor de serviço. Como é tratada esta questão e até que ponto poderemos chegar em uma solução?
Olá Felix, tudo certo?
Esse assunto realmente é importante! Qualquer escolha por um provedor de cloud computing envolve um certo acoplamento e lock-in de plataforma. O importante é definir o que estamos utilizando de recursos, seja processos na nuvem ou dados na nuvem. Recentemente tivemos o anúncio da iniciativa SimpleCloud (veja http://blogs.msdn.com/wcamb/archive/2009/09/24/projeto-simple-cloud-interoperabilidade-entre-nuvens.aspx), que pretende definir uma interface PHP padronizada para interoperabilidade sobre alguns objetos e operações em provedores distintos. Mas uma vez implementada a solução, temos uma escolha feita.
Como estamos no início desse mercado, ainda vamos acompanhar alguns erros e acertos, mas podemos escolher um provedor em função de alguns critérios pré-definidos, como suporte, SLA, custos de subscrição e facilidade de desenvolvimento para a plataforma. Será mesmo uma decisão de projeto.
[]s Waldemir