Durante el último mes, hemos realizado innumerables pruebas de migración en diversos escenarios y contenedores Docker. Además, he realizado aún más restauraciones de bases de datos de Discourse de un servidor a otro.
Basado en pruebas extensas de recuperación, el proceso de restauración de Discourse es brillante y ha funcionado a la perfección en cada situación desde la línea de comandos.
Por ejemplo, utilizamos un script muy primitivo para esto, que guardo en mi directorio /shared/neo/bin:
#!/bin/bash
echo "cd /var/www/discourse"
cd /var/www/discourse
echo "discourse enable_restore"
discourse enable_restore
echo "begin neo restore"
discourse restore unix-com-community-2020-03-27-033157-v20200320193612.tar.gz
echo "discourse disable_restore"
discourse disable_restore
Por supuesto, este pequeño script de bash no es necesario ni elegante; pero un pequeño script “para hacerlo fácil y rápido” como este realmente ayuda cuando estás ocupado y solo quieres copiar y pegar tu última copia de seguridad en el script y realizar la restauración.
Para mí, siempre restablezco desde la línea de comandos (en la aplicación y en Docker, por supuesto) y el proceso de restauración de Discourse nunca ha fallado, después de muchos escenarios de prueba. Simplemente crea una nueva instalación de Discourse en Docker y restaura desde la línea de comandos, y “boom”, está hecho.
Si comparamos esto con los “días del pasado de los dinosaurios”, antes de Docker, solo la brillantez del proceso de restauración de Discourse en Docker hace que un proceso de recuperación sea mucho más fácil y rápido.
Por ejemplo, también copiamos nuestras copias de seguridad de Discourse fuera del sitio (a un servidor diferente al de la instancia de producción de Discourse), y si ese servidor de producción o centro de datos “explota” en un desastre, podemos reconstruir una instancia de Discourse desde cero, en cualquier servidor de nuestra elección, y restaurarla fácilmente (por supuesto, necesitamos mantener nuestros TTL de DNS cortos, pero eso es un tema diferente).
¡Felicidades al equipo de Discourse por un proceso de copia de seguridad y recuperación tan bien pensado y excelentemente diseñado!
Funciona brillantemente, una y otra vez, sin ningún fallo.