Thursday, October 4, 2007

Load balancing and EC2

It's been awhile since I've fired up an EC2 instance. I want to get in and look around and see how it's all changed.

In particular, I'm interested in what's going on in their load balancing world. I have 3 ideas on how it could be working. I thought it would be interesting if I wrote down those ideas based on the limited research I've done and compare it to what I actually find.

The typical applications that I work with are built on redundant load balancers in front of two or more share nothing (as in templates, MVC, etc) in front of a database for shared content. I'd like to model that in some way with EC2.

So, my current thoughts are:

  1. Use a proxy based load balancer, like perlbal or pound to balance traffic from a load balancer to multiple machine.
  2. Build some sort of RR DNS infrastructure that allows servers to register themselves when they come online, and to retire those servers if they haven't 'pinged' in for a bit.
  3. A comment to this post alludes to there being some sort of 'group DNS' that you could potentially CNAME to, which would accomplish #2 without a lot of infrastructure.
Of course, for any volume of machines, you'd probably want to use #2 or #3 with #1 -- redundant load balancers in front of many web machines.

I've found limited and outdated posts about the subject, so I'll add whatever I find to the blog, in hopes of answering other people's questions.

No comments: