On 2/4/2010 12:31 PM, Alan McKay wrote:
It depends on what you need to do. If you really have enough machines or long-running jobs that a shell loop through them isn't practical, you might want something higher-level like cfengine or puppet, or at least something running under cron to make them independent.
cfengine or puppet (or something else - slackmaster?) are where I want to be eventually - but in the immediate term something like this would help a lot. e.g bouncing my 4 front-end apache servers on 4 different boxes. That sort of thing.
Usually for that sort of thing I explicitly _don't_ want all of a group to be out of service at the same moment so I much prefer to:
for host in host1 host2 host3 host4 do echo $host ssh $host service httpd restart done
which doesn't take much more thought then doing it locally and if I expect to repeat it I can save the commands in a script.
I was actually going to start another "configuration management redux" thread as a follow up to a thread I started a few months ago.
I'm interested in the topic, but most of what I've seen just add complexity for no particular reason. Clustering ssh commands might be an exception for a certain subset of things that need to happen at approximately the same time on multiple machines (and you are willing to risk breaking them all at once with a typo).