O svn pode ser usado para fornecer controle de versão e distribuição de arquivos de configuração. git ou bzr etc também podem ser usados.
edite os arquivos no servidor 'master', svn confirme-os, e um cron job ou ssh pode executar o 'svn update' nos servidores 'slave'.
Eu costumo usar o ssh, e configurar acesso sem senha para permitir que o servidor 'master' execute um Makefile em particular nos escravos - o Makefile executa 'svn update' e suas regras de dependência baseadas em filestamp então decide quais outras coisas precisam ser feitas (por exemplo, gerar arquivos de usuário ou de grupo em db hashed do texto, adicionar ou excluir endereços IP do nic, reiniciar o apache e assim por diante) sempre que for possível determinar que uma sequência de ações depende de um arquivo e / ou outra seqüência de ações é um bom candidato para usar o make para automatizar o processo).
mesmo no servidor 'master', tudo é controlado pelo make. edite um ou mais arquivos de configuração e execute make. o Makefile descobre o que precisa ser feito (svn commit, gera fragmentos de configuração a partir dos arquivos de entrada de origem, 'ssh make' para outros servidores, etc). Usar make assim garante que cada etapa seja feita na ordem correta e que nenhuma etapa seja esquecida. e tornar o svn uma parte essencial do processo garante que cada mudança seja confirmada com um registro de data e hora e uma explicação no log de confirmação.
é claro, muitos usam bonecos ou algo parecido para fazer isso. se eu fosse começar do zero, eu provavelmente também ... mas eu faço isso há anos, muito antes do boneco estar por perto. havia ferramentas semelhantes antes do fantoche, mas a marionete é a primeira que vi que parece valer a pena mudar ... mas é difícil justificar a mudança de algo que funciona bem para algo que só parece que provavelmente funcionará melhor.