Como reduzir custos na AWS automatizando o Start/Stop de instâncias EC2

Em muitos ambientes de nuvem, principalmente em empresas que estão começando sua jornada na AWS, é comum encontrar instâncias EC2 rodando 24 horas por dia, mesmo quando ninguém está utilizando esses recursos.

Isso acontece principalmente em ambientes de desenvolvimento, homologação ou testes, que geralmente são usados apenas em horário comercial.

O problema é que, quando uma instância EC2 permanece ligada, ela continua gerando cobrança de compute. Com o tempo, isso pode gerar custos desnecessários na infraestrutura.

Uma forma simples e eficiente de resolver esse problema é implementar uma estratégia de Start/Stop automático de instâncias EC2.

Neste artigo vamos entender como isso funciona e como automatizar esse processo.

Entendendo o custo de uma instância EC2

O Amazon EC2 (Elastic Compute Cloud) é um dos serviços mais utilizados da AWS, permitindo criar servidores virtuais sob demanda.

A cobrança das instâncias é baseada principalmente no tempo em que elas permanecem em execução.

Ou seja:

  • Instância running → gera cobrança de compute
  • Instância stopped → não cobra compute

Mesmo com a instância parada, alguns custos ainda permanecem, como:

  • armazenamento EBS
  • snapshots
  • Elastic IP (caso esteja associado)

Porém, o custo de armazenamento costuma ser muito menor do que o custo de processamento.

Por isso, desligar instâncias que não estão sendo utilizadas é uma forma eficiente de otimizar gastos.

Quando utilizar Start/Stop automático

Esse tipo de automação é especialmente útil para ambientes que não precisam operar continuamente, como:

  • ambientes de desenvolvimento
  • ambientes de homologação
  • laboratórios de teste
  • aplicações internas utilizadas apenas em horário comercial

Por exemplo, imagine um ambiente que funciona apenas:

Segunda a sexta, das 8h às 18h.

Se ele permanece ligado 24 horas por dia, significa que cerca de 14 horas diárias de compute estão sendo pagas sem uso real.

Ao automatizar o desligamento fora desse período, é possível reduzir significativamente o custo mensal.

Automatizando com AWS Lambda e EventBridge

Uma maneira simples de automatizar o Start/Stop de instâncias EC2 é utilizando dois serviços da AWS:

  • AWS Lambda – para executar a lógica de start ou stop
  • Amazon EventBridge – para agendar a execução da função

O fluxo funciona da seguinte forma:

  1. O EventBridge dispara uma execução em um horário definido
  2. A função Lambda é executada
  3. A Lambda identifica as instâncias com uma determinada tag
  4. A função executa o start ou stop automaticamente

Isso permite gerenciar diversas instâncias ao mesmo tempo sem necessidade de intervenção manual.

Exemplo de automação usando tags

Uma boa prática é utilizar tags para identificar quais instâncias devem ser controladas pela automação.

Exemplo de tag:

Key: AutoSchedule
Value: OfficeHours

Assim, a função Lambda pode buscar apenas instâncias que possuam essa tag.

Configurando o agendamento

Depois de criar a função Lambda, basta configurar uma regra no Amazon EventBridge.

Exemplo de agendamentos:

Start das instâncias

cron(0 8 ? * MON-FRI *)

Executa às 08:00 de segunda a sexta-feira.

Stop das instâncias

cron(0 19 ? * MON-FRI *)

Executa às 19:00 de segunda a sexta-feira.

Assim, as instâncias permanecem ligadas apenas durante o horário necessário.

Conclusão

Automatizar o Start/Stop de instâncias EC2 é uma prática simples, mas extremamente eficaz para reduzir custos em ambientes AWS.

Com o uso de serviços como Lambda e EventBridge, é possível implementar essa estratégia rapidamente e gerenciar diversas instâncias de forma automatizada.

Para empresas que possuem ambientes de desenvolvimento ou homologação que não precisam operar 24/7, essa automação pode gerar uma economia significativa ao longo do tempo.

Quer uma solução personalizada para seu negócio?

Nossos especialistas em cloud computing analisam seu caso e criam uma estratégia sob medida.

Compartilhe essa publicação
Sobre o autor
Foto de Marcelo Arenhardt

Marcelo Arenhardt

Sou Account Manager na KXC Tecnologia, parceiro da Amazon Web Services (AWS). Apoio empresas a tirar o máximo proveito da tecnologia, ajudando a identificar desafios e oportunidades de crescimento.

Atuo na gestão e expansão de contas, conduzindo negociações e garantindo que nossas soluções estejam alinhadas aos objetivos de negócio dos clientes, sempre com foco em gerar valor de forma estratégica e sustentável.

Atualmente, estou em transição de carreira para Cloud Architect, aprofundando meus conhecimentos em arquitetura de soluções em nuvem e boas práticas da AWS, com o objetivo de ampliar minha atuação técnica e estratégica junto aos clientes.

Ver perfil e posts