I am working on a project that would require the following :
- Central administration of multiple servers over multiple locations
- Secure connections between multiple locations
- Manage multiple servers configurations
FACT
There will be from 6 to around 30 hosts.
All OS are going to be 64bit Ubuntu 9.10.
Hosts are going to be in North America, Europe and India.
What software(s) could I use to manage all hosts?
What software(s) could I use to manage and deploy configurations?
I've looked at Chef, Puppet and Bcfg2.
Puppet and Chef look complex to deploy, considering the small number of hosts, is there a better way or best suited application to do this?
For securing connections, should I look for a SSH or VPN solution?
Puppet for deploying and management. Securing - vpn + SeLinux (ssh as a de-facto).
To manage all hosts - what you mean? Read logs? Rebooting? Full remote control?
May be RADIUS+LDAP as AAA? Please, be concrete.
And what is "cluster" do you mean?
To manage and deploy configurations, I suggest you look at Cfengine 3, which is a configuration management solution that you didn't mention. It is extremely lightweight, and won't put too much overhead on a small-ish infrastructure of up to 30 servers.