O RDS cobra por cada hora em que a base de dados está ligada, quer alguém a use quer não. A base de dados de desenvolvimento que só se toca em horário de escritório, a de um projeto que está em pausa, a que se montou para um teste: todas somam na fatura todos os meses. O RDS permite pará-las e deixar de pagar a parte de computação, que é a maior. Mas tem uma particularidade que surpreende toda a gente: ao fim de sete dias a AWS volta a arrancá-la sozinha. Este guia explica como pará-la, o que poupa e como lidar com esse limite.
Antes de começar: o que significa cada coisa
- RDS
- O serviço de bases de dados geridas da Amazon.
- Instância
- Cada base de dados do RDS, com o seu tamanho (classe) e o seu armazenamento.
- Parar (stop)
- Desligar a base de dados conservando dados e configuração. Pode voltar a ligar-se com o mesmo.
- Computação versus armazenamento
- Ao parar deixa de pagar a computação (as horas da instância). O armazenamento (os GB do disco e as cópias) continua a ser pago.
- Instantâneo
- Uma cópia da base de dados. Ao restaurá-la cria-se uma base de dados nova. É a via para pausas longas.
- Multi-AZ e réplicas de leitura
- Configurações avançadas. Uma base com réplicas de leitura não pode ser parada.
Passo a passo
Verifique que pode ser parada
Consola do RDS, Databases, abra a sua. Se tiver réplicas de leitura ou se for ela própria uma réplica, não pode ser parada: seria preciso apagar primeiro as réplicas. As bases Multi-AZ podem ser paradas. E se a base de dados ainda for usada por alguma coisa (um site, um programa noturno), avise ou coloque-o em pausa: ao pará-la, o que tentar ligar-se falhará.
Faça um instantâneo manual
Actions, Take snapshot, com um nome com data. Pará-la é seguro, mas se a pausa for longa, esta cópia será o seu plano B. Ao parar, o RDS faz ainda um instantâneo próprio, por precaução.
Pare a base de dados
Selecione a instância, Actions, Stop temporarily. Confirme. O estado passa por "stopping" até "stopped" em alguns minutos. A partir desse momento não se cobra a computação da instância. Se tinha Multi-AZ, também não a da réplica.
Perceba o que continua a pagar
O armazenamento atribuído (os GB do disco, estejam cheios ou não), os instantâneos manuais e as cópias automáticas que existam e, se usava o Secrets Manager ou outros extras, esses extras. Para uma base pequena, são uns poucos euros por mês face a dezenas da instância ligada. Vê-o no mês seguinte no Cost Explorer filtrando por RDS.
Conte com o rearranque ao fim de sete dias
É a regra do RDS: uma base parada liga-se sozinha passados sete dias, para receber atualizações de manutenção. Não o avisa por e-mail a não ser que tenha uma notificação de eventos do RDS configurada. Se a pausa for de algumas semanas, tem duas opções: voltar a pará-la de cada vez que arrancar (ponha um lembrete semanal, ou agende a paragem com o EventBridge Scheduler e a ação
StopDBInstance), ou a opção do passo seguinte.Para pausas longas: instantâneo e apagar
Se o projeto vai estar meses parado, faça um instantâneo final (ao apagar, o RDS oferece-o) e apague a instância. Pagará só o instantâneo, que é armazenamento barato. Quando o projeto voltar, restaura o instantâneo (cria uma base nova com outro ponto final, como explica o guia de cópias do RDS) e atualiza a configuração da aplicação. É um quarto de hora de trabalho em troca de meses sem pagar a instância.
O que pode correr mal
A base de dados ligou-se sozinha
Passaram sete dias. Volte a pará-la ou passe ao plano de instantâneo e apagar. Não é uma falha, é o comportamento documentado do RDS.
O site dá erro desde que a parei
Alguma coisa continuava a usá-la. Arranque-a (Actions, Start; demora alguns minutos) e descubra o quê: às vezes é uma tarefa agendada de que ninguém se lembrava.
Parei e a fatura mal baixa
Veja quanto armazenamento tem atribuído: uma base com 500 GB de disco parada continua a pagar esses 500 GB. E verifique se há instantâneos acumulados. Se a maior parte do custo era armazenamento, parar não é a ferramenta; reduzir o disco (migrando para uma instância nova mais pequena) ou apagar cópias antigas, sim.
Quero que pare sozinha todas as noites
É possível com o EventBridge Scheduler com as ações StopDBInstance e StartDBInstance, tal como para as máquinas EC2 (guia nesta secção). Cuidado com o rearranque: se a base estiver parada mais de sete dias seguidos (férias), a AWS liga-a e o seu agendamento volta a pará-la nessa noite; funciona, mas convém sabê-lo.
No Simplio
No Simplio para e arranca uma base de dados RDS com um botão a partir da mesma lista que as suas máquinas, define-lhe um horário (por exemplo, ligada só em horário de escritório) e o Simplio ocupa-se do pormenor dos sete dias: se a AWS a ligar sozinha, volta a pará-la e conta-lho. No ecrã Custos vê o que custa cada base de dados ligada e o que poupa parada.
O mesmo, na AWS e no Simplio
| Na consola da AWS | No Simplio | |
|---|---|---|
| Parar e arrancar | Consola do RDS, Actions, confirmar; lembrar-se do rearranque semanal | Botão parar/arrancar na base de dados, e o Simplio volta a pará-la se a AWS a ligar ao fim de sete dias |
| Horário de escritório | Dois agendamentos no EventBridge Scheduler com permissões | Horário no cartão da base de dados, no seu fuso horário |
| Saber o que poupa | Cost Explorer no mês seguinte | Custo estimado da base de dados ligada e parada, no ecrã Custos |