Migrating from EC2 to Rackspace
conigliaro.org
conigliaro.org
Most of the pros and cons listed there still apply. In it's current form, Rackspace Cloud compute is little more than VPS with a few cloud features. However, the next gen Rackspace cloud platform will make significant improvements: http://www.rackspace.com/cloud/nextgen/
For now, EC2 is a far superior compute platform in just about every way.
The smaller rackspace instances tend to perform better than the smaller EC2 instances (anything below m1.large), especially in terms of I/O.
If you don't need the advanced EC2 features then rackspace is also more comfortable to use (real IP addresses, no messing with EBS).
My point was that rackspace is easier to get going when all you want is "some servers" without building a lot of machinery upfront. They sell you a VPS, no more, no less, whereas EC2 exposes you to all sorts of magic that small deployments don't need.
I.e. automating EBS attachment (reliably) is non-trivial. That's a major hurdle on EC2 if you're not familiar with it because most EBS-backed instances are deliberately on small volumes, thus you usually have to deal with it from day 1.
Likewise the networking/NAT on EC2 is a royal pain in the ass for newbies and veterans alike. It's a poor design; public IPs could just as well be mapped directly, but as it stands anyone running on EC2 has to deal with that idiosyncrasy of the platform.
And finally, price/performance really is better on the small rackspace instances versus the small amazon instances.
As a rule of thumb: When you can get away with instances smaller than the 16G-rackspace then use rackspace (beyond that their pricing is even more ridiculous than amazon's). When you need bigger (or expect to need bigger in the future) then use EC2.
And before you pick either make sure to remind yourself that the cloud (any platform) only makes sense for small or large deployments. If you're in the mid-range of 10-40 servers then renting dedicated servers will be drastically cheaper in almost all cases.
FWIW, we run a mid-sized deployment on EC2 (~60 instances) and anything interactive has to go on at least m1.large and up (usually xlarge). We do use m1.small's for queue-workers and low priority batch jobs.
This is true, I mentioned this as a pro in the quota post. However, the performance is relatively flat - it doesn't scale on higher instances. On the lower end Linode tends to perform better than rackspace cloud.
Not quite. You will get far better IO on Rackspace. Also, you get more CPU bang for you buck. Not all of us need anything beyond a highly performant VPS.
I'm not sure this is necessarily true. We did a recent study and found RAX costs almost double for our example web app: http://blog.shopforcloud.com/2012/02/holy-cow-rackspace-uk-c...
Except they don't offer a 256MB RAM option. Rackspace does, for $10 a month. The only other serious competitor in this space is the EC2 micro and well, it doesn't perform as well.
A few more points:
• Amazon has a much larger network and you can use multiple availability zones.
• Amazon supports VPCs, allowing you to mix your cloud services with your old school servers.
• Amazon's CloudFront CDN allows you to use your own servers as a back end, not just static files.
• There are a wealth of third party tools available for Amazon that just aren't there (yet) for Rackspace.
In contrast, Amazon Cloudfiles charges per 10K requests, while only bandwidth counts with Cloudfiles. If we'd been on Cloudfront, we'd have paid more than 5x as much.
To me, the only good reasons to go with RS's cloud offerings are if you've already got dedicated machines with them (and want simplified billing, or integration via their hybrid hosting), or are planning to integrate heavily with their other cloud services (e.g. free network to cloudfiles)
* No multi-factor authentication for admin screens.
* No ability to pass environment variables from admin screens to instances (useful for keeping logins off instances).
* Customer support has ability to gain root access to machines.
* Little to no information provided about security incidents.
* Generally poor transparency for all incidents e.g. outages, security.
* Recent history of major security incidents.
* Inability to get all information in a single RSS feed.Here's a graph of the three provider's prices: http://i.imgur.com/G2laJ.png
You can use http://www.ShopForCloud.com to do other similar comparisons.
Our blog post was a first step in this sort of comparison, where we wanted to see if there was a significant-enough difference between providers to warrant further studies.
Also, see asharp's comment above about Rackspace using a credit scheduler with burst capacity.
[1] Lee Gillam, Bin Li, John O.Loughlin and Anuz Pranap Singh Tomar (2012) "Fair Benchmarking for Cloud Computing Systems". http://www.cs.surrey.ac.uk/BIMA/People/L.Gillam/downloads/pu...
1) internal traffic between boxes at rackspace is on the public network unless you setup ipsec/ssl http://serverfault.com/questions/184655/suggestions-for-vpn-...
2) Definite lack of firewalls and no deep packet inspection
3) No free micro tier for testing/dev
Others:
a) I don't like all the naming conventions of AWS - reminds me of Starbucks where a small is "tall"
b) Neither seem to offer IDS out of the box and/or outgoing firewalls although one can set-up snort/sourcefire (AWS offers this) https://aws.amazon.com/solution-providers/isv/sourcefire
c) No two factor authentication services out of the box for application authentication(need to use yubikey/duo security)
Sure, you can run an Amazon EC2 machine 24/7 (and get a 'competitive price')
But if that's your main usage pattern, go for Rackspace, Linode, etc
EC2 really shines on 'on demand' computing. Turning it up to 11 when you need it and decomissioning it soon after. Sure, it's usual to keep 1 or 2 machines working full time.
Whereas in Rackspace what you do is start a machine (you can pick from several configs) and have it running permanently.
And AWS offer several services that are still sometimes missing from the competition (like CloudFront, Route53, etc)
With that said, If I was building out legitimate infrastructure, as opposed to just a developer test platform, the article correctly points out the superiority of EC2 over Rackspace. EC2 has a powerful API that's unmatched in the public cloud space.
http://www.zdnet.com/blog/open-source/openstack-vs-cloudstac...