A principios de marzo, las copias de seguridad de mi Discourse dejaron de realizarse.
Los ajustes no fueron modificados, aunque es probable que se haya producido (y probablemente ocurrió) una actualización de Discourse.
Las copias de seguridad se guardan en almacenamiento local y, aparte de establecer el máximo de copias de seguridad en 3 y la frecuencia en 3, el resto de los ajustes están en sus valores predeterminados.
Puedo realizar una copia de seguridad manual y funciona, aunque noto que, al hacerlo, la copia ahora es un archivo sql.gz, mientras que antes era un archivo tar.gz.
Sin embargo, las copias de seguridad automáticas no se ejecutan; parece que intentan hacerlo, pero no recibo ningún informe de errores. En la sección de Copias de seguridad aparece “No hay copias de seguridad disponibles” (incluida la copia manual que realicé hace unos días, la cual ahora ha desaparecido), y en Copias de seguridad → Registros dice “Aún no hay registros…”.
Intenté reiniciar el servidor (todo el Droplet de Digital Ocean), pero esto no hizo que las copias de seguridad volvieran a ejecutarse.
La versión indica que estoy actualizado a la 2.6.3 (uso la rama estable, no la rama más reciente).
Es de esperar mientras todas tus subidas se almacenen en S3. En ese caso, el archivo de copia de seguridad solo es un volcado de base de datos comprimido.
Por favor, revisa /logs. ¿Hay algún error que pueda estar relacionado con las copias de seguridad?
También, verifica /u/system/messages/sent para ver si el sistema envió algún mensaje privado (PM) sobre copias de seguridad fallidas. Hubo un error que impedía que los administradores recibieran notificaciones sobre esos mensajes en ciertas circunstancias.
Es un poco preocupante que la copia de seguridad manual también haya desaparecido. No estoy seguro de cómo pudo suceder eso, ya que configuraste maximum_backups en 3. ¿Configuraste algún tipo de cronjob o script que mueva/elimine copias de seguridad o que no funcione con la nueva extensión de archivo (sql.gz en lugar de tar.gz)?
¿Realmente no están ahí los archivos de copia de seguridad? ¿Qué dice ls /var/discourse/shared/standalone/backups/default?
Es normal. Los registros solo muestran la salida de las copias de seguridad manuales.
Acabo de verificar y no hubo cambios relevantes en el código de copias de seguridad desde el lanzamiento de la versión 2.6.
Ninguna de mis subidas se almacena en S3; todas se guardan localmente.
No que yo pueda ver. Recibo el habitual desastre de TypeErrors, pero siempre los he visto. Buscar “backup” no encuentra nada excepto TypeErrors relacionados con páginas web de temas del foro que casualmente contienen la palabra “backup”.
Oh, mira, hay un montón de mensajes de “Backup failed” (Respaldo fallido). ¿Por qué no recibo ninguna alerta sobre estos?
Bueno, no sé por qué nunca recibo un informe de ellos, pero eso arroja el siguiente error:
[2021-04-08 03:35:35] Eliminando el directorio temporal ‘/var/www/discourse/tmp/backups/default/2021-04-08-033313’…
[2021-04-08 03:35:35] Comprimiendo el archivo con gzip, esto puede tardar un rato…
[2021-04-08 03:38:49] EXCEPCIÓN: lib/discourse.rb:92:in `exec’: Error al comprimir el archivo con gzip.
gzip: /var/www/discourse/public/backups/default/keyboard-maestro-discourse-2021-04-08-033313-v20201116132948.tar.gz: No queda espacio en el dispositivo
En realidad, eso es un script externo: copia el respaldo a otra máquina para almacenamiento permanente y lo elimina para liberar espacio en el servidor (aunque, aparentemente, no suficiente espacio).
Por lo tanto, las preguntas que quedan son:
¿Por qué no recibo ninguna alerta sobre estos mensajes de error?
¿Por qué el respaldo manual es un archivo .sql.gz cuando el respaldo real es un .tar.gz (ambos deberían haber incluido las subidas, que son locales)?
¿Por qué funciona el respaldo manual pero el automático se queda sin espacio (probablemente relacionado; quizás el manual no incluye realmente las subidas y por eso es más pequeño, aunque parece tener el tamaño adecuado)?
Y la obvia: me pregunto cómo voy a crear espacio extra en el servidor. [Edición: bien, ejecutando ./launcher cleanup liberé 15 GB de espacio, lo cual debería marcar la diferencia].
Bueno, al menos ahora sé cuál es el problema. Me gustaría mucho saber la respuesta a la primera pregunta, ya que obviamente debería estar recibiendo notificaciones sobre esto. ¿A quién se envían estos correos o quién recibe la alerta de estos mensajes? ¿Cómo puedo asegurarme de enterarme de ellos en el futuro?
Como mencioné, había un error que se corrigió en una de las versiones beta recientes.
Probablemente elegiste crear una copia de seguridad manual sin cargas en el cuadro de diálogo que aparece cuando creas una copia de seguridad en la interfaz de usuario.