A computação em nuvem revolucionou a maneira como as empresas escalam e inovam, mas o controle de custos é um obstáculo. De acordo com a Precedence Research, o tamanho do mercado de computação em nuvem aumentará para US$ 1,6 trilhão em 2030, o que exige priorizar otimizações de custos à medida que muitas organizações migram para a computação em nuvem.
Neste guia, vamos nos concentrar em dicas práticas de alto impacto para otimização de custos de nuvem usando estudos de caso do mundo real. Faremos referência ao provedor de nuvem Amazon Web Services (AWS) neste guia, no entanto, siga a tabela abaixo para aplicar as mesmas dicas para outros grandes provedores de nuvem. As etapas são fáceis de seguir como desenvolvedor, arquiteto ou profissional de nuvem e ajudam a reduzir o custo.
O superprovisionamento de instâncias no EC2 é um dos motivos mais comuns para a ineficiência nos custos de nuvem. Um grande número de organizações tem uma tendência a superestimar sua utilização de recursos, ficando presas com computação não utilizada e contas pesadas.
• Analise o uso de CPU, memória e disco em instâncias usando o AWS Compute Optimizer ; ele fornece recomendações para redimensionamento para tipos de instância ideais.
• Mude para instâncias expansíveis como T3 para cargas de trabalho que testemunham picos periódicos de demanda.
• Automatize o dimensionamento correto integrando recomendações do Compute Optimizer ao seu pipeline de CI/CD.
aws ec2 modify-instance-attribute --instance-id instance-id --instance-type "{"Value": "t3.medium"}"
A Innovaccer , uma empresa de tecnologia de saúde, dimensionou corretamente suas instâncias EC2 com base nos insights do Compute Optimizer e reduziu os gastos com nuvem em 33%. Eles também conseguiram implantar instâncias T3 para cargas de trabalho com picos repentinos e reduzir seus custos de computação ociosa de acordo. Leia mais
Você poderá aproveitar o poder de computação extra disponível na AWS e economizar até 90% dos preços de Instâncias On-Demand usando Instâncias Spot. É ideal para cargas de trabalho flexíveis, sem estado e tolerantes a falhas, como processamento em lote, integração contínua, implantação contínua e big data.
• Identifique cargas de trabalho toleráveis a interrupções, como processos ETL, renderização de vídeo e bancos de teste.
• Aproveite o dimensionamento automático do EC2 com uma política de instâncias mistas para balanceamento perfeito de instâncias Spot e On-Demand para confiabilidade.
• Monitore os preços spot usando o AWS Spot Instance Advisor e defina o limite máximo de preço.
{ "LaunchTemplate": { "LaunchTemplateId": "lt-0abcd1234efgh5678", “version”: “1” }, "InstanceCount": 5, "Type": "request", "InstanceInterruptionBehavior": "terminate" }
O National Australia Bank (NAB) cortou 20% de sua conta de nuvem em 2022 ao utilizar Spot Instances para cargas de trabalho de análise e migrar para computação acessível em processadores AWS Graviton. Leia mais .
Recursos como ambientes de desenvolvimento e ambientes de preparação funcionam 24x7, mesmo quando ninguém está acessando o recurso. Se houver automação desses recursos para desligá-los durante o horário não comercial, isso economiza muito.
• Crie automação de agendamentos para iniciar e parar seus recursos em janelas de tempo pré-configuradas com o AWS Instance Scheduler .
• Crie uma solução para Lambda - para atualizar o cronograma dinamicamente com base na carga de trabalho ou no calendário de feriados.
{ "InstanceId": "i-0abcd1234efgh5678", "Schedule": "office-hours" }
A empresa de logística Archway economizou 40% em ambiente de não produção e 15% em ambiente de produção ao desligar automaticamente os recursos usando o AWS Instance Scheduler. Leia mais
O AWS S3 é incrivelmente flexível, mas o armazenamento de todos os dados sob uma classe padrão de armazenamento contribui muito para as despesas. A otimização correta das classes de armazenamento com frequência de acesso é essencial para a economia de custos.
• Ative o S3 Intelligent-Tiering para objetos cujos padrões de acesso são imprevisíveis.
• Configure as políticas de ciclo de vida do S3 para transferir dados automaticamente para o Glacier para armazenamento de longo prazo após 30 a 60 dias.
• Analise o uso do bucket com o S3 Storage Lens para identificar rapidamente oportunidades de redução de custos.
{ "Rules": [ { "ID": "MoveToGlacier", "Prefix": "", "Status": "Enabled", "Transitions": [ { "Days": 30, "StorageClass": "GLACIER" } ] } ] }
O Airbnb otimizou o uso do AWS S3 transferindo seus dados acessados com menos frequência para o S3 Glacier e reduziu seus custos de armazenamento em 27%.Leia mais
Para cargas de trabalho previsíveis, Instâncias Reservadas (RIs) e Planos de Economia oferecem até 72% de economia em relação aos preços sob demanda.
• Analisar cargas de trabalho em estado estável e comprometer-se com Instâncias Reservadas de 1 ou 3 anos.
• Posicione os planos de economia de computação quando for necessária flexibilidade de família de instâncias e região.
• Rastreie o uso por meio do AWS Cost Explorer para obter o ROI total do seu comprometimento.
Hiya , uma empresa de telecomunicações, automatizou os Planos de Poupança, aumentou sua Taxa de Poupança Efetiva em 22% em 2022, o que reduziu os custos incrementais em $ 110.000 por ano. Leia mais
A transferência de dados é um custo crescente para qualquer carga de trabalho, principalmente se sua carga de trabalho exigir tráfego entre regiões ou entrega de conteúdo.
• Aproveite o AWS CloudFront para disponibilizar dados acessados com frequência mais perto dos seus clientes e diminuir os custos de saída.
• Coloque recursos na mesma região para minimizar as taxas de transferência entre regiões.
• Aproveite o monitoramento de uso por meio do AWS Cost Explorer e do AWS Billing Dashboard .
A Canva otimizou sua infraestrutura de nuvem para gerar uma redução de 46% nos custos de computação e transferência de dados, graças ao uso do CloudFront e estratégias de rede eficientes. Leia mais
Com plataformas sem servidor como o AWS Lambda, você paga apenas conforme o uso, ou seja, paga pelo tempo de computação usado, o que ajuda a eliminar os custos associados à ociosidade.
• Refatorar aplicativos monolíticos para funções AWS Lambda orientadas a eventos.
• Execute otimizações de tamanho de memória e tempo de execução com o AWS Lambda Power Tuning .
import boto3 lambda_client = boto3.client('lambda') response = lambda_client.update_function_configuration( FunctionName='MyFunction', MemorySize=128 )
A Coca-Cola reduziu 65% da sobrecarga operacional ao migrar os serviços de telemetria de máquinas de venda automática para o AWS Lambda em 2022. Leia mais .
Se alguém não tiver visibilidade dos recursos da AWS gastos, é fácil ultrapassar os limites. Os orçamentos da AWS e a detecção de anomalias de custos fornecem insights acionáveis com alertas.
• Defina orçamentos para serviços ou equipes específicas e configure notificações por e-mail ou SNS .
• Use a Detecção de Anomalias de Custo da AWS para sinalizar automaticamente padrões de gastos incomuns.
{ "Budget": { "BudgetLimit": { "Amount": 1000, "Unit": "USD" }, "Notification": { "ComparisonOperator": "GREATER_THAN", "Threshold": 80, "Subscribers": [ { "SubscriptionType": "EMAIL", "Address": "[email protected]" } ] } } }
A Zynga , uma empresa de jogos, economiza milhões anualmente usando o AWS Budgets para monitorar seus gastos e controlar seus gastos com recursos não utilizados. Leia mais
Embora este guia se concentre principalmente no Amazon Web Services (AWS) , essas dicas de economia de custos também se aplicam a outros grandes provedores de nuvem, como Microsoft Azure, Google Cloud Platform (GCP) e. A maioria dos provedores de nuvem oferece serviços de computação, armazenamento, rede e monitoramento.
Abaixo está uma tabela de referência que mapeia os serviços da AWS para ofertas semelhantes do GCP e do Azure, o que facilita a aplicação das dicas e sugestões discutidas anteriormente ao GCP e ao Azure.
Característica/Serviço | AWS | Azul | Google Cloud (GCP) |
---|---|---|---|
Otimização de armazenamento | Políticas de ciclo de vida S3, Intelligent-Tiering | Gerenciamento do ciclo de vida do Azure Blob Storage | Políticas de ciclo de vida do armazenamento em nuvem |
Armazenamento de arquivo | Geleira S3 | Camada de arquivamento de blobs do Azure | Arquivo de armazenamento em nuvem |
Otimização de computação | Instâncias EC2, Instâncias Spot | Máquinas virtuais do Azure, VMs Spot | Compute Engine, VMs preemptivas |
Ferramentas de dimensionamento correto | Otimizador de computação da AWS | Consultor do Azure | Recomendador GCP |
Computação sem servidor | AWS Lambda | Funções do Azure | Funções de Nuvem |
Dimensionamento automático | Grupos de dimensionamento automático | Conjuntos de escala de máquina virtual | Autoescalador |
Monitoramento e alertas | CloudWatch, Explorador de Custos | Monitor do Azure, Gerenciamento de Custos do Azure | Monitoramento de nuvem, alertas de cobrança |
Preços Reservados | Instâncias Reservadas, Planos de Poupança | Máquinas Virtuais Reservadas | Descontos por uso comprometido |
Otimização de transferência de dados | Nuvem Frontal | Porta da frente azul | CDN em nuvem |
Gestão de Preços Spot | Consultor de instância spot | Consultor do Azure Spot | Recomendador de VM preemptivo |
Gestão de orçamento | Orçamentos AWS, Detecção de anomalias | Orçamentos do Azure | Orçamentos e alertas de custos |
É tudo sobre estabelecer um ambiente de eficácia e responsabilidade, não apenas cortar um belo centavo. Dê uma olhada em como a implementação dessas estratégias de alto impacto permitirá que você corte os custos da AWS sem cortar o desempenho.
Comece com o básico: dimensione corretamente suas instâncias EC2 ou automatize o agendamento de recursos e dimensione seus esforços até técnicas avançadas usando instâncias Spot, computação sem servidor e Savings Plans.
Se você tem uma carga de trabalho ou um desafio específico em mente, vamos nos aprofundar um pouco mais em algumas soluções personalizadas para reduzir sua conta de nuvem.