Recuperação de desastre
A recuperação de desastre dessa estrutura consiste em seguir os passos desse tutorial a partir da criação das máquinas virtuais.
Caso não seja necessário reinstalar o SO, os passos são os seguintes:
- Remover o cluster kubernetes:
./rke remove
- Executar os seguintes comandos em cada nó:
sudo docker stop $(docker ps -a -q)
sudo docker rm $(docker ps -a -q)
sudo docker volume prune
sudo rm -rf /var/lib/rook
Reestabelecer o cluster Kubernetes e os serviços
Quando já possua acesso via ssh (ssh rancher@nodenuvemX
) a todos os nós, pode-se executar o comando para criar/atualizar o cluster (de posse do arquivo cluster.yml
):
./rke up --config cluster.yml
Baseado nas configurações oficiais de Backups and Disaster Recovery e Creating Backups—High Availability Installs foi configurado o serviço de instantâneos (snapshots) recorrentes do etcd
no cluster.yml. Os instantâneos são sincronizados diariamente no servidor de monitoramento/backup em /backup/etcd_kubernetes
e gravados em fita.
Para fazer a recuperação do backup deve-se utilizar os passos descritps em Restoring Backups—High Availability Installs.
Caso não seja possível a opção acima
- Clonar o repositório dos serviços: https://github.com/ctic-sje-ifsc/servicos_kubernetes
git clone https://github.com/ctic-sje-ifsc/servicos_kubernetes
- Criar todos os namespaces:
cd servicos_kubernetes/namespaces
kubectl create -f namespaces.yaml
- Baixar os arquivos de secrets do GitLab (acesso restrito) e criá-los com o comando:
make -i create
- Acessar a pasta dos serviços e iniciar tudo:
cd servicos_kubernetes
make -i create