[NZLUG] Managing multiple-machine application configs with DVCS

Jim Cheetham jim at gonzul.net
Thu Jun 6 15:07:49 NZST 2013

On Jun 6, 2013 8:46 AM, "Daniel Lawson" <daniel at meta.net.nz> wrote:
> On 5/06/2013, at 9:00 PM, Félix Saparelli <me at passcod.name> wrote:
>> Have a look at http://dotfiles.github.io/ - What you're describing is

Thanks; basically Ben Alman's method is to ship template files and do some

BTW http://corte.si/posts/hacks/github-shhistory/index.html helps to remind
people using public repositories to be very very careful ...

> For the OP: I think your best answer is a configuration management tool
like puppet, chef, cfengine, etc.

Config management is fine; high setup costs but good payback. However I'm
not yet aware of good ways to allow changes made directly on a host to be
integrated post hoc with the config management system. Perhaps I haven't
looked hard enough ... Basically, post hoc workflow control is very
appropriate in this environment.

Anyway, I've got to the stage of not being able to find any clean way to
manage the inevitable merge conflicts without having some processing. In
order to have a quick hack, I'm going to do nasty things with symlinks ...

So, given the contended file 'httpd.conf' over 5 machines, I'll have
httpd.conf.server[12345] and an untracked symlink pointing to the relevant
one on each server. All 5 config files will be present on all machines.

This doesn't give me good merge control, so instead I'll also have a script
that compares these files to each other looking for unexpected differences
(I already have a lot of monitoring scripts on each machine, thanks to
nagios' check_mk local tests).

This will shore thing up sufficiently while the wider question of config
management is considered (with a much wider scope).

Thanks for your comments :-)

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.nzoss.org.nz/pipermail/nzlug/attachments/20130606/0c7c2515/attachment.html>

More information about the NZLUG mailing list