Otimizando Custos: Desligamento do RDS na AWS
Tags: aws, rds, devops, tutorial
Published: 2024-04-16 18:45:08

Em nosso ambiente de desenvolvimento, contamos com o banco de dados RDS - Aurora PostgreSQL hospedado na AWS para gerenciar nossos dados de forma eficiente. No entanto, percebemos recentemente que manter o RDS ativo continuamente estava impactando consideravelmente nossos gastos mensais na nuvem. Para enfrentar esse desafio, decidimos implementar uma solução simples: programar o desligamento do RDS após as 18h e sua reinicialização às 9h do dia seguinte. Essa medida básica me resultou em uma economia mensal de $40.

**Passo a Passo: Configurando o Desligamento Automático do RDS**

1. Acesse o Console da AWS
2. Criando uma Permissão

a. Navegue até o IAM

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/u273yse7zwdc9yqjnvhm.png)

b. No sub menu, acesse `Policies`

c. Clique em `Create Policy`:
        
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/huuu8vvbcslqq3gt8zum.png)
        
d. Em Policy editor coloque, e clique em Next:
        
        ```
        {
            "Version": "2012-10-17",
            "Statement": [
                {
                    "Effect": "Allow",
                    "Action": [
                        "rds:Describe*",
                        "rds:Start*",
                        "rds:Stop*",
                        "rds:Reboot*"
                    ],
                    "Resource": "*"
                }
            ]
        }
        ```
        
e.  Clique em `Create policy`
        
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fts1i8fh6dti5z2aasi2.png)

f. Com a policy criada, no sub menu acesse `Roles`
g. Clique em `Create Role`
        
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ptmetqn061s4uoxpu6ym.png)

h. Escolha a opção `Custom trust policy`, e clique em next
      
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jguq6esnfe6pgg9c5h6s.png)

i. Selecione a permissão criada anteriormente, e clique em next.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/61a5lwympkkqv9su77hf.png)

j. Confirme os dados e clique em `Create role`
 
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qj4alst07kklptl53ap6.png)

3. Navegue até o Systems Manager

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/57qzgyrnlz2ci4es6305.png)

4. No submenu, acesse: Gerenciador de estado
5. Criando associação

a. Clique em  `Create association`: 
 
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0rc1z3d2fpfad1n7ox3d.png)
        
b. O primeiro campo é o nome que gostaria de dar a associação. Ex: `StopRds`
c. Na seção Document, busque por `AWS-StartStopAuroraCluster`
 
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/aixlyglv8dq4nb44m65b.png)
        
d. Na seção Input parameters, preencha o nome do cluster rds que deseja iniciar, e a role que criamos no passo 2
        
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6hcn6lcehvh7dx5y4ryy.png)
        
e. Na seção **Specify schedule, vamos configurar o horário que a ação seja executada, considere o horário UTC.** 
        
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4964ys37r6h148z4be24.png)
        
f. Por fim, clique em `Create Association`
6. Repita o passo 5, mudando o passo d. para stop na seleção do action.

Com essas configurações em vigor, seu RDS será automaticamente desligado às 18h e reiniciado às 9h todos os dias, proporcionando economia de recursos e redução de custos na AWS.

----
Caso necessite executar a ação imediatamente, você pode fazê-lo na lista de Associações.

Espero que este guia seja útil para otimizar seus custos na AWS enquanto mantém a eficiência operacional. Se você tiver alguma dúvida ou quiser compartilhar sua experiência com essa dica, sinta-se à vontade para deixar um comentário abaixo. Estou aqui para ajudar! 

Obrigado por ler.