My company has a few host management systems. So many, in fact, that we're trying to get rid
of most of them. The most effective one I've used had a simple PostgreSQL configuration
database that had a profile of sorts on all of the hosts it managed. Putting new hosts on the
network looked like this:
-Add the host to the system. (command line stanza that included host name, who operated the
host, and who managed the host)
-Create or clone an existing host's profile. The profile also held software that would be
pushed to the host. Think Apache plus configs, cron jobs, users, etc.
-Run a command to push software to the host. (stuff gets pushed over ssh)
That's it. You could go from a basic OS install to full production in minutes. Lose a host?
Put a new one there and push the profile. You're back up in minutes. Need to put some brand
new software on all your hosts? Simply make a package, assign it to your hosts, and then push
it out. Regexes are understood.
Now, Func appears to cover some of the picture. For example, it appears to have a bit of
understanding as to what it governs, somewhat like a profile. What Func can do for restarting
services, we do via something like "hostname_command | parrallel_version_of_ssh
/etc/init.d/httpd restart".
I'm happy to see software like Func out there. I have already talked to a few higher-ups in
my organization about making our host management system Free Software. Sadly those in charge
now don't see the value.