as luck might have it, I've been working on another project using EC2, and Scalr.
So here are my highlights:
1) If there is any way you an NOT use their garbage kernel, do it. Its broken it all sorts of happy performance annihilating ways. evenfd() is non-existant for example
2) They have their own pretend version of centos called "AWS" or something. Avoid at all costs. I expect them to abandon it in a year, leaving you without a maintainable OS.
3) Is the ELB nginx? It is in scalr, in the example we're working with you can clean up the IP issues pretty easily with mod_rpaf (in atomic now!)
4) You already ran into the issue with IP addresses that we did. You can only have 1 IP on the system which makes multiple SSL certs difficult... but their is a fix! Dont use their load balancer. Go get a normal box somewhere else (or two,or three), run nginx on that, and put all your IP's & Certs there. You can redirect from the LB back to your cloudy boxes.
5) scalr is open source, and we're setting up our own private infrastructure for that now so definitely check that out if you haven't already. They have their own site (scalr.net) where you can manage your ec2 systems from, pricing just changed which is why our client asked us to set up a private one. Its considerably cleaner than the amazon interface.
6) Amazon is not magical unicorn performance dust. Its nothing more than their flavour of xen. My thread on performance benchmarks here
viewtopic.php?f=1&t=5576 was inspired by how poorly it performed in general, so I've been looking into how to get more out of it. For the record the BEST Ive been able to squeeze out of a medium (2G) amazon system running Magneto was 4 requests per second, thats after tweaking... and it started at .27/second. Compare that against the forum server you're reading now, which does over 200.