# Scheduled Scaling (AWS)

### Visão Geral

O Scheduled Scaling é uma funcionalidade do módulo Autofix que permite o ajuste automático da capacidade de recursos cloud com base em agendamentos pré-definidos. Ele possibilita que a infraestrutura aumente ou diminua de tamanho em horários estratégicos, garantindo o equilíbrio ideal entre desempenho operacional e eficiência de custos.

### Objetivo de Negócio

O foco desta funcionalidade é alinhar a oferta de infraestrutura à demanda real e previsível do negócio. O Scheduled Scaling resolve o problema do superdimensionamento (*overprovisioning*) em cenários como:

* Picos Previsíveis: Aplicações que recebem carga apenas em horário comercial.
* Sazonalidade Específica: Aumento de demanda em campanhas de marketing ou períodos de fechamento.
* Ambientes Limitados: Recursos de teste ou homologação que só precisam estar ativos durante a jornada de trabalho.
* Redução de Ociosidade: Diminuição drástica de capacidade em finais de semana e feriados.

***

### Recursos Suportados

O Scheduled Scaling atua principalmente sobre grupos de escalonamento, permitindo o ajuste fino de:

* Auto Scaling Groups (ASG): Modificação dinâmica dos parâmetros de capacidade.
* Parâmetros Editáveis: Capacidade Inicial (*Desired*), Capacidade Mínima (*Min*) e Capacidade Máxima (*Max*).

***

### Como Funciona: O Fluxo de Configuração

O funcionamento é dividido em três etapas fundamentais para garantir precisão e controle:

#### 1. Definição do Escopo

O primeiro passo é identificar quais recursos serão impactados pela regra:

* Seleção: Definição da conta e região AWS.
* Identificação: Os recursos podem ser filtrados por Tag, Nome do Recurso ou Resource ID.
* Lógica de Filtro: Utilização de expressões como `CONTAINS` ou `NOT CONTAINS` para inclusão ou exclusão precisa de recursos no grupo de escalonamento.

#### 2. Definição da Capacidade

Nesta etapa, determinam-se os novos limites do recurso para o período agendado:

* Capacidade Inicial (Desired): Quantidade de instâncias que o sistema tentará manter.
* Capacidade Mínima/Máxima: Define a "fronteira" de segurança para o escalonamento automático.

#### 3. Agendamento (Scheduling)

Configuração do calendário de execução:

* Periodicidade: Definição dos dias da semana.
* Precisão: Horário exato de início e fim da ação.
* Automação: Uma vez configurado, o sistema assume o ciclo recorrente sem intervenção humana.

***

### Impacto em FinOps

A aplicação estratégica do Scheduled Scaling reflete em indicadores de saúde financeira e técnica:

* Otimização Estrutural: Ajuste da base de custo à curva de demanda real.
* Redução de Overprovisioning: Eliminação de custos de instâncias que ficariam ligadas sem necessidade.
* Previsibilidade Financeira: Facilita a estimativa de gastos mensais com base em um comportamento de uso padronizado.

### Boas Práticas

* Validação de Aplicação: Certifique-se de que a aplicação suporta a redução de instâncias e consegue realizar o *warm-up* necessário ao religar.
* Controle por Tags: Utilize tags específicas (ex: `AutoScalingGroup: Agendado`) para garantir um controle mais granular e evitar afetar recursos críticos.
* Ambientes não críticos: Inicie a implementação por ambientes de Sandbox ou QA para validar os horários de pico antes de aplicar em Produção.
* Revisão Periódica: Ajuste os horários conforme o crescimento do negócio ou mudanças no comportamento do usuário.

***

### Para utilização e acesso na plataforma Pier:

A funcionalidade Scheduled Scaling permite configurar uma automação para alguns serviços e recursos da AWS. Através dessa configuração, dependendo do seu ambiente, é possível diminuir aos fins de semana, ou aumentar o dimensionamento em horários de pico, configurando por aqui.&#x20;

1. **Acessando o Scheduled Scaling**.

Na menu de funcionalidades lateral do Autofix, selecione Scheduled Scaling .

<figure><img src="https://109632036-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fcxn6hAOP0k8IqKSI8iRP%2Fuploads%2FvFEXYMGDsCI1qSZBXPHY%2Fimage.png?alt=media&#x26;token=20dca585-5706-43f3-b545-455f9e970b9e" alt=""><figcaption></figcaption></figure>

Essa funcionalidade atende os serviços: **Auto Scaling Groups, ElastiCache, OpenSearch e RDS IOPS**.

<figure><img src="https://109632036-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fcxn6hAOP0k8IqKSI8iRP%2Fuploads%2F9NUMkx0axeg6RtvjTkPG%2Fimage.png?alt=media&#x26;token=e6146218-0a7b-41fd-8622-dae0efda83ae" alt=""><figcaption></figcaption></figure>
