El paisaje puede ser de su interés. Esta es la herramienta de administración "oficial" para administrar grandes implementaciones de Ubuntu, y Canonical probablemente esté muy interesado en obtener su dinero para su uso.
REEDITAR:
Primero, un descargo de responsabilidad; No he usado la duplicación para Debian o Ubuntu, por lo que no estoy familiarizado con el software.
En segundo lugar, parece que apt-mirror sería una solución "demasiado pesada", mis disculpas. La idea original era que tendría una máquina de prueba separada (o un entorno de prueba, ¿probablemente una máquina virtual?) Para implementar la actualización. Una vez que esté satisfecho con el rendimiento de la actualización, extraerá / colocará el paquete en su espejo de "implementación" (habrá un espejo local de las fuentes oficiales y un espejo secundario para las actualizaciones que desea implementar). Las máquinas remotas luego ejecutarían una actualización a una hora preestablecida y la extraerían de su espejo de "implementación" en cada máquina, un trabajo cron que consiste en:
apt-get update && apt-get upgrade --quiet --assume-yes
Desafortunadamente, cuando comencé a leer los detalles, parece que apt-mirror
sacará todo tipo de cosas y no solo los paquetes que busca. Entonces, voy a abandonar esta idea, aunque el concepto tiene algún mérito.
Un compañero de trabajo descubrió y examinó brevemente apt-dater, que es un "administrador de actualización remota de paquetes basado en terminal".
Utiliza una interfaz basada en maldiciones para administrar actualizaciones en todos sus hosts, o grupos de hosts, etc. Admite el registro de la sesión completa de apt, incluidos los errores que puedan encontrarse, etc.
Se basa en ssh y sudo en las máquinas administradas.
ver http://www.ibh.de/apt-dater/
No lo he usado yo mismo, así que no puedo respaldarlo, pero suena cerca de lo que estás buscando.
fuente
Como ya está utilizando Puppet, la forma más fácil de hacerlo (y la mejor para el control de cambios / seguimiento) es especificar la versión deseada de los paquetes que desea instalar en el manifiesto de Puppet. No pierdas de vista la lista de anuncios de seguridad, y cuando aparezca algo que utilizas solo actualizas Puppet para que diga "instala esta nueva versión de este paquete". Suponiendo que está utilizando el control de revisión en sus manifiestos, entonces sabe cuándo se cambió la "política", y los informes de Puppet le muestran exactamente cuándo se realizó el cambio (para que pueda correlacionarlo fácilmente con cualquier evento de registro posterior).
fuente
Eche un vistazo a clusterssh (apt-get install clusterssh):
$ cssh servidor1 servidor2 servidor3 ...
fuente
Sin haberlo pensado realmente antes, mi primera idea sería algo similar a lo que avery ha sugerido, especialmente si ya tiene un entorno de prueba.
Básicamente, configura sus máquinas de producción para que se actualicen automáticamente desde su propio repositorio local, y solo actualiza este repositorio después de haber actualizado su entorno de prueba a la versión más nueva de lo que ejecuta.
Apticron no escala bien, está diseñado para ejecutarse en entornos bastante pequeños, pero tiene algunos puntos positivos:
fuente
A veces escribí un script de Fabric de automatización de bajo nivel / sucio (fabfile) para cumplir requisitos similares, puede verificarlo en:
https://gist.github.com/lgaggini/2be3c5bb47b8ce9267bd
fuente