Instalação
Backup
esta documentação detalha métodos recomendados para realizar backup das bases de dados e dos volumes persistentes (pvc) da plataforma aura cobre abordagens manuais e uso de ferramentas de backup, sem detalhar ou citar nomes de softwares específicos 1\ backup de bancos de dados (postgresql) existe apenas uma base de dados postgresql por ambiente (produção, teste, homologação, etc ), necessário para o funcionamento da plataforma aura nome padrão aura blocks 1 1 métodos de backup do postgresql 1 1 1 backup manual com pg dump (linha de comando o método mais comum e recomendado para backup lógico do postgresql utiliza comandos nativos da ferramenta, geralmente executados a partir do pod ou da máquina onde está o banco exemplo a dump direto do pod para o host local kubectl exec it \<namespace>/\<postgresdb pod> pg dump u \<db user> \<db name> > /backup sql este comando executa o pg dump diretamente dentro do pod e redireciona o resultado ( backup sql ) para o seu host local, sem necessidade de copiar depois prós prático, evita etapas extras contras o dump é transferido pela rede; em bancos muito grandes, avalie limitações de banda e possíveis timeouts do kubectl exemplo b dump gravado no pod e copiado depois kubectl exec it \<namespace>/\<postgresdb pod> bash c "pg dump u \<db user> \<db name> > /tmp/backup sql" kubectl cp \<namespace>/\<postgresdb pod> /tmp/backup sql /backup sql use este método se preferir salvar o dump no pod e copiar para o host em seguida 1 1 2 backup via interface gráfica se preferir interface gráfica, utilize ferramentas de administração de bancos de dados compatíveis com postgresql, seguindo a documentação oficial dessas ferramentas 1 1 3 backup avançado ferramentas especializadas podem ser utilizadas para automatizar, agendar e aprimorar backups em ambientes críticos ou com alto volume de dados, permitindo, por exemplo, backups incrementais, upload em nuvem, gerenciamento de retenção, entre outros recursos consulte a documentação das ferramentas de sua escolha para instalação, configuração e restore 1 1 4 backup do volume do postgresql (pvc) também é possível realizar backup do volume do banco utilizando métodos manuais (como cópia de arquivos) ou ferramentas de backup de volumes persistentes importante para garantir a consistência do backup, recomenda se pausar o banco ou executá lo em modo de backup durante o processo 1 2 restauração 1 2 1 restauração manual importante antes de restaurar o backup, certifique se de que a base de dados ( \<db name> ) já está criada no postgresql o comando psql não cria a base automaticamente durante a restauração \# exemplo criando a base de dados se ainda não existir kubectl exec it \<namespace>/\<postgresdb pod> psql u \<db user> c "create database \<db name>;" depois, prossiga com a restauração exemplo a restauração a partir do host local direto do pod cat /backup sql | kubectl exec i \<namespace>/\<postgresdb pod> psql u \<db user> \<db name> exemplo b copia o backup para o pod e depois é feita a restauração kubectl cp /backup sql \<namespace>/\<postgresdb pod> /tmp/backup sql kubectl exec it \<postgresdb pod> psql u \<db user> d \<db name> f /tmp/backup sql 1 3 boas práticas automatize backups periódicos em produção mantenha múltiplas cópias (offsite/nuvem/local) sempre teste o restore em ambiente de homologação documente o processo de restauração 1 4 comparativo de métodos método consistência automatizável offsite complexidade recuperação comandos nativos sim sim sim baixa fácil ferramentas especializadas sim sim sim média avançada backup do volume (pvc) sim sim sim média rápida consistência depende do banco estar pausado ou em modo de backup durante o procedimento 2\ backup de volumes persistentes (pvc) os volumes persistentes (pvc) estão descritos nos manifestos do kubernetes, geralmente no arquivo persistentvolumeclaim yaml exemplo de pvc apiversion v1 kind persistentvolumeclaim metadata name storage namespace aura blocks spec accessmodes \ readwritemany resources requests storage 50gi storageclassname \<storageclassname> a escolha do storageclassname impacta diretamente as opções de backup disponíveis 2 1 métodos de backup de pvc 2 1 1 backup manual realize backup copiando arquivos diretamente do volume do pod para outro local seguro exemplo a usando kubectl cp kubectl cp \<namespace>/\<pod> /caminho/dados /backup local substitua \<namespace> , \<pod> e o caminho do volume conforme sua aplicação exemplo b usando container temporário + tar kubectl run backup job rm i t restart=never \\ \ image=alpine \\ \ overrides='{"spec" {"volumes" \[{"name" "data", "persistentvolumeclaim" {"claimname" "\<nome pvc>"}}], "containers" \[{"name" "backup", "image" "alpine", "command" \["sh"], "stdin" true, "tty" true, "volumemounts" \[{"mountpath" "/caminho/dados", "name" "data"}]}]}}' \\ sh dentro do shell tar czvf /tmp/backup tar gz /caminho/dados em outro shell, copie o arquivo do pod kubectl cp \<namespace>/backup job /tmp/backup tar gz /backup tar gz dicas compacte arquivos grandes ( tar , gzip ) faça backup regularmente e teste a restauração 2 2 comparativo dos métodos método suporte a volumes backup offsite automação complexidade volume grande manual ( cp , tar ) sim sim baixa baixa médio ferramentas de backup sim sim alta média/alta ótimo 3\ recomendações finais realize backup periódico dos dados críticos prefira automação para ambientes produtivos sempre teste a restauração! documente o processo de restauração para cada método utilize múltiplas estratégias para resiliência máxima referências backup postgresql https //www postgresql org/docs/17/backup htmlpgadmin backup https //www pgadmin org/docs/pgadmin4/development/backup dialog html