¿Es generalmente seguro ejecutar "apt-get upgrade" (en términos de estabilidad) en un servidor de producción?

18

A menudo inicio sesión en mi servidor Ubuntu 12.04.2 (con Postgres 9.2.4 ejecutándose con datos de producción en vivo) y veo algo similar a:

4 packages can be updated.
4 updates are security updates.

Esto sucede cada pocos días, por supuesto. No estoy interesado en las actualizaciones automáticas (mientras menos cosas pueda cambiar cuando estoy dormido, mejor), pero estoy interesado en mantener mi servidor siempre actualizado, así que mi pregunta es: cuando veo resultados como eso, ¿siempre se considera seguro correr apt-get upgrade, o hay momentos en que puede romper cosas? Entiendo que los parches no siempre son perfectos (de ahí el "siempre" citado en el título), pero como regla general, se supone que es seguro ejecutar esto (especialmente dado que este es un servidor de base de datos frente a algo que solo sirve archivos CSS a través de Nginx )?

orokusaki
fuente

Respuestas:

9

En general, sí, esto es seguro. Sin embargo, para paquetes críticos (Postgres, Nginx, etc.), recomendaría fijar esos paquetes a una versión específica para que no se actualicen. Cuando se actualiza Postgres, por ejemplo, reiniciará el servidor de la base de datos, que es algo que desea poder programar en torno al tiempo de inactividad planificado.

Dicho esto, siempre es mejor probar las actualizaciones en un servidor provisional antes de promocionarlas a producción, por lo que es algo en lo que pensar en agregar a su proceso de implementación.

EEAA
fuente
1
y reiniciar si hay una actualización del kernel. Nada peor que encontrar su servidor ya no arranca sin intervención en una emergencia.
Sirex
"Recomiendo anclar esos paquetes a una versión específica para que no se actualicen": ¿Cómo?
vcardillo
1
@vcardillo Realice una búsqueda en Google de "apt pinning".
EEAA
5

Aptitud tiene más fácil de recordar comandos: aptitude safe-upgradevs aptitude full-upgrade. Todavía es una buena idea instalar apt-listchangespara que se le brinde información sobre los cambios en los paquetes actualizados y la opción de cancelar la actualización.

ptman
fuente
4

Si y no. La mayoría de las aplicaciones están bien, pero algunas aplicaciones pueden no estar muy contentas de actualizarse.

He visto ejemplos en los que las aplicaciones que usan Java desde 1.6.29 a 1.6.30 rompen la aplicación. También visto mysql rompiendo entre 5.0.X 5.0.X + 1 (No recuerde los números exactos aquí).

Las aplicaciones del sistema deberían estar en su mayoría bien, pero debe leer detenidamente las notas de la versión de las aplicaciones que su servidor realmente proporciona.

Lea qué cambios nginx, trate de entender si hay cambios que puedan afectar su configuración particular. Cuanto más avanzada use una aplicación, más fácil será romperla.

espenfjo
fuente