So let's look on some cloud hosting services and their cost. We will compare pricing of Amazon EC2, Rackspace, ReliaCloud and Joyent cloud on-demand server services. It's not an easy task because the hosting options differs in some aspects like server hardware configurations, supported operation systems or by provided support. This is not benchmark or test, it's just an overview of the options on the market. I will put emphasis on the cheapest and entry level solutions and prices.
Amazon EC2
EC2 is the biggest and the most established cloud solution on the market. Amazon is a pioneer company in cloud computing. There is a plenty of informations about Amazon cloud solutions and you will find many big companies which are Amazon's customers. However there are weak parts of the Amazon cloud ecosystem. For example the cheapest plan will cost you about $60/month ($0.085/hour) for 1.7GB RAM, 1 EC2 Compute Unit, 160GB of local storage. But Amazon has very sophisticated pricing options and in some cases you can get very competitive configurations. Another thing is that someone can be uncomfortable with the fact that Amazon server instances aren't persistent. It means that if your server goes down (shutdown, hardware failure), it also vanishes (with its local data) from your cloud and you can restore it only by spinning up completely new server (so you should backup quite often). It's a bit more complicated to get your own static IP address than it is with Amazon's competitors. Amazon shared storage product is called EBS (Elastic Block Store) which it is a block level storage volume mountable by EC2 instances. Another option is to use Amazon S3 which is classical Internet storage accessible via web services where you can store possibly any amount of data. S3 pricing starts at $0.15/GB/month. You also have to pay if you wan't to use Amazon's CDN network. Amazon is said to be slower when talking about CPU power or network throughput. It has very bad direct support from the Amazon's side but it has a big community around its products and well established place between cloud solutions. But I admit that this article is more about encouraging you to try some other cloud solutions than to to passing you to Amazon.
Overview:
- Cheapest plan: $0.085/hour for 1.7GB RAM, 160GB local storage, 1 EC2 Compute Unit; with long-term prepaid plans the price goes rapidly down
- Transient (non-persistent) servers
- S3 Internet storage: $0.15/GB (can be lower if storing bazillion of GBs)
- Data transfer in free for now; from June 2010 for $0.10/GB; out for $0.15/GB
- You have to pay for support
- Big community, really established products
- Featured customers: Hefty big customers
Rackspace Cloud Servers
With Rackspace you can start as low as $0.015/hour or $11/month for 256MB RAM, 10GB of local storage (see complete pricing for all options). There is guaranteed CPU power with a free burst when an extra capacity is available on the host and according to benchmarks it is very good (at least better than EC2). Instances of their servers are persistent and have one static IP address, so the system changes you've done on the server will be there until you decide to delete the server. You can have additional IP for $2/IP/month. Bandwidth for your Cloud Servers is calculated separately - Out $0.22/GB, In $0.08/GB. Internet storage (similar to to the Amazon's S3) is called Cloud Files. There is a public API to perform operations to store or fetch your data. You pay $0.15/stored GB and the same price for used bandwidth as with Cloud Servers local storage. Great is that you will pay nothing for using Rackspace's CDN network, which can bring significant saves. Rackspace is well known for their 24/7 Fanatical Support(tm) and they also have great knowledge base with plenty of informations on how to administrate your servers. One big difference between Amazon and Rackspace is that you can manage your Cloud Servers via very nice web-based cloud control application (iphone and android app also available) and access them via web-based console.
Overview:
- Cheapest plan: $0.15/hour or $11/month for 256MB RAM, 10GB local storage
- Shared storage: $0.15/GB/month with CDN for free
- Data in $0.08/GB, out $0.22/GB
- The best support, very nice UI for managing clouds
- Many operating systems that you can deploy
- Featured customers: Posterous, TechCrunch and many others
ReliaCloud
ReliaCloud
on-demand servers starts at $0.05/hour for 512MB RAM and 50GB local storage. But if your server is not running you pay only $0.025/hour. It goes with one free static IP address and you can have additional IPs for $1/IP/month. There are plenty of operation systems that you can deploy but it's not as many as at Rackspace. ReliaCloud has also some kind of knowledge base but again I would say that Rackspace is better at doing this. You are also provided with 24/7 live chat support at no cost and some tutorial videos for start. Good thing is that you pay nothing for inbound traffic. For outbound you will pay $0.12/GB. ReliaCloud doesn't provide you with an Internet storage similar to S3 or Rackspace Cloud Files. UI of control web-based app is very good and similar to the one that has Rackspace.
Overview:
- Cheapest plan: $0.015/hour for 512MB RAM, 50GB local storage, 1 CPU
- Inbound traffic free, outbound $0.12/GB
- No Internet storage, no CDN
- Nice UI for managing the cloud and pretty good support
- Featured customers: Preston Kelly
Joyent
Also Joyent has its specifics. Their basic bulding cloud units are called Joyent Accelerators. For some specific aplications like MySQL or Glassfish enterprise server they offer software packages called Joyent Virtual Appliances that tailors your Joyent Accelerator to run such an application very effectively (but they are extra charged). For example Joyent web says that their Joyent Accelerator for MySQL can handle 3x more transactions per second than EC2. Joyent solutions are closely bound with Sun (now Oracle) ecosystem so if you want to be familiar with Joyent, you should be familiar with OpenSolaris. Accelerators has an automatic CPU bursting feature so you can usually expect higher CPU power than is the minimum according to the the plan you prepaid. Another good news is that all pricing include 10TB of data transfer per month per customer. The bad news is that you have to pay an extra charge for using CDN starting at 50GB/month for $25. It seems to me that it is Joyent's business strategy to get paid for these "extra things" (i.e. additional IP address available at $60/year). Support (pretty poor knowledge base and no 24/7 help) is not as good as you can expect if you choose Rackspace or ReliaCloud. For further details see the complete pricing. Overview:
- Cheapest plan: $25/month: 256MB RAM, 1/16 core (can burst to 1,5 core), 5GB local storage; there are no hour fees so you have to pay for at least one month
- Shared storage $0.15/GB/month
- CDN starting at $25/50GB transfer
- Have to be familiar with Solaris sytem
- Average support
- Featured customers: LinkedIn, Gilt Groupe
Resume
So this is a rough overview of picked cloud on-demand server services. Everyone has its pros and cons. Amazon is market leading company, on the other hand Rackspace is innovating quickly and has great and free customer support. ReliaCloud is a bit poor in a variability of its offer but they also have good support and prices aren't bad for what you get. Joyent looks good on the first view, but you realize that you have to pay a lot of chips for things that the others have for free or for marginal price.
I Hope this post helped you to decide which Cloud solution should you start to experiment with. But I encourage you to try all of them, because it's good to put hands on every option on the market and than decide which one suits you best. According to the prices mentioned above, you can try all mentioned cloud providers for just few hours and you won't pay more than few bucks. So which one will you start with? Amazon, Rackspace, ReliaCloud or Joyent?
If you have some experience with using these on-demand servers, please feel free to leave a comment.