views:

1619

answers:

8

I read a lot about the possibilities of Amazons Cloud computing, like S3 or EC2 and I wondered if someone actually uses this for mission-critical applications. Do you host your company website in the cloud? Do you store files there? Do you run your build servers in the cloud?

There are already some services like Scalr or WeoCeo that could help you with this task, but I don't know if management is already at the point where this is a real issue...


edit I'd like to add another point: Do you think, there are hidden issues in the AWS licenses that would keep you (and/or your company) from outsourcing applications or even parts of applications into the cloud?

edit Do you know about some statistics comparing the overall outage times of S3 or EC2 and your own or 3rd party hosting services?

A: 

A group of friends and I are working on an application that lives in the cloud. However, the part of the cloud it lives in is under our control. I would never trust a third party to do that sort of lifting for my application, because I don't have control over it. The recent Amazon S3 outage is an excellent illustration of why.

And I absolutely, positively, would never put any part of my infrastruture on (for example) Amazon's servers. Build servers, source code, etc, is always tightly controlled. Not only because of potential unreliability, but because I find the licenses for these services overly permissive for the service provider. Besides that, an unscrupulous host* could potentially take my source code and use it for their own purposes, even if something like that is not legalized by the license agreement I would have to accept in order to use the service.

*Probably doesn't apply to Amazon, but I've never heard of the other two you mentioned, and until they're around for ten years or so, I probably wouldn't trust them, or any services like them.

DannySmurf
+2  A: 

Disclaimer: I'd a grad student at UCSB, who puts out the software I'm about to mention.

If you're worried about cloud ownership (e.g., not physically owning your cloud boxes), you may want to look at Eucalyptus. It's EC2 API-compliant and lets you use your servers, and it's open source so you can see exactly what's going on.

But to the actual question, no, we don't host our website in the cloud, although we certainly have many ideas coming for stuff to do in it.

Chris Bunch
+5  A: 

Regarding Reliability

I don't have anything running on a cloud service, but I would like to address the reliability issue.

I'm sure that the Amazon team has much more experience and resources available to run a heavy-duty web site than I do. They were down for a couple of hours last week, but I believe overall their uptime will be better than if you or I would have on our own, with our present level of experience and resources.

Mark Harrison
+2  A: 

For your second edit, check out CloudStatus. It monitors the AWS stuff and Google App Engine for outages and performance. Amazon also tracks their outages at http://status.aws.amazon.com/.

Gary Richardson
Like Cloudstatus we are also publicly sharing live performance data for EC2, S3 and Cloudfront on http://www.cloudclimate.com
Dirk Paessler
+19  A: 

I setup two instances of my application on EC2, and have been using S3 in as a local-to-AWS backup and media asset delivery. We moved over about 15% of our applications content/traffic to EC2 in mid-June. The result is mixed, and we are moving the content heavy usage instance back to our hosted data center, and now are investigating other content delivery options.

Do note that:

  1. my application is bandwidth hungry (100mpbs to 1gbps)
  2. my company and I are based in Switzerland and that surly has had an impact on our evaluation.
  3. I define bandwidth as a rate of flow (mbps, etc.) and traffic as volume (mb, gb, etc.)

Pros:

  • Cost (especially traffic, US$0.13-0.17/GB)
  • Active user community
  • Effectively unlimited bandwidth with S3-delivered content
  • Flexibility (kick off an instance and have it running in minutes)
  • CPU power available in an instance, even the small instance type, was always enough for my application. There is even a high-CPU instance type for those who need it.

Cons:

  • We had an instance become unreachable (a not unheard of occurrence) and had execute our disaster recovery procedure. 12h.
  • Network latency, for both S3 and EC2, can be unacceptably high (100s of ms)
  • EC2 instance bandwidth is limited. Despite hours of search, I never found an official statement with hard numbers one what users can expect. We saw a max of ~250mpbs in tests.
  • Per HTTP connection bandwidth can be unacceptably low. 1-2mbps from even our Swiss data center with a 800mpbs connection and quality peering. EDIT: We have recently seen rates between our data center and EC2 in the 3-4mpbs range.
  • S3 is not a 'normal' file system, and special software is required. We chose JungleDisk, which I now find inappropriate for a 24/7, moderately sized data set server environment. Strange things would happen (file listed twice with an 'ls' command) and unexpected crashes.
  • Lack of persistence storage (until just a few days ago.) Amazons new EBS (Elastic Block Stores) solves that problem for the most part.
  • S3 is not a CDN. My company, like many others, have tried to use Amazon S3 as a CDN. There are other low cost alternatives out there. (voxel.net, easycache.com)

EDIT 1: Amazon plans to launch a formal CDN with limited functionality be the end of 2008.

EDIT 2: Amazon has (beta) launched the CloudFront CDN service today, 18 Nov 2008. Costing structure seems to be the same as S3, setup looks simple.

I'm a fan of the cloud concept, and we will continue to run an instance out of EC2, but we found it inappropriate for our main production needs in its current form. Maybe things will change in the future.

Stu Thompson
Good writeup. Regarding instance bandwith: You're probably sharing a 1Gbps pipe with other instances running on the same physical machine. EC2 may cap it at 250mbps if you're four to a machine.
friism
+4  A: 

I'm currently using S3 for video hosting and I love it. If you're using .NET give yourself a little lead time to get the setup integrated in your site. I would highly reccomend their services.

The only thing that I found rough was that you had to spend >100 to get silver level of service, our site will be spending that much eventually but we're not even in beta yet. I didn't have a question, I just wanted to see what their support was like.

The support was great, and very helpful, however I would have liked to be able to ask some questions without having to go in my pocket (rather the boss's pocket)

Oh, I haven't run into any license issues.

Comparatively, for the money, I would pick S3 above other hosting services because their reach is so vast and the price point it so low.

Sara Chipps
+1  A: 

I'm using S3 for image hosting (currently over 5 million files,) and for server backups. I used EC2 for image processing and SQS for coordinating between these tasks. I must say I have removed EC2 since for that specific task, non-virtualized server proved to be 10x as fast. And I wrote my own solution of queuing using mysql, which proved to be much faster and didn't tie a close bond with AWS.

There's an important post at Coding Aloud [http://www.codingaloud.com/2008/01/going-bankrupt-with-amazon-s3.html] called Going Bankrupt With Amazon S3, grab a look.

gilm
+1  A: 

We store our company files on S3 so they could be accesible to the employees on the go. Extremily cheap and easy. Plenty of apps to access your files on S3. The one we use is a nice online file manager: S3fm.