backup.rst.in 2.12 KB
Backup
======

O SPB possui rotinas automatizadas para backup e restore dos dados de
todos os seus componentes. As seções a seguir descrevem estas rotinas.
Ambos os procedimentos devem ser realizados num *shell* onde o diretório
atual é o repositório de controle de versão do SPB.

Procedimento de backup
----------------------

Suponha que estamos realizando um backup do ambiente de produção,
chamado de ``prod``; o comando para realizar um *backup* é o seguinte
(note ``SPB_ENV=prod``)::

    $ rake backup SPB_ENV=prod

Esta operação vai copiar arquivos e *dumps* dos bancos de dados do
Noosfero, GitLab, Colab e Mailman, e copiá-los para um subdiretório
chamado ``backups`` na sua estação de trabalho.

Toda vez que o procedimento de backup é executado, o diretório ``backups`` 
é removido no início do procedimento, de modo que não se deve armazenar os
backups obtidos em tal diretório.

Note que o comando para resgatar os backups, especificado acima, apenas
copia arquivos das máquinas ``integration`` e ``social`` para sua estação
de trabalho. Os backups são realizados em tais servidores utilizando o
``rsnapshot``, e podem ser encontrados no diretório ``/.snapshots`` em cada
um dos servidores mencionados.


Procedimento de restauração
---------------------------

**Importante:** o procedimento de restauração é suportado apenas para uma
versão idêntica da plataforma, ou seja, não é suportado fazer um *backup*
de uma versão mais antiga da plataforma e restaurar esse *backup* numa
versão mais recente da plataforma, e nem vice-versa. Exemplo:
A versão referente a *branch* *stable-4.2* foi lançada no mês
de janeiro, ou seja, o *backup* deve ser deste período. Se tal *backup* for
restaurado na versão *stable-5.0* pode haver efeitos colaterais.

O comando para restaurar um backup no ambiente **@@SPB_ENV@@** é o seguinte::

    $ rake restore SPB_ENV=@@SPB_ENV@@

Esta operação vai restaurar o último backup realizado no ambiente
chamado **@@SPB_ENV@@**.

**Importante:** a restauração do backup irá apagar os dados existes no
ambiente @@SPB_ENV@@. Confira duas vezes antes de iniciar o
procedimento.