La actualización falló espectacularmente

Las versiones beta, después de las pruebas, eventualmente se lanzan como una versión estable. Dependiendo de cuán grandes sean los cambios en el núcleo, pueden requerirse pasos especiales que se realicen a través de la línea de comandos.

Un VPS (Servidor Privado Virtual) es lo que ha pagado para que se ejecute su instalación de Discourse. A menos que esté ejecutando en su PC doméstica; que típicamente será una instalación no compatible.

Estaba usando Upcloud como mi proveedor de VPS. Ahora estoy usando Cobtabo.

Todas las versiones beta, después de suficientes pruebas, se convierten en lo que la gente llama lanzamientos estables.

En el enlace que proporcionó Moin, tiene:

  • Beta aún no muy avanzada en pruebas (no recomendada para producción)
  • Pruebas superadas (superó numerosas pruebas y se considera lista para producción) Rama recomendada por el equipo para seguridad.
  • Estable si ejecuta sus propios complementos personalizados y temas/componentes de temas. Genial ya que los cambios son muy lentos. Pero corre más riesgos de seguridad ya que las actualizaciones son lentas.

Los planes de Discourse alojados suelen utilizar la rama Pruebas superadas para garantizar la mejor seguridad y una buena estabilidad.

No lo tomes a mal. Pero dado que no estás familiarizado con términos como VPS, sugiere que eres muy nuevo en esto. ¿Instalaste Discourse tú mismo o tal vez heredaste un foro de Discourse? Todos fuimos nuevos en algún momento en la configuración/mantenimiento de Discourse.

No es una opinión. Es un hecho si el software que eliges usar. Lo cual está a la par con la mayoría del software de código abierto e incluso de código cerrado que usas. Escribí vps. Android puso en mayúscula la V y la P.

Sin embargo, está bien, imagino que tendrás que resolver las cosas por ti mismo; si realmente no quieres ayuda para aprender.

¡Buena suerte! :clinking_beer_mugs::smiling_face_with_sunglasses::+1::sparkles:

Noto que @anon55243134 ha eliminado casi todas sus publicaciones. Realmente creo que hay lecciones que aprender aquí para el equipo y para el mantenimiento de los scripts de actualización y la comunicación sobre la actualización.

@anon55243134 es alguien que ha estado ejecutando un discourse autoalojado durante años y ahora tiene una instalación dañada y que no funciona, simplemente siguiendo las indicaciones para actualizar.

Si eso me pasara a mí, estaría muy molesto y angustiado por la posibilidad de perder el contenido de mi foro. Habiendo optado por el autoalojamiento, es posible que no esté preparado o no pueda pagar mucho dinero para que lo arreglen, si es que eso es posible.

Creo que hay advertencias y comprobaciones insuficientes

  • ¿ha realizado el usuario una copia de seguridad reciente (¡no una instantánea de los servicios de alojamiento!)?
  • ¿la ha descargado el usuario?
  • ¿se le dice al usuario que la actualización basada en web podría fallar y requerir una actualización de línea de comandos?
  • ¿se le pregunta al usuario si su sistema operativo es muy antiguo?
  • ¿se le dice al usuario que migrar a un servidor nuevo y actualizado podría ser el mejor enfoque?
  • ¿se advierte al usuario que las actualizaciones importantes (como una actualización de base de datos) pueden ser peligrosas y que, si no tiene experiencia, esperar una semana podría ser una buena idea, para que se encuentren y corrijan los problemas?

Aún más preocupante, en una de las publicaciones eliminadas veo algunos fallos bastante drásticos que no fueron capturados y el script continuó:

cat: /shared/postgres_data/PG_VERSION: No such file or directory
...
E: Unable to locate package postgresql--pgvector
cp: cannot stat '/etc/postgresql//main/*': No such file or directory
sh: 1: /usr/lib/postgresql/bin/postgres: not found
...
Finding the real data directory for the source cluster      
could not get data directory using "/usr/lib/postgresql/bin/postgres" -D "/shared/postgres_data" -C data_directory: No such file or directory
Failure, exiting

No he revisado los scripts, pero esperaría que la ausencia de cosas sea una indicación de que los problemas se avecinan y es hora de detenerse.

5 Me gusta

¡Perdón por abrir un tema polémico existente! En mi caso, actualicé Ubuntu y Postgres y luego volví a ejecutar sudo ./luancher rebuild app en el directorio /var/discourse y todo parece haberse reconstruido correctamente y el sitio está de nuevo en línea.

Gracias a todos los que me ayudaron con este esfuerzo. Aprecio la ayuda y no sé dónde estaría sin esta comunidad.

¡Gracias!

5 Me gusta

Definitivamente hay oportunidades aquí para mejorar Discourse. Tener una instancia estable en funcionamiento ahora durante 7 u 8 años, siempre ha habido momentos en los que he necesitado actualizar a través de la línea de comandos del servidor. Esto incluso está cubierto en la documentación con una frecuencia recomendada.

Sin embargo, la documentación no es tan fácil de acceder como podría ser. El complemento de Categorías de Documentos es definitivamente una mejora. Pero aún así, en mi humilde opinión, no es tan bueno como podría ser.

Mis recomendaciones para mejorar esto serían enlaces directamente en la interfaz web de administración. Tal vez con un enlace (?) para mostrar una ventana emergente con alguna información y un enlace a un tema aquí en Meta con información más detallada.

Con el panel de Actualización, también sería útil tener información adicional de manera similar, incluso con Core & Docker, para atenuar el botón con un mensaje requerido para hacerlo desde la línea de comandos del servidor, con un enlace a las notas de la versión en particular con la primera sección que detalle los requisitos, como Docker Versión X y Ubuntu LTS versión X (o distribuciones Linux oficialmente soportadas equivalentes). El tema enlazado también debería incluir, en mi humilde opinión, algunos comandos de línea de comandos para copiar y pegar en el servidor.

Con los scripts, no estoy seguro de cuán fácil sería hacer esto. Pero que el script inicial haga una comprobación de algunos requisitos básicos. Si la dependencia necesaria no está presente, salir con un mensaje y tal vez un enlace a la información base necesaria.

El mensaje de error de actualización fallida necesita ser más intuitivo. Aunque dice que se despliegu hacia arriba para errores anteriores, he encontrado algunos errores que parecen comunes y no afectan la reconstrucción. Por lo tanto, exportar errores clave al archivo de registro que causaron que la reconstrucción fallara sería mucho mejor. Sin embargo, estos cambios propuestos probablemente requerirán bastante trabajo y tiempo.

Con la documentación: #documentación:self-hosting realmente se necesita un inicio más exhaustivo con una introducción de lo que se debe saber antes de autoalojar. Como un conocimiento decente del sistema operativo, como Ubuntu LTS, con alguna información básica sobre mantenimiento y actualización de la distribución. Mejores prácticas en copias de seguridad y guías directas. Estos podrían incluso añadirse como un tema con etiquetas en la categoría Staff, con enlaces a Meta.

Creo que Bloomberg hizo un buen tema sobre lo que sucedió en este asunto. Por mi parte, pido disculpas a @anon55243134. Sin embargo, también necesitan asumir su propia parte. Si vienes para soporte, es necesario estar dispuesto a escuchar lo que se dice y proporcionar la información solicitada, para que todos los que puedan ayudar puedan guiar hacia posibles soluciones.

Todos podemos tener ideas o opiniones sobre cómo podría mejorarse el diseño, etc. Pero en lugar de cambios que nos gustaría tener, debemos aceptar cómo es en la actualidad.Sé lo angustiante que es tener tiempos de inactividad dañinos. Hace un tiempo tuve un problema con el cliente para quien hago voluntariamente tareas administrativas. Los petitioné durante más de un mes cuando no podía reconstruir la aplicación debido a que el servidor era demasiado pequeño y las instrucciones para liberar espacio aquí no pudieron resolverlo; ignoraron mi consejo y, en última instancia, como advertí, el servidor sufrió una caída importante. Terminaron pagando a un miembro aquí para solucionar el problema, lo que implicó desplegar un servidor nuevo con espacio suficiente. El sitio estuvo caído por más de 2 semanas debido a su negligencia. Más tarde, no estaban manteniendo el servidor de correo y, aunque el sitio no estuvo caído, la falta de correos electrónicos de notificación causó muchos daños. Podría agregar más cosas. Pero no es un problema de Discourse. Es un problema de auto-hospedaje.

Hace mucho tiempo tuve un problema de reconstrucción causado por un archivo plantilla. El registro me dio suficiente información para explorar una hipótesis: comentar el archivo plantilla. Funcionó para resolver mi problema. Cuando lo publiqué aquí, compartí lo que hice, lo que ayudó al equipo a identificar el problema.

En todos los aspectos, debemos esforzarnos por mejorar. Tómate el tiempo para leer y escuchar a quienes tienen la experiencia y habilidades para ayudar a resolver problemas. Así he desarrollado mi conciencia sobre las cosas que puedo hacer. Para cosas con las que no tengo experiencia (especialmente por la complejidad de Discourse), investigo lo mejor que puedo, pido ayuda y sigo los consejos de todos aquí que de hecho entienden más profundamente este software fantástico.

@anon55243134, si estás dispuesto a dar una oportunidad, quizás todos podamos ayudarte a volver en línea. Solo necesitamos evitar durante este proceso desviarnos a “cómo pensamos que debería ser” y aceptar por el momento “cómo es”. Una vez arreglado, podemos aprender de las lecciones y comenzar una buena discusión con recomendaciones sobre cómo mejorar las cosas y aceptar, si el equipo está receptivo (que generalmente lo está), que esto llevará bastante tiempo debido a otros proyectos en marcha. De nuestra parte, podemos trabajar en ideas y aquellos que realmente saben, si tienen tiempo, pueden trabajar en algunas de las informaciones necesarias para los instructivos, mejores prácticas, etc.

Juntos Unidos, Todo Logra Más. Decidimos que logramos muy poco o nada en absoluto.

5 Me gusta