Redução de custos em Cloud Computing

A adoção do Public Cloud Computing está crescendo a cada dia. É esperado que gere US $ 175,8 bilhões em 2018 e US $ 206,2 bilhões em 2019, segundo o Gartner. Esse é um mercado que está amadurecendo com gigantes como Amazon Web Services (AWS), Microsoft Azure e Google Cloud Platform.

E por que as empresas estão migrando de data centers tradicionais para a nuvem?

Porque Cloud fornece capacidades e recursos que, de outra forma, seriam quase impossíveis na infraestrutura de TI convencional. Acessibilidade, flexibilidade, alta disponibilidade e escalabilidade, segurança e automação são alguns dos benefícios que os principais provedores de nuvem oferecem à clientes de todos os tamanhos e formas.

Piggy Bank on Clouds - Savings Concept

De todos os benefícios, um dos principais impulsionadores da aceitação da nuvem são os benefícios em custo que ela oferece.

Usando data centers tradicionais, uma empresa teria que adquirir capacidade computacional sempre considerando a utilização de pico para um aplicativo. Não raramente este é um “palpite educado”, por que você nunca sabe exatamente quanto CPU ou memória o aplicativo precisará. Na maioria dos casos, você acaba em um dos dois cenários: excesso ou falta de recursos.
  
Além disso, você tem que considerar redundância não apenas para servidores, mas também para firewalls, roteadores, racks, fornecedores de energia, etc. Além de tudo isso, você precisa comprar tudo com meses de antecedência, devido a processos de compras, tempo de entrega dos fornecedores, instalação e configuração de todos os aparelhos e softwares, testes, validações, e assim por diante …

É aí que a Cloud Computing se torna tão atraente. Com uma abordagem sob demanda, você pode provisionar um servidor ou um banco de dados em minutos, sem todo esse trabalho e com escalabilidade e redundância a apenas um clique de distância.

Utilizando como base a AWS para falar sobre redução de custos, a empresa usa o formato “pague conforme o uso” (on-demand) sem qualquer contrato de longo prazo necessário. A Amazon gosta de reforçar isso: “… você paga apenas pelos serviços individuais de que precisa, contanto que você os use” (AWS).

Mas, deixe-me reformular a afirmação acima: “Você paga apenas pelo que configura”. Eu explicarei o por que…

Quando alguém escuta essa declaração da AWS, pode pensar, por exemplo, que a fatura de EC2 considerará apenas o período em que a pessoa está realmente logada na instância ou quando o aplicativo está sendo usado pelos clientes. Não exatamente.

A partir do momento em que você inicia sua instância EC2, a AWS está considerando o recurso “em uso” – com ou sem o aplicativo / acesso – e suas cobranças começaram. Quanto mais recursos você provisionar, mais você gasta. Elastic IP, Elastic Load Balancers ou instâncias de banco de dados assim que forem configurados, serão adicionados à sua conta da Amazon. Alguns serviços são faturados por hora, outros por minuto e outros pelo número de solicitações.

Com tantas opções, sua fatura pode sair do controle facilmente e você perderá o controle de seus custos. Conforme uma pesquisa da RightScale, 35% do que as empresas gastam com Cloud pode ser evitado. Embora isso possa ser verdade, nem tudo está perdido. A AWS nos fornece algumas ferramentas e técnicas para manter tudo sob controle.

Um deles é o nível gratuito da AWS (AWS Free-tier), no qual você pode usar serviços como EC2, DynamoDB e S3 gratuitamente dentro de alguns limites especificados pela AWS. É uma excelente opção para quem está experimentando com a nuvem.

A segunda é a elasticidade que permite que os recursos se adaptem automaticamente a um aumento na demanda sem super provisionamento. Por exemplo, seu DynamoDB pode dimensionar suas capacidades de leitura em resposta a uma onda de solicitações e, em seguida, desescalar para a configuração anterior.

A terceira é a opção de adquirir “Instâncias Reservada” para serviços como EC2 ou RDS. Este é um contrato de longo prazo – 1 ou 3 anos – com ou sem pagamento adiantado no qual você “compra” a infraestrutura da AWS e eles oferecem um desconto de até 70% sobre o preço sob demanda.

Em quarto lugar estão as ferramentas de otimização de custos, como o AWS TCO Calculator e o AWS Simple Monthly Calculator. O primeiro fornecerá uma comparação com data centers tradicionais e o segundo o custo mensal com a AWS.

Por fim, uma última ferramenta que certamente é útil é o AWS Billing Dashboard, que você pode acessar na sua conta da AWS. Ele apresenta todas as informações da sua fatura e você pode usar o Cost Explorer ou o Bill Details para explorar de onde as cobranças estão vindo

billingdashboard

Figura 1: Billing Dashboard

Além disso, é importante usar ferramentas de monitoramento, como o AWS CloudWatch e o Trusted Advisor, para analisar o uso do seu ambiente. É uma prática recomendada usar o CloudWatch para criar um alerta de faturamento e receber notificações quando sua conta atingir um determinado valor.

Outra prática recomendada para economizar nos custos da nuvem é interromper as instâncias do EC2 quando elas não estiverem sendo usadas. Por exemplo, as instâncias do EC2 usadas em ambientes de desenvolvimento podem ser desativadas durante a noite e / ou fins de semana quando ninguém as estiver usando.

Digamos que você queira desativar alguns servidores todos os dias, das 9h às 5h. Para conseguir isso, você pode configurar uma Regra Planejada no CloudWatch para executar uma função do Lambda que interrompa suas instâncias às 21h e outra função do Lambda que as inicie às 5h. Verifique os documentos da AWS para mais informações.

stopstartec2

Figura 2: Topologia para Stop/Start de EC2 usando Lambda

Supondo que você tenha 10 instâncias do EC2 usadas apenas para desenvolvimento. Mantendo essas instâncias 24×7, no final do mês, você será cobrado por 7.200 horas. Desligando-as por 8 horas diárias, no mesmo período, sua conta será de 4800 horas, o que equivale a 33% a menos.

Resumindo, o AWS tem muitas vantagens quando comparado com o modelo de data center atual. Escalabilidade, elasticidade, recursos sob demanda e agilidade são alguns deles. No entanto, nos ambientes da AWS você ainda tem oportunidades de diminuir ainda mais seus custos monitorando seu ambiente e custos com as ferramentas fornecidas; dimensione corretamente seus recursos e deixe ativo apenas o que realmente está usando e quando o usa.

Rafael Natali

Mais artigos deste autor »

Seja ao concluir um projeto desafiador com prazos apertados ou colaborando com um colega para alcançar resultados notáveis, a sensação de realização sempre me traz alegria.
Como Engenheiro de DevOps, minha principal função é ajudar desenvolvedores, equipes de TI e empresas a enfrentar desafios de infraestrutura complexos e implantar aplicativos de forma eficiente. Isso é feito por meio da implementação de automação e do uso de ferramentas como Docker, Terraform e Kubernetes. Isso otimiza o processo de desenvolvimento, permitindo que eles se concentrem em suas competências principais.

Minhas especialidades incluem:

Kubernetes (certificado CKA e CKS)
Docker
Terraform (certificado Terraform Associate)
AWS (certificado AWS Solutions Architect Professional)
GCP (certificado GCP DevOps Professional)
Kafka (certificado Kafka Developer)
CI/CD


Deixe seu comentário

Seu endereço de e-mail não será publicado. Campos com * são obrigatórios!