É um equívoco comum na indústria de alojamento considerar que snapshots e backups são termos intercambiáveis. No entanto, não é o caso: snapshots NÃO são iguais a backups! Embora ambos sirvam para proteger dados, eles diferem em aspetos fundamentais que é importante compreender.
O que é um snapshot?
Um snapshot é uma imagem de um ponto no tempo do disco de uma máquina virtual. Os snapshots são geralmente armazenados no mesmo sistema de armazenamento que os dados originais. Isso significa que qualquer snapshot que criar depende dos dados originais. Se os dados originais forem perdidos ou corrompidos, os snapshots também podem ser afetados. Os snapshots são usados principalmente para retrocessos rápidos ou para testar alterações antes de aplicá-las.
Normalmente, os fornecedores de VPS que utilizam painéis de controlo como VirtFusion ou SolusVM V2 suportam snapshots, caso esta funcionalidade esteja ativada.
Nota: Muitos fornecedores de VPS ainda operam com SolusVM V1 e o SolusVM V1 não suporta a funcionalidade de snapshots. A razão pela qual muitos fornecedores ainda utilizam o SolusVM V1 é que, de 2010 a 2022, foi basicamente a única solução considerada estável, com um historial estabelecido (antes de 2010, o HyperVM era a solução preferida. Após isso, o SolusVM tornou-se muito popular). Após 2022, surgiram alternativas mais modernas além do SolusVM V1, mas a transição do SolusVM V1 não é um processo fácil ou rápido, e não há um caminho de atualização; é necessário “importar” servidores de uma plataforma para outra. Este processo é muito complexo e exige um planeamento cuidadoso e meticuloso para garantir que tudo corra bem com o mínimo impacto possível nas máquinas virtuais existentes.
Então, por que é que um snapshot pode ser útil?
Os snapshots podem ser úteis para uma ampla gama de casos e motivos diferentes. Aqui estão alguns exemplos:
Exemplo de uso #1: Suponha que esteja a utilizar a ferramenta AlmaLinux ELevate para atualizar o seu sistema de CentOS 7 para AlmaLinux OS 8. Como existem muitas variáveis desconhecidas e coisas que podem correr mal, pode querer criar um snapshot (se o seu fornecedor de VPS o suportar no seu painel de controlo) antes de começar o processo ELevate. Assim que o processo ELevate for confirmado como concluído com sucesso, e tiver a certeza de que não precisa de reverter, pode então eliminar o snapshot que criou anteriormente. Se o processo ELevate falhar ou algo correr mal, pode, por outro lado, reverter para o snapshot (ou seja, “imagem do ponto no tempo”) que criou anteriormente.
Exemplo de uso #2: Aqui está outro exemplo possível. Suponha que esteja a realizar uma atualização de MySQL para MariaDB, ou uma alteração significativa semelhante. Como não tem certeza se as suas bases de dados podem ficar corrompidas após a atualização, pode querer fazer um snapshot antes de iniciar o processo, para ter a capacidade de reverter facilmente se algo correr mal.
O que é um Backup?
Em contraste, os backups são cópias de dados armazenadas de forma independente dos dados originais, muitas vezes em servidores de backup separados e, em alguns casos, até mesmo armazenados em diferentes datacenters físicos. Normalmente, os backups são uma oferta paga porque o fornecedor assume os custos adicionais para manter e alojar os servidores de backup fora do local. Os backups oferecem proteção contra a perda de dados devido a falhas de hardware, corrupção de dados ou eliminação acidental. Ao contrário dos snapshots, os backups são autossuficientes e podem ser usados para restaurar dados mesmo se a fonte original for perdida. Os backups são geralmente utilizados para retenção de dados a longo prazo e recuperação de desastres.
Ainda assim, na indústria de alojamento, é considerada uma boa prática fazer os seus próprios backups fora da tecnologia de backup do fornecedor. É desnecessário dizer que nunca deve confiar totalmente nos backups de um fornecedor, seja uma opção paga ou não. Para garantir a melhor prática e paz de espírito, considere implementar software como Restic, ou até mesmo um simples script bash rsync para fazer backups regularmente dos seus dados importantes em servidores fora do local, idealmente em servidores localizados em diferentes locais físicos de datacenters, no caso de um desastre natural.
Porque é que os Snapshots não são suficientes
Embora os snapshots possam ser parte de uma estratégia de proteção de dados, e sejam certamente uma funcionalidade conveniente do ponto de vista de um administrador de sistemas, não devem ser confiados como o único meio de backup. Backups verdadeiros, armazenados de forma independente dos dados originais, são essenciais para uma proteção robusta dos dados e recuperação de desastres. Confiar apenas em snapshots deixa os seus dados vulneráveis a perdas, caso o sistema de armazenamento original falhe ou se corrompa. Os snapshots devem ser utilizados para retrocessos fáceis ou para fins de teste.
Ao compreender as diferenças entre snapshots e backups e implementar uma estratégia robusta de proteção de dados, pode garantir a segurança e recuperabilidade dos seus dados críticos.