Re: dpkg-divert para ficheros de configuracion
On Thursday 21 February 2008 07:52:22 José L. Redrejo Rodríguez wrote: Hola Jesús, te comento que en Extremadura para mantener la configuración de los servidores de institutos y colegios (varios centenares) usamos puppet (http://reductivelabs.com) Está en Debian y tiene una funcionalidad parecida a cfengine pero con un lenguaje para las tareas mucho más claro y con bastante menos bugs. Si solo quieres asegurar el contenido de los ficheros es una verdadera chorrada hacerlo con puppet. Eso garantiza uniformidad en los ficheros o tener grupos de configuraciones, etc. Si, Habia visto un par de mensajes en debian devel que sugerian el uso de puppet o de cfengine2 para este tipo de cosas. La verdad es que no tengo ninguna experiencia con el tema, pero parece interesante y necesito investigar mas. El problema es que los que toman las decisiones(tm) no creo que esten muy por la labor de integrar una cosa de estas en nuestras maquinas, ya que la quieren tener lo mas simple posibles. Pero todo se vera. Nuestra intencion es tener una version personalizada de debian que este estandarizada, para que la usemos en cada nueva maquina que instalemos. Hay una serie de configuraciones que estan estandarizadas de una distribucion anterior (que no es debian) y queremos que cada nueva maquina tenga este comportamiento. Idealmente, tendriamos un paquete con las configuraciones especificas si se pudiese hacer esto con dpkg-divert, es mas, suena como lo ideal a hacer en este caso. Yo habia pensado en tener todos esos ficheros instalados en algun directorio y que algun script de despues de la instalacion los copiase en su sitio correspondiente y que luego, un cronjob nocturno consultase y avisase si alguno de los ficheros ha sido cambiado, pero no me acaba de gustar esta aproximacion... Y para el control de versiones en /etc échale un vistazo a la solución de Debian Edu: http://wiki.debian.org/DebianEdu/Documentation/Etch/HowTo/Administration#he ad-90d7542167b5029530d3c0f2c8d3c599334f7e9c Funciona de maravilla. Esto si es interesante :) Muchas gracias por la respuestas. -- Jesús Roncero Franco
Re: dpkg-divert para ficheros de configuracion
On Thursday 21 February 2008 00:24:21 Sergio Talens-Oliag wrote: Buenas Yo desarrollé un sistema para mantener versiones propias de ficheros de configuración que soportasen la actualización de los paquetes para las CDDT (Custom Debian Distributions Tools), pero como ya no me dedico a eso no llegué a subir los paquetes a Debian (en la versión antigua de LliureX si que se utilizaban). Aunque no creo que te sirvan tal cual, puedes hacer un checkout de: https://mixinet.net/svn/cddt/trunk/cddt-runtime/ y mirar la carpeta de scripts; los que te pueden interesar son el que se llama cddt-divert y el que se llama cddt-apt, en la carpeta manpages tienes páginas de manual que explican como se usan. El problema que le veo a esto, si lo he entendido bien, en mi configuracion actual es que aqui no quieren tener una modificacion asi a debian (si hay que usar cddt-apt para instalar los paquetes), ya que quieren que este todo lo mas cercano a debian sin cambiar mucho del sistema de paquetes. En cualquier caso le hago un checkout cuando tenga un hueco y miro a ver como nos puede ayudar. Gracias. -- Jesús Roncero [EMAIL PROTECTED] System Developer Tel: +44 (0) 845 666 7778 http://www.mxtelecom.com
Re: dpkg-divert para ficheros de configuracion
El jue, 21-02-2008 a las 09:42 +, Jesús Roncero escribió: On Thursday 21 February 2008 07:52:22 José L. Redrejo Rodríguez wrote: Hola Jesús, te comento que en Extremadura para mantener la configuración de los servidores de institutos y colegios (varios centenares) usamos puppet (http://reductivelabs.com) Está en Debian y tiene una funcionalidad parecida a cfengine pero con un lenguaje para las tareas mucho más claro y con bastante menos bugs. Si solo quieres asegurar el contenido de los ficheros es una verdadera chorrada hacerlo con puppet. Eso garantiza uniformidad en los ficheros o tener grupos de configuraciones, etc. Si, Habia visto un par de mensajes en debian devel que sugerian el uso de puppet o de cfengine2 para este tipo de cosas. La verdad es que no tengo ninguna experiencia con el tema, pero parece interesante y necesito investigar mas. El problema es que los que toman las decisiones(tm) no creo que esten muy por la labor de integrar una cosa de estas en nuestras maquinas, ya que la quieren tener lo mas simple posibles. Pero todo se vera. Nuestra intencion es tener una version personalizada de debian que este estandarizada, para que la usemos en cada nueva maquina que instalemos. Hay una serie de configuraciones que estan estandarizadas de una distribucion anterior (que no es debian) y queremos que cada nueva maquina tenga este comportamiento. Idealmente, tendriamos un paquete con las configuraciones especificas si se pudiese hacer esto con dpkg-divert, es mas, suena como lo ideal a hacer en este caso. El problema con dpkg-divert es que mueves el fichero completo. Eso puede ser una fuente de fallos en muchos casos. P. ejemplo, en Debian el fichero dhcpd.conf desde sarge a etch no vale igual, hay algún parámetro como ddns-update-style que tienes que añadirselo para que arranque el servidor en etch. Sólo dando el cambiazo no vale. Igual te ocurre con otros servicios importantes como ldap, bind o squid. Usando cfengine o puppet lo que haces es añadir las líneas o configuraciones que quieras en los ficheros, de forma que respetando una parte de la configuración que mete el paquete debian en el fichero tu añades/modificas las líneas de la tuya, manteniendo la compatibilidad. En Debian Edu por ejemplo usan cfengine para hacer la mayor parte de las post-configuraciones, pero no lo hacen mediante el modelo cliente/servidor que es lo que puede asustarle a los que toman las decisiones(tm). El instalador lleva un paquete llamado debian-edu-config que contiene las reglas de cfengine a aplicar y las aplica cuando la instalación termina. (En algún caso dan el cambiazo a fichero completo también). Si quieres puedes dejar cfengine activado para que regularmente compruebe si las reglas están aplicadas y las aplique. Todo de forma local, sin conectar a un servidor central. Échale un vistazo a ese paquete porque creo que hace lo que necesitas pero con más garantías de éxito que todo con diversion. En general creo que puedes echarle un vistazo a todo lo relacionado con las CDD (instala el paquete cdd-doc de sid para tener la documentación actualizada), porque parece que eso es hacia lo que tiende la idea que comentas. Saludos. signature.asc Description: Esta parte del mensaje está firmada digitalmente
Re: dpkg-divert para ficheros de configuracion
On Wed, Feb 20, 2008 at 10:32:38PM +, Jesus Roncero wrote: Buenas, Os explico: tenemos una serie de servidores con debian los cuales compartiran una serie de ficheros de configuracion en /etc. La idea es que todos estos servidores tengan estos ficheros iguales de una manera mas o menos homogenea en cada momento. Ademas, quisieramos que estos ficheros estuviesen almacenados en algun sistema de control de versiones de manera que podamos ir almacenando los cambios que se han realizado a lo largo del tiempo. Si utilizas un sistema de control de versiones, hay varias recetas para tener /etc usando svk o git, lo único que tendrías que hacer es modificar la conf de una máquina y después del commit hacer un update en el resto, no se si es una alternativa valida para lo que quieres hacer. -- Celso http://mitago.net signature.asc Description: Digital signature
Re: dpkg-divert para ficheros de configuracion
El Thu, Feb 21, 2008 at 09:47:04AM +, Jesús Roncero va escriure: On Thursday 21 February 2008 00:24:21 Sergio Talens-Oliag wrote: Yo desarrollé un sistema para mantener versiones propias de ficheros de configuración que soportasen la actualización de los paquetes para las CDDT (Custom Debian Distributions Tools), pero como ya no me dedico a eso no llegué a subir los paquetes a Debian (en la versión antigua de LliureX si que se utilizaban). Aunque no creo que te sirvan tal cual, puedes hacer un checkout de: https://mixinet.net/svn/cddt/trunk/cddt-runtime/ y mirar la carpeta de scripts; los que te pueden interesar son el que se llama cddt-divert y el que se llama cddt-apt, en la carpeta manpages tienes páginas de manual que explican como se usan. El problema que le veo a esto, si lo he entendido bien, en mi configuracion actual es que aqui no quieren tener una modificacion asi a debian (si hay que usar cddt-apt para instalar los paquetes), ya que quieren que este todo lo mas cercano a debian sin cambiar mucho del sistema de paquetes. En cualquier caso le hago un checkout cuando tenga un hueco y miro a ver como nos puede ayudar. Creo que no me he explicado bien, el cddt-apt es un programa que se instala en el equipo y añade *hooks* sobre *apt* para hacer su gestión de modo automático, es decir, para instalar sigues utilizando apt-get, aptitude o synaptic (si instalas cosas con dpkg directamente los hooks no se ejecutan, por lo que para instalar a mano si deberías ejecutar cddt-dpkg en lugar de dpkg, que simplemente ejecuta los hooks antes de hacer las cosas). De hecho, salvo que haya algún BUG (seguro que hay alguno), si instalas el cddt-runtime pero no hay ningún paquete que lo utilice el sistema es 100 % debian, lo único que cambia es que antes y después de instalar paquetes se ejecutan scripts que no hacen nada. En su momento me pareció una buena aproximación al tema de la gestión de ficheros de configuración de Debian para las custom distributions, ya que como tú has detectado el dpkg-divert no es una opción aceptable. La idea básica detrás del sistema es que antes y después de actualizar un paquete se tengan los ficheros originales de Debian, con lo que las actualizaciones se harían de modo transparente y sin preguntas, siempre que no se toque el fichero original y el paquete no tenga bugs de actualización (en algunos paquetes se ha dado el caso de que el dpkg pregunte por los ficheros de configuración cuando el usuario no ha tocado nada). Para adaptar las configuraciones lo que se hace es lanzar scripts después de instalar o actualizar los paquetes; estos scripts pueden reemplazar los ficheros de configuración originales por ficheros completos sin más (aproximación más simple pero menos resistente a cambios de versiones) o ejecutar algún tipo de operación sobre los ficheros originales para generar un nuevo fichero que aplique cambios mínimos (generalmente más resistente a actualizaciones, siempre que no haya cambios importantes en el formato de los ficheros de configuración). Si los scripts instalan los ficheros modificados con «cddt-divert» cuando hay que volver a actualizar el sistema sabe como volver al estado anterior a la «diversion» y conseguimos el efecto que describía antes. La idea original es que el sistema se utilice con instalaciones estables y por tanto se revisen los scripts de «adaptación» para evitar que las cosas queden en estado inestable, aunque en realidad si lo que vas a hacer es instalar actualizaciones controladas puedes validar los cambios en un equipo y si hace falta actualizar el paquete que contenga los scripts de «adaptación» lo haces antes de actualizar todos los equipos (la gracia es que si actualizas los paquetes con problemas a la vez que el paquete de «adaptaciones» actualizado al terminar de ejecutar el «apt» se ejecutan los nuevos scripts y no los antiguos, con lo que el tema es bastante seguro). Hay más documentación de como funciona todo en el paquete cddt-doc:: https://mixinet.net/svn/cddt/trunk/cddt-doc/ Saludos, Sergio. -- Sergio Talens-Oliag [EMAIL PROTECTED] http://people.debian.org/~sto/ Key fingerprint = 29DF 544F 1BD9 548C 8F15 86EF 6770 052B B8C1 FA69 signature.asc Description: Digital signature