Cloud computing não é transformação. É metamorfose, diz CIO da Accenture

O CIO da consultoria e provedora de serviços de TI, Accenture,Frank Modruson, tem uma queda por tudo que seja mais rápido, melhor e ofereça melhor relação custo x benefício. Não é por menos. Essas características ele quer poder entregar aos seus clientes, sejam estes internos ou externos.

“Acredito piamente na tecnologia e em sua capacidade de sustentar o negócio das empresas”, afirma o CIO. “Mas para ela funcionar nessa tarefa de promover o negócio, precisa ser mais rápida, melhor e ter um excelente custo”, completa.

Promessas da computação em nuvem, que exerce uma grande atração sobre a Accenture.

A primeira solução de computação em nuvem adotada por Modruson foi uma plataforma no modelo SaaS (Software as a Service), para o sistema de recrutamento. De lá para cá, passaram-se cinco anos. Atualmente, as soluções baseadas em cloud computing usadas pela Accenture somam 24. Houve planejamento e preparo na adoção de plataformas de  IaaS (Infrastructure as a Service) e na introdução de uma rede de IP único para transmissão de voz e de dados. Cloud abrange também as frentes de bases de dados e de virtualização de armazenamento no data center corporativo.  E, segundo o CIO, isso é apenas o começo.

Veja as cinco lições que o CIO aprendeu em sua relação com a computação em nuvem:

1. A nuvem pode levar a empresa onde era impossível chegar

Há cinco anos, a Accenture mantinha sistemas de recrutamento diferentes para cada país em que tem sede. Nos EUA, um software dava conta desse processo. Já outros países ainda baseavam a gestão do recrutamento de mão de obra com base em planilhas de cálculos. Naquela época, a Accentura já contava com um contingente de 90 mil colaboradores. Depois de aumentar a folha de pagamento em 210 mil nomes, Modruson decidiu erradicar os sistemas de recrutamento de 40 países. “Tínhamos nossa solução aqui nos EUA, mas implementá-la nos outros locais, sem deixar cair o ritmo e dando conta da carga de trabalho rotineira, jamais foi uma opção viável”, lembra.

2. Perseverar é necessário

O recrutamento de pessoal é a base do negócio da Accenture. Tal filosofia deu origem à percepção da necessidade de se ter um software especial para o recrutamento. “Uma das vantagens do modelo SaaS é a flexibilidade que ele oferece à empresa. A maneira de recrutar é, sem dúvida, um dos ingredientes secretos, ainda assim, o envio de um email resposta ou a possibilidade de os candidatos se inscreverem online é uma consequência natural, nada mais. Garanto que o ingrediente secreto não está no software”, avisa o CIO.

Houve usuários que refutaram a adoção dessas tecnologias. Apesar de desejarem usufruir dos recursos adicionais, se recusavam a mudar a maneira tradicional de condução dos processos. “Em um dado momento, percebemos que não passavam de desculpas para não fazer”, lembra Modruson. “Passamos o mesmo processo com nosso sistema de ERP, mas, com o passar do tempo, a noção dos benefícios proporcionados pelo uso dos novos sistemas fica evidente”.

3. Segurança é relativa

“A segurança é um dos aspectos aos quais as pessoas estão sempre atentas, e estão certas de fazê-lo”, avalia o CIO. “Mas, partir do princípio de que a segurança é maior quando o objeto está em seu poder é errado. Onde seu dinheiro fica mais seguro? Debaixo de colchão de sua casa ou no cofre do banco?”, pergunta o executivo.

“Empresas que provêem serviços de cloud computing investem pesado em segurança por causa de seu tamanho. Isso dá a elas condições de investir mais nesse quesito do que muita empresa jamais poderá. O segredo para a segurança na computação em nuvem está na diligência: testes, testes e mais testes”, recomenda Modruson.

4. Não é transformação, é metamorfose

Todo o processo de migração para as soluções de computação em nuvem teve início há mais de cinco anos. Houve racionalização de aplicativos, erradicação de redes e um seríssimo processo de virtualização do data center.

O contingente de aplicativos da organização foi enxugado dos 2.100 programas para um conjunto de 530 (tal redução começou há mais de uma década).

Com 80% de seus servidores virtualizados, as 220 bases de dados são atualmente suportados por um conjunto de 30 servidores físicos – antes eram 449. Apesar de uma expansão de 122% no volume de dados, não houve incremento na estrutura de servidores locais.

“Se você usar a cabeça, verá que é perfeitamente possível reorganizar o contingente de dados sem dar muita atenção às configurações específicas de hardware”, avisa o CIO da Accenture. “Dessa forma geramos economia, ao passo que podemos migrar para outras nuvens”.

“A adoção do IaaS ainda está em andamento, pois empresas de pequeno e de médio porte têm muito mais facilidade de adotar a computação em nuvem que organizações grandes”, finaliza.

5. Sistemas antigos custam mais do que parece

Boa parte das empresas do tamanho da Accenture possui estruturas de hardware e de software antigos misturados com soluções mais atuais. “Isso acontece porque acreditam que as estruturas já se pagaram e não representam mais custos adicionais. Acontece que, assim que precisarem de suporte para plataformas obsoletas, o real custo dessas estruturas fica evidente. Gosto de definir o casamento com soluções ultrapassadas a calçar sapatos de cimento. É muito difícil avançar em qualquer sentido. Sugiro que se analise de forma sóbria o que vai causar menos problemas e implicar em custos”, alerta.

 

Ruby on Rails escala?

Recentemente tenho perguntado para diversos amigos do mundo de desenvolvimento,Ruby on Rails escala?. O que mais tenho percebido é que existe  é um mito nessa história. A conclusão óbvia foi que ,  NÃO.  O Ruby on Rails  e  outras linguaguem conhecidas como : PHP , .Net  e Java também não escalam. O Rails permite que você faça isso de maneira mais simples que outras tecnologias. A linguagem/framework não é a única responsável pela escalabilidade. Para escalar um website, você precisa de uma infraestrutura que permita fazer isso. Isso pode ser feito de diversas maneiras, como adicionar múltiplos bancos de dados, adicionar mais servidores, adicionar cache, otimizar pontos críticos de seu código, e por aí vai! Não sou especialista no assunto, mas este é, ao meu ver, o básico para se fazer!  Claro que não podemos jogar toda a responsabilidade da escala para a infraestrutura. Eu que venho do mundo bancário sei que é possível desenvolver aplicação auto-escaláveis que são altamente performáticas com um hardware potente. Para finalizar, o Google não é feito em Python, o Yahoo! não é feito em PHP, e o Twitter não é feito em Rails. Todos eles são uma mescla de diversas tecnologias, que permitem suportar, em maior ou menor escala, um grande volume de usuários. Alguns fazem isso muito bem, outros nem tanto.

Visão simplificada da modelagem de desempenho.

Essa semana comecei a analisar a arquitetura do sistema do Busk desde aplicação e ambiente de servidores.Com tive uma visão simplificada da modelagem de desempenho.

Os testes de desempenho são mecanismos extremamente interessantes para uma análise da escalabilidade de um sistema, entretanto em casos mais complexos somente a realização de testes não é o suficiente, para esses casos é necessário realizar uma modelagem de desempenho do sistema computacional como todo.

Modelar o desempenho de um sistema não é simples, mas também não é uma metodologia impossível de ser utilizada. É necessário monitorar, coletar, sintetizar, analisar, otimizar e representar os sistemas com um visão que foge completamente do empirismo.

O objetivo principal da modelagem de desempenho é aproveitar ao máximo do investimento de infra-estrutura de TI, focando na melhoria continua do desempenho dos sistemas. Muitos profissionais acreditam que uma simples otimização de um código fonte do software é sempre a solução para esses casos, outros acreditam que a solução sempre é a troca excessiva dos dispositivos de hardware, ambas as soluções podem ser consideradas na maioria das vezes como soluções paliativas.

A solução está no ambiente do sistema computacional

A verdade é que essas e outras soluções paliativas surgem pela falta de uma visão mais ampla das coisas. É necessário elevar o nível de abstração para entender que as raízes dos problemas de desempenho nem sempre estão relacionadas há um ponto focal básico como o código fonte e sim há um ambiente do sistema computacional como todo. Esse ambiente basicamente pode ser divido em dois: ambiente de usuários e o ambiente de hardware propriamente dito.

O ambiente de usuários é formado por pessoas ou outros sistemas que são capazes de gerar carga de trabalho através das requisições, transações ou processos do software utilizado. O ambiente de hardware é formado pelo conjunto de dispositivos que processam a carga de trabalho gerada pelo ambiente de usuários. O parâmetro utilizado para avaliar a capacidade de um sistema é a análise do nível de serviço prestado pelo mesmo.

 

 

 

 

Existem várias técnicas que são utilizadas para modelagem e análise do desempenho de um ambiente do sistema computacional, como por exemplo, o modelo de regressão linear. No mercado de trabalho, o profissional que possui conhecimento dessas técnicas é extremamente valorizado, principalmente em grandes companhias que investem uma enorme fatia de seu orçamento em infra-estrutura de hardware, como no caso dos mainframes.

 

Virtualização, Cloud Computing e os gestores de TI brasileiros.

É interessante como alguns gestores se apegam a certo tipo de tecnologia e serviço, achando que todos os seus problemas serão resolvidos implementado-a, há 2 anos foi SOA (hoje é moda falar mal de SOA) e atualmente temos virtualização e Cloud Computing. Fato é que a virtualização trouxe uma série de benefícios, principalmente o financeiro, colocar 10 servidores em uma única caixa física, diminuindo custo de hardware, software, energia e suporte é um baita negócio.

Caso você trabalhe em uma revenda de software e diga que o seu produto não pode ser virtualizado, esqueça, você não conseguirá vendê-lo. As duas únicas empresas que conseguiram falar isso, para ambientes produtivos, foram a SAP e a Oracle, e olha que a Oracle diz que dá para virtualizar os seus bancos utilizando Oracle VM, mas conheço poucas empresas que fizeram isso no Brasil.

O problema com a virtualização está na hora que tudo fica banalizado, do tipo: Virtualiza tudo, preciso de mais servidor, virtualiza, preciso de mais network, virtualiza e assim vai. Sabemos que nem tudo pode ser virtualizado, e hoje, alguns analistas e pessoas que trabalham com suporte têm se deparado com ambientes que estão chegando em um ponto que a virtualização não é mais benéfica.

Soube de um amigo que um cliente resolveu todos os seus problemas de espaço físico e energia elétrica com a implementação da virtualização em seu datacenter, porém ele está com problemas para compra de servidores que suportam esta infraestrutura pois ele havia montado toda a sua arquitetura com equipamentos Blade, no caso dele, a enclouseres utilizada para suportar todos os servidores vai até 20 lâminas, lembrando que cada lâmina é um servidor, como demonstrado na foto abaixo:

 

 

 

 

 

 

 

 

Essa empresa montou o seu ambiente virtual com 3 servidores blades, tendo assim 60 lâminas, porém agora ele precisa crescer mais 3 servidores/lâminas, mas para isso ele terá que gastar uma boa grana na compra de outra enclosure que suportará estes novos servidores. Isso pode ser um problema dependendo do caixa da empresa neste momento.

Recomendo fortemente a todos que planejam a virtualização do seu ambiente que considerem o seu crescimento futuro, o fato é que a virtualização traz uma sensação de crescimento infinito de recursos, e sabemos que isso não existe, mas vai explicar isso para o desenvolvedor, gerente ou diretor ?!

Mas, e quando você chega ao seu gerente e direto e fala, não temos mais como crescer para o tal projeto de desenvolvimento, a resposta é: Usa Cloud Computing, você pode crescer infinitamente, paga só o que usar e é barato!

As duas primeiras afirmações são verdadeiras, pode crescer infinitamente, dependendo só do fornecedor da solução de Cloud Computing e paga pelo que usa, mas barato isso não é, digo que a conta pode ser tornar mais cara que a de um collocation caso você não mensure corretamente os recursos necessários para esse ambiente, os maiores vilões das contas de serviços de Cloud Computing são:

  • Gestores mal informados que não analisam previamente o que realmente precisam.
  • Desenvolvedores que sempre querem o máximo de recursos para o desenvolvimento e realização de testes de suas aplicações.
  • Falta de controle ou monitoração da utilização de recursos de espaço em disco, storage e CPU, isso sempre causa problemas quando a conta chega.

Veja que de fato, Cloud Computing é uma evolução quando falamos de serviços de TI, vejam pela foto abaixo:

 

 

 

 

 

 

 

 

Mas não quer dizer que é a solução de todos os seus problemas quando o assunto é crescimento e espaço, pois a conta que vier para você pagar pode lhe trazer algumas surpresas, caso você não planeje ou dimensione corretamente os recursos que serão necessários.

O recado é: Tudo em excesso pode causa problemas, inclusive tecnologia.

Seguir

Obtenha todo post novo entregue na sua caixa de entrada.