RANCID like configuration difiere para aplicaciones linux

Estoy buscando una herramienta de administración de configuration similar a RANCID ( http://www.shrubbery.net/rancid/ ) – el problema es que quiero administrar files de configuration para aplicaciones Linux como mysql, apache, memcache, barniz, php , y así sucesivamente, no las configuraciones de networking.

Lo que me gustaría que la herramienta hiciera es:

1) Consulta periódicamente una list pnetworkingeterminada de serveres (a través de SFTP / SSH / SCP?)

2) Compruebe si una list pnetworkingeterminada de files ha cambiado (¿quizás a través de la sum de comprobación?)

3) Si han cambiado, haga una diferencia en los files nuevo y antiguo, envíe por correo electrónico la dirección de correo electrónico de los cambios.

  • Esto es para los processs de control de cambios para que un equipo de personas conozca los cambios de AS y tengamos un seguimiento de auditoría. Tiene que ser en time real o cuasi real (dentro de los 30 minutos de un cambio sería aceptable)

4) Confirmar el nuevo file en un repository de control de origen (SVN / GIT, ¿quizás?)

Estoy bastante seguro de que RANCID puede hacer la mayoría (¿todo?) De esto para dispositivos de networking como enrutadores Cisco, firewalls, etc. pero el problema es que no funciona para dispositivos que no son de networking (hasta donde yo sé). Y me falta el conocimiento perl y el time para codificar un module RANCID para hacer lo anterior.

Entonces, lo que estoy buscando es una solución llave en mano de RANCID (gratis sería genial, pero no me opongo a pagar un precio razonable) que pueda hacer lo anterior. ¿Alguien puede recomendar algo?

Descargo de responsabilidad: ya conozco herramientas de configuration centralizadas como Chef y Puppet. Si bien son excelentes soluciones, en este momento no estoy buscando realizar implementaciones de configuration automatizadas / centralizadas, sino más bien continuar administrando manualmente los files de configuration y simplemente tener versiones de copys de security y notificación de cambios.

etckeeper

La única herramienta que he usado en el pasado que hace la mayoría de lo que estás buscando es etckeeper .

El backend es configurable para que pueda elegir el sistema de control de versiones que quiera usar (git, svn, bazaar, etc.).

La página de desarrollo primario en github tiene todo lo que necesita en términos de comenzar a usarlo.

cianotipo

Otra herramienta que podría ser útil es blueprint . Esta herramienta recogerá las configuraciones personalizadas junto con los packages que haya instalado utilizando cualquiera de las herramientas de administración de packages hte, como los packages administrados por APT, Yum, RubyGems, Easy_install y pip de Python, PEAR y PECL de PHP, y NPM de Node.js.

extracto

Blueprint es una herramienta de administración de configuration simple que realiza ingeniería inversa de serveres. Se da count de lo que has hecho manualmente, lo almacena localmente en un repository de Git, genera código que puede recrear tus esfuerzos y te ayuda a implementar esos cambios en la producción.