Backup e restauração¶
O central tem um só portador de estado — PostgreSQL. Ou seja, todo o backup da instalação é um dump regular de um banco; nem os diretórios de estado dos streamers nem o arquivo entram nele, e nenhum é preciso para restaurar o plano de controle.
Tire dumps¶
pg_dump -U catena catena > catena-$(date +%F).sql
As credenciais estão no DATABASE_URL de /etc/catena/secrets.env. Ponha num timer e leve as cópias para fora da máquina: o dump é pequeno (configuração e registros, não mídia), tirá-lo até de hora em hora não custa nada.
Guarde o próprio arquivo /etc/catena/secrets.env uma vez, na instalação: ele não está no dump, e uma instalação restaurada precisará das mesmas senhas.
Restauração¶
O procedimento está verificado de ponta a ponta — do dump ao cluster vivo de novo:
- Pare o central:
systemctl stop catena. - Recrie o banco e carregue o dump:
psql -U catena -d postgres -c 'DROP DATABASE catena WITH (FORCE);' -c 'CREATE DATABASE catena OWNER catena;'
psql -U catena -d catena < catena-2026-07-21.sql
- Inicie o central:
systemctl start catena.
Nada mais é preciso: os canais, o registro e as configurações voltaram com o dump, e os streamers — que todo esse tempo transmitiram por conta própria — reconectam automaticamente, dentro da pausa de repetição de um minuto. Se o dump for mais velho do que o que os streamers chegaram a aplicar, eles recebem do central um sinal explícito e tomam o estado dele como a verdade — retrocesso de versões não rasga o cluster.
Destruição completa do central — a transmissão não para¶
Esta é a garantia principal da arquitetura do Catena: perder a máquina do central inteira — disco, banco, tudo — não interrompe o ar. Os streamers transmitem de forma autônoma, os espectadores continuam assistindo, e enquanto você constrói um central novo, nenhum deles percebe.
- Instale o Catena numa máquina nova (instalação) sem entrar no console.
- Devolva o
/etc/catena/secrets.envguardado (ou escreva oDATABASE_URLantigo no novo, se o banco era externo e sobreviveu). - Restaure o banco do dump como acima e inicie o serviço.
Os streamers encontram o novo central no endereço de sempre e reconectam — as chaves deles chegaram no dump junto com o registro. O plano de controle morreu e foi reconstruído do zero, e a transmissão não percebeu: o ar não parou nem por um segundo.
Se não há dump — o plano de controle se constrói de novo: um central vazio, canais criados do zero, e cada streamer órfão é reengatado com reset de estado e token novo. O ar segue também nesse cenário — mas a configuração de canais terá que ser refeita à mão. Um pg_dump regular poupa você do rebalanceamento do cluster inteiro.
O que não precisa de backup¶
- Os diretórios de estado dos streamers — é a identidade de uma máquina concreta; se ela morre, a máquina simplesmente é aderida de novo.
- O arquivo DVR — mídia nos discos dos streamers; a segurança dele é assunto de discos e replicação, não do dump do banco.
- O armazém de métricas — em memória, a história acumula de novo.