Cloud Intelligence™Cloud Intelligence™

Cloud Intelligence™

Reduza seus gastos na nuvem com estratégias inteligentes de otimização

By Craig LowellSep 20, 20227 min read

Esta página também está disponível em English, Deutsch, Español, Français, Italiano e 日本語.

Quando otimizar dá mais trabalho do que vale a pena, vá pelo caminho fácil para economizar na nuvem.

Quando as estratégias de otimização de custos na nuvem dão mais trabalho do que valem a pena, vá pelo caminho fácil para economizar

Apesar de toda a escalabilidade, confiabilidade e flexibilidade que a nuvem pública oferece, ainda não existe almoço grátis. Provedores como Amazon Web Services e Google Cloud permitem que você use e pague por capacidade computacional e serviços conforme a necessidade, mas fazer isso puramente sob demanda sai caro. Em algum momento, usar a nuvem pública só sob demanda se torna inviável.

Você pode adotar diferentes métodos para gerenciar melhor seus gastos na nuvem, como se comprometer com volumes de uso ou de gasto bem antes, ou usar instâncias Spot com descontos agressivos. O problema é que as duas estratégias exigem tempo e recursos para serem executadas direito. A pergunta deixa de ser "quanto dá para economizar?" e passa a ser "o resultado compensa o esforço?".

Vamos analisar essas duas estratégias para entender melhor o que cada uma envolve e como podem ser otimizadas para que o esforço valha a pena na sua organização.

Commitments / Reservas de capacidade computacional

Como a capacidade computacional costuma representar mais da metade da sua fatura total de nuvem, otimizar esse custo provavelmente é o que mais vai impactar o gasto geral. É por isso que provedores de nuvem pública como a AWS oferecem descontos significativos em troca de você reservar ou se comprometer com seu uso antecipadamente. Esses programas de commitment, conhecidos na AWS como Reserved Instances ou Savings Plans, têm prazos de um ou três anos — e os de três anos, naturalmente, oferecem os maiores descontos.

Mas aproveitar essas oportunidades de economia exige previsões muito precisas do seu uso ao longo do prazo do commitment. Se você superdimensionar e reservar mais capacidade do que precisa, vai acabar jogando dinheiro fora com workloads ociosos (lembrando os velhos tempos dos data centers e dos modelos de gasto em CapEx). Por outro lado, se subdimensionar e depois precisar de mais instâncias, vai ter que recomeçar todo o trabalho de previsão e provisionamento para um novo commitment, ou pagar tarifas bem mais altas por instâncias sob demanda.

Para complicar ainda mais, há diversas variáveis difíceis de incorporar nos termos de um commitment, como:

  • mudanças de código que aumentam ou diminuem os requisitos computacionais de um aplicativo
  • potencial de sucesso ou viralização de novos produtos e serviços
  • fatores macroeconômicos, como inflação e dinâmica das cadeias de suprimento, que fogem do seu controle, mas mesmo assim afetam seu uso da nuvem

Normalmente, as empresas acabam reservando o máximo possível em commitments de três anos para estabelecer uma linha de base mínima e, em cima disso, somam reservas de um ano com base nos tipos, tamanhos e regiões específicos de VMs que suas aplicações exigem.

Isso geralmente cria um calendário de descontos em constante mudança, com workloads-alvo, especificações e datas de expiração que precisam ser acompanhados e gerenciados durante o ano inteiro por pelo menos uma pessoa dedicada — quando não um time inteiro. Esses profissionais precisam ter expertise em nuvem e saber conectar o uso aos objetivos gerais do negócio. E, claro, o custo de recrutar, treinar e reter um time tão especializado provavelmente vai consumir boa parte da economia.

Não é à toa que esse é um obstáculo e tanto para muitas organizações, principalmente para empresas mais jovens, com recursos limitados e foco em crescer rápido. A maioria das startups não pode se dar ao luxo de tirar o tempo e a atenção do seu pequeno time de DevOps para gerenciar commitments e prefere focar em desenvolvimento e crescimento, em vez de gestão de custo e uso.

Até empresas maiores, com mais recursos e mais maduras digitalmente, podem ter dificuldade em acompanhar seu portfólio de commitments. Quanto mais complexo o ambiente de nuvem, mais desafiadora fica a logística de gestão: as necessidades computacionais e as taxas de consumo variam entre os times da organização, a responsabilidade pelo provisionamento e acompanhamento do uso da nuvem pode mudar de mãos, e os ambientes entre os times ficam cada vez mais distintos.

Quanto mais complexo o ambiente de nuvem, mais desafiadora fica a logística de gestão.

Spot Instances

Uma das formas mais eficazes de reduzir seus gastos na nuvem com a AWS é usar Spot Instances sempre que possível. Com economias de até 90% em relação ao preço sob demanda, esse método oferece descontos ainda maiores do que os commitments de três anos — mas com uma pegadinha importante: as Spot Instances são vendidas como ofertas de última hora em instâncias sob demanda ociosas (pense em uma padaria liquidando o estoque no fim do dia), mas também podem ser retomadas pelo provedor de nuvem com apenas dois minutos de aviso. Essa ressalva faz muita gente pensar duas vezes antes de adotar Spot, já que, no trade-off entre disponibilidade das aplicações e economia, a tendência é priorizar o uptime.

As Spot Instances podem ser gerenciadas na AWS com Auto Scaling Groups (ASGs), mas usá-las exige um certo grau de flexibilidade quanto aos tipos de instância e Availability Zones que você solicita, já que sempre existe a chance de nenhuma estar disponível nas especificações desejadas. Os ASGs também precisam ser configurados manualmente e ajustados com frequência para garantir que suas necessidades computacionais continuem sendo atendidas sem interrupções relevantes. É mais um processo manual e tedioso e, se a configuração estiver errada, pode nem funcionar.

Apesar das limitações evidentes das Spot Instances, dá para adotar estratégias que otimizam o uso. Uma delas é o rebalanceamento de capacidade, que ajuda a manter a disponibilidade (com base nas Instance Rebalance Recommendations da AWS). Esse recurso envia um sinal antecipado quando uma Spot Instance está prestes a ser desligada, o que pode ajudar bastante em comparação com o aviso padrão de dois minutos da AWS — desde que você tenha alguém disponível para reagir à mudança.

Vale a pena o esforço?

A verdade inconveniente é que não existe fórmula mágica para calcular quanto a gestão de todas essas estratégias de otimização de custos vai custar para você. Depende muito do tamanho e da complexidade do seu ambiente de nuvem, dos seus objetivos de negócio atuais e futuros e da expertise disponível dentro da sua organização. Por exemplo: é mais barato se comprometer um pouco além do necessário por um preço menor do que se comprometer aquém e pagar preço sob demanda no restante? E, se a escolha for pela segunda opção, qual é o valor da flexibilidade que ela oferece comparado à economia extra que um commitment maior traria?

Indo um pouco mais fundo: seu time consegue planejar e gerenciar esses programas, ou você vai precisar contratar gente nova com as habilidades e a expertise certas? E, se for o caso, esse é o melhor uso do seu orçamento operacional, ou esse dinheiro renderia mais investido em desenvolvimento de produto ou em estratégias de go-to-market?

Muitas empresas concluem que todas essas perguntas e o tempo gasto para respondê-las dão mais trabalho do que valem a pena. É difícil discordar, especialmente porque commitments mais longos costumam custar a flexibilidade de engenharia: novos projetos ou funcionalidades que não estavam na projeção original podem acabar parados até que novos recursos sejam provisionados. Você está confortável com o roadmap do seu produto refém de decisões de orçamento operacional tomadas há mais de um ano?

A boa notícia é que existem soluções alternativas para esses problemas que entregam a economia que você precisa sem consumir tanto tempo e energia do seu time de infraestrutura.

Você está confortável com o roadmap do seu produto refém de decisões de orçamento operacional tomadas há mais de um ano?

O DoiT Flexsave ajuda a resolver o desafio da gestão de commitments com automação dos descontos de capacidade computacional. Ele usa machine learning para monitorar continuamente seu uso da nuvem e identificar instâncias computacionais que não estão cobertas por commitments existentes. Em seguida, aplica tarifas com desconto de um ano nos workloads aplicáveis para fechar essa lacuna de cobertura. Assim, você ganha a flexibilidade do uso sob demanda sem se preocupar com custos de infraestrutura nas alturas. Dá até para comprar quantos commitments de três anos quiser para maximizar a economia e deixar o Flexsave cobrir o restante.

Já o DoiT Spot Scaling ajuda você a rodar seus workloads com confiabilidade em AWS Spot Instances sem precisar se preocupar com interrupções. Monitorando seus ASGs de forma autônoma, o Spot Scaling recomenda configurações de melhores práticas e substitui instâncias sob demanda pelas Spot Instances, com seus altos descontos, sempre que possível — com fallback para sob demanda em situações em que não há capacidade Spot no mercado. Além disso, o Spot Scaling é a única solução do mercado que permite que você fique com toda a economia, sem cobrar nenhuma comissão.

cloud cost optimization

Para saber mais sobre as estratégias de otimização de custos recomendadas pela DoiT, fale com um especialista hoje mesmo, ou confira nosso ebook recente, The Cost Conscious Cloud.