Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am looking over couple of tools for managing the ec2 instances:

1) I should be able to spin-off a new instance and the new instance get all the configurations required.

2) I should be able to make changes on all machines in one go which includes:running a command on all instances and getting back the result.Pushing code change or installing new software on all machines and get back the result.

3) Checking health of all machines.

Tools I am looking at are rightscale,puppet and nagios.
As i am starting a new company budget is pretty tight so looking for some open source solutions and which have less learning curve.

Please advice me what tools to use for these.

Thanks in Advance..

share|improve this question

closed as off topic by Zoredache, Mark Henderson Feb 9 '12 at 0:32

Questions on Server Fault are expected to relate to server, networking, or related infrastructure administration within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here.If this question can be reworded to fit the rules in the help center, please edit the question.

Those are completely different requirements (as Daniel suggests in the answer by using paragraphs). You might want to sit down and use 3 sheets of paper and write them down seperately (honestly, that helps to get a clear path on finding out real requirements).

As for the second question: If you go the puppet route running commands on all hosts can be done with mcollective. Those are the same people that make puppet so they do have quite a good idea about what configuration management can do to a system environment.

share|improve this answer

I prefer Zabbix to Nagios nowadays for monitoring. It comes with nice templates, it is capable of auto discovery, and it is very easy to extend by running arbitrary commands on the target hosts.

Given your requirement of running a command on all machines (I assume it is a one-time command), Chef seems a better choice than Puppet, but you'll need to learn Ruby for Chef -- its configuration scripts are Ruby programs.

If you don't know Puppet beforehand, I'd advise you not to assume learning it will be faster than learning Ruby. It is certainly more simple, but it does take some time to get the knack for writing complex configurations in it.

share|improve this answer

Scalr (Disclaimer: I work there) is cloud management tool which meet most of your requirements:

  1. You can replicate very easily any instance from an existing instance, with all the configurations required
  2. Chef is integrated within Scalr: you can thus create recipes and run them at the same time on all instances
  3. We don't provide health machines monitoring, but it's on our roadmap. You can currently check the status of your instances.

Scalr is open-source or available online as a hosted version. RightScale and enStratus are two Alternatives to Scalr.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.