Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

EC2 server, lots of micro instances or fewer larger instances?

Tags:

I was wondering which would be better, to host a site on EC2 with many micro instances, or fewer larger instances such as m1.large. All will sit behind one or a few larger instances as load balancers. I will say what my understanding is, and anybody who knows better can add or correct me if I'm wrong

Main reason for choosing micro instances is cost. A single micro instance on average will give around 0.35ECU for $0.02/hour, while one small instance will give 1ECU for $0.085. If you do the math of $/ECU/hour, a micro instance works out to be $0.057/ECU/hour, whereas for a small instance it's $0.085/ECU/hour. So for the same average computing power, choosing 100 micro instances would be cheaper than 35 small instances.

Main problem with micro instances is more fluctuating performance, but I'm not sure if this will be less of a problem when you have many instances.

So does anybody have experience benching such setups and see the benefits and drawbacks? Please let me know as I'm trying to choose which way to go, thanks!

PS: an article on the subject, http://huanliu.wordpress.com/2010/09/10/amazon-ec2-micro-instances-deeper-dive/

like image 544
Jd007 Avatar asked Feb 03 '12 00:02

Jd007


People also ask

Would it be best to scale fewer larger instances or more smaller instances?

You should have medium instances to small w.r.t the tier you require (Memory Intensive, CPU, or Network) and scale those instances with properly written policies. As long as the userdata, ami is stable you can spawn many instances within minutes making sure you are not spending way too much and saving every Penny.

How many EC2 instances can run at a time?

Q: How many instances can I run in Amazon EC2? You are limited to running On-Demand Instances per your vCPU-based On-Demand Instance limit, purchasing 20 Reserved Instances, and requesting Spot Instances per your dynamic Spot limit per region.

Why do you need multiple EC2 instances?

So, multiple instances will allow you to scale each customer at different times and rates and will allow you to develop each solution without affecting each other.

How many instances of EC2 do I need?

One thing to note is that your account EC2 instance limits should be set to more than 20 instances per region, otherwise you could end up being unable to launch new instances when you most need them.


1 Answers

Beware of micro-instances, they may bite you. We have out test environment all on micro-instances. Since they are just functional test environment, it works smoothly. However, we happened to have update some application (well, Jetty 7.5.3) that has known bug of spinning higher CPU usage. This rendered those instances useless as Amazon throttles the available CPU to 2%.

Also, micro instances are EBS backed. EBS is not advisable (over instance-store) for high IO operations like the ones require for Cassandra or the likes.

If you want to save money and your software is architected to handle interruptions, you may opt for spot instances. They usually cost less than on-demand ones.

If all these are not a issue to you, I would say, micro-instances is the way to go! :)

  • Basics questions about micro instances performance
  • CPU pattern for micro
  • Stolen CPU on micro
like image 57
Nishant Avatar answered Oct 30 '22 22:10

Nishant