Amazon EC2 Now More Ready for Application Hosting
For months now, I've been geeked about Amazon's EC2 as a web hosting service. But until today, in my opinion, it wasn't ready for prime time. Now it is, for two reasons. One, you can get static IPs, so if an outward-facing VM goes down you can quickly start another one and point your site's traffic to it without waiting for DNS propagation. And two, you can now separate your VMs into "physically distinct, independent infrastructure" zones, so you can plan to keep your site up if a tornado takes out one NOC. If I were developing a new website I'd host it there; buying or leasing real hardware for a startup seems silly. If you have questions, or especially if you know something about other companies' virtual hosting options, post comments -- let's compare notes.
Nice, don't suppose there's any chance of IPv6 support - give each instance, running or not, a unique address.
If you're using Amazon for hosting, you can't switch hosting services; their system is too nonstandard. Do you want to be in a position where they can raise prices or cut off your air supply?
Is this a Slashvertisement?
I'm sure "SlashdotMedia" will improve on all the wonders that Dice Holdings blessed us all with
I think you are confused ... all the NOCs of Amazon could go down and your servers (which are in a Data Centre) will continue to operate.
http://en.wikipedia.org/wiki/Network_operations_center
So here's a little about what EC2 actually is, for those of you who don't know. You don't have to reply here, start your own comments ;)
The Elastic Compute Cloud was originally designed as a way to host applications that needed lots of CPUs, and the option to expand by adding more CPUs. It's a hosting service that lets you start up virtual machines to run any software you want: they have a wide variety of pre-packaged open-source operating systems you can pick to start up your VMs with.
Starting up a VM takes just a minute or two, and it's point-and-click thanks to the Firefox extension. Each VM comes in one of three sizes: small (webhead), large (database), and extra large (bigass database). They cost respectively $72, $288, and $576 a month (billed by the hour), plus bandwidth ($0.18/GB out, somewhat cheaper for data going in and there's a price break at 10 TB).
One of the concerns everyone raises with hosting on virtual machines is that if a VM instance goes down, you lose everything on it. It comes with hard drive storage (160 GB on the small size), but if something goes wrong, that data's gone.
I think the rejoinder here is that, on real hardware, if something goes wrong, your data's gone. You never set up an enterprise-level website on the assumption that any particular hardware has to survive. Single points of failure are always a mistake, and backups are always a necessity. When any machine explodes - real or virtual - the question is how fast your system recovers to "working well enough" (seconds, hopefully) and then how long it takes you to get it "back to normal" behind the scenes (hours, hopefully). Those answers shouldn't depend on whether there's a physical drive to yank out of a dead physical machine that may or may not retain valid data.
Which brings up what I think is one of the selling points of EC2: free fast bandwidth to S3, Amazon's near-infinite-size, redundantly-replicated data storage platform. That's a nice backup option to have available. That's part of why, if I were starting a new web service, I wouldn't host it on real hardware. I'd like not having to worry about backups, tapes, offsite copies... bleah, let someone else worry about it.
Slashdot hasn't run many stories on EC2 (none that I know of) because until now it's been a niche service. Without a way to guarantee that you can have a static IP, there had been a single point of failure: if your outward-facing VMs all went down, your only recourse was to start up more VMs on new, dynamically-assigned IPs, point your DNS to them, and wait hours for your users' DNS caches to expire. That meant that while it may have been a good service for sites that needed to do massive private computation, it was an unacceptable hosting service.
Now with static IPs, you basically set up your service to have several VMs which provide the outward-facing service (maybe running a webserver, or a reverse proxy for your internal webservers), and you point your public, static IPs at those. If one or more of them goes down, you start up new copies of those VMs and repoint the IPs to them. No DNS changes required.
I know there are other companies offering web hosting through virtual servers. Please share information about them, the more we all know the better.
pricing and bandwidth is oulined here about halfway down the page. and a nifty pricing calculator here.
looks pretty reasonable to me, but i dont really have anything to compare it to. no minimum fee. it's completely based on bandwidth, resources, and usage.
I use Mosso - they are inexpensive and are hosted and owned by Rackspace. Therefore the service is fantastic!
The more I learn about Amazon's AWS offerings... the more confused I get. I've read a TON of material, reviewed the APIs, looked at sites built on this platform and have read many blog entries. I feel like I "know" a lot, but understand very little. Someone help?
1. What is a perfect "typical" application for AWS? (And don't answer, "one that needs to scale...". I'm looking for a realworld example.)
2. Anyone here on Slashdot using these services? Nervous about single point of failure? (And I don't mean just technical, but also financial, legal, security, business continuity, etc.)
3. EC2 / S3: is there any value in using just one? I've noticed there are additional services now, too
4. In the days of SOx / PCI / CISP compliance, is it even possible to set up a financial app on AWS?
5. Also, finally, maybe a question to Amazon... why? Someone did the financials recently and it was a fascinating study. The short of it is that at max capacity, the net income from all of AWS for Amazon is so tiny, you have to wonder why they even bothered... [need citation]
A classic case of wanting to like the technology, but not really sure how to use it. Thanks.
Amazon just has a very interesting service architecture. This is why you keep seeing articles all over the place about it.
Cheap, affordable, reliable VPS solutions: www.slicehost.com
I have been with them for a few months, and their interface's ease of use, and the level of support they provide are just what I was looking for.
There's still one glaring problem. There is no persistent storage (other than shuttling data to S3). That means that if your website is database-backed, you need to figure out what to do should your instance crash. Hourly backups? Mounting S3 as a slow FUSE filesystem that you can put your database on? It's all ugly.
And it's still not a great value. It seems cheap. $72/mo for a 1.7GB RAM server. Well, look at Slicehost and you can get a 2GB RAM Xen instance (same virtualization software as EC2) for $140 WITH persistent storage and 800GB of bandwidth. That doesn't sound like a great deal UNTIL you calculate what EC2 bandwidth costs. 800GB would cost you $144 at $0.18 per GB bringing the total cost to $216 ($76 more than Slicehost). That 18 cents doesn't sound like much, but it adds up. The same situation happens with Joyent. For $250 you get a 2GB RAM server from them (running under Solaris' Zones) with 10TB of bandwidth. That would cost you $1,872 with EC2. Even if you assume that you'll only use 10% of what Joyent is giving you, EC2 still comes in at a cost of $252 - and without persistent storage!
EC2 really got the ball rolling, but it just isn't such a leader. Other operations have critical features (persistent storage) that EC2 is lacking along with pricing that just isn't more expensive. I want to like EC2, but their competitors are simply better.
My major concern (last time i checked) was fail over & virtual ips. I think they fixed this with the new elastic ip. I will have to check again.
However, another issue i had was to send traffic between 2 EC2 nodes. They don't mention (maybe i missed) nor guaranty the bandwidth between the nodes in the same availability zone. This is crucial if you are trying to run a very fast performance tests between the 2 nodes and you need minimum delays. I am not sure if the bandwidth between the EC2 nodes is caped or no as well.
"More ready" is wonderfully relative.
"Less unready" is just as accurate, and perhaps more precise.
Without an SLA, EC2 or SimpleDB, or "Head in The Cloud" is an experimental platform.
"Flyin' in just a sweet place,
Never been known to fail..."
If you think I'm one of the "kids these days," you really are old ;)
We looked at the EC2 solution when we started developing our hosted offering and didn't care for the new IP address when, and if, something went down. We went with a hosting company called LayeredTech. They offer public and private VPS and VPDC solutions. The really cool thing that has impressed me is they run 3Tera's AppLogic platform. It lets you visually (through a web ui) create "applications" based on "appliances". There is a standard portfolio of prebuilt applications (SugarCRM, etc.) and templates for LAMP, etc. So, we build our application by taking a firewall appliance, a CentOS appliance, a gateway, a MySql appliance, glue them together, customize them, and then create our own template. You can specify down to the appliance level, the amount of cpu, memory, disk, and bandwidth each are assigned which let's you scale up your capacity simply by tweaking values through the UI. We can now deploy our Rails/Java hosted offering for new customers in about 20 minutes on our grid. AppLogic has automatic failover so that if anything goes wrong, it reploys your application to a new node in your grid and restarts it. It's not as cheap as EC2, but much more powerful. It's definitely worth a look.
My company uses EC2 + S3 + SQS + Rightscale (http://rightscale.com) to manage our infrastructure.
First off, Amazon has an excellent product. It is essentially Hardware As A Service, and the tools they provide abstract it as such.
The most common argument against using EC2 for hosting is that if your server goes down, you will lose any data created since the last time you saved a snapshot. While this is true, it forces you to bring a backup + recovery plan to the front of the table. Provided you have a backup + recovery plan in place, you no longer have to worry about fixing a server ever again. If something goes wrong with one of our application servers, I would simply fire up a new instance, link it in with DNS, and terminate the old server. With rightscale, this is all pushbutton.
Consider that scenario with running your own colo server. You could potentially spend hours diagnosing + fixing an issue with a server before you could bring it back up. Ok fine, the way to mitigate that is to have a hot backup running. But now we're talking about a ton of cash to support 2 servers on a month-to-month basis. We have found that amazon's costs to run EC2 instances are very competitive for the specs.
Note: I'm not a shill for either rightscale or amazon, I just find that these 2 companies are the forefront of where hosting is going, and their products are awesome. It's all about virtualization!
'When the going gets weird, the weird turn pro.' -HST
"Software failure" in that case refers to a failure of Amazon's Xen software that runs your virtual machine.
Amazon doesn't know or care whether your software is "production quality code" or not. You pay $0.10/hr whether your code is debugged or not :)
Some days ago I posted an article on my blog in which I try to compare different cloud services and also give my 2 cents opinion about the technology itself (disclaimer: I directly tested only two services, EC2 and GoGrid.)
Beyond the comparison, in my post I say that I was wrong trying to use a utility computing platform as EC2 like a web hosting platform; also, there other very interesting uses of the technology behind the clouds (e.g. creating disposable environments for application testing.)
In fact, if you prepare for that, the cost differential is likely to grow, as if you have EC2 as a fallback you can afford to get closer to full load and bandwidth usage before you add more physical boxes...
EC2 is just too expensive to be worth it for normal use...
We've been using Joyent and are very happy. I've used EC2 for a few things and I think Joyent is more economical for many applications.
"It was hell!" recalls former child.
That depends a lot on the scale of your operation and the scale of your hosting service. The value of an SLA is that you can sue to recover damages in case of non-compliance. But it may not be possible to recover real damages in court: Your provider may not have pockets that deep, you may not have pockets as deep as your lawyers' thirst for money, and the law may not allow for full recovery in your circumstance.
EC2 is up and stays up. Reliabilty counts for a lot more than legal recourse, in my book. SLAs don't create reliability, they *help* (hopefully) to create legal recourse, which is a very poor substitute.
-I like my women like I like my tea: green-