Only show posts tagged with: metablogging, english, sotramont, francais, linux, ubuntu, geeky, web, python, django, screwtheman, spam sucks, vélo, akoha, hiring, chicago, pycon, cloud, consulting, quacks
Older posts:
Is slapping an API on top of a VPS hosting provider's systems enough to call it "Cloud Computing"??? I think not, but Rackspace thinks so. A look at rackspacecloud.com.
I've been using Amazon Web Services for a while, for Akoha and now for a client. In particular, using EC2 ("cloud servers" - on-demand virtual servers, basically), with EBS (attached storage, a little like iSCSI drives), and some S3 usage (cloud object storage, for storing server images, scripts, and all sorts of files).
But Rackspace, a great and huge more traditional hosting / colocation company, has recently gotten in the cloud server game with their rackspacecloud offering. But how does it compare to AWS?
They have a nice little page that does the comparison with AWS for you, but of course it's a little tilted towards Rackspace. Here's my take on it, starting with the same points Rackspace lists but going further into what AWS has and Rackspace doesn't:
persistence:
- what bites most people when they start using EC2 is that your server might die at any moment, and when it does, you're SOL. All of your local data's gone, any additional software you've installed or custom config you've done - all gone. You just need to plan for that: customize the instance but then create a new AMI (a server image you can start new instances from), which will save your customizations; and store important data on EBS-attached storage, which is persistent, and make frequent snapshots of that storage to S3, in case the volume fails or gets corrupted.
- with rackspacecloud, it would seem, when you start a new instance, it's just like a "normal" colocated server, in that it's using RAID-10 local storage and if it dies and you ping rackspace so they bring it back up, it'll come back up on the same server with the same storage. So this is a hybrid cloud computing / traditional hosting offering, and i think that's pretty powerful, actually.
amazon EC2 offers a limited set of server sizes, and rackspacecloud offers more, particularly on the low end (the cheapest instance, with 256MB ram and 10 GB storage, will run you 11$/month on rackspacecloud; the cheapest EC2 offers you in its lineup of instance types runs you $72/month but you get 1.7GB/160GB). Not a big factor, i would say.
what is significant, however, is that rackspacecloud, like a traditional VPS provider, will allow you to migrate an existing instance to a bigger instance type, live. With EC2, you can't; you'll have to start a new instance of the bigger type, and migrate the data yourself.
- furthermore, you can do this through the API, and they'll keep the old instance data for 24 hours, allowing you to undo a resize operation
- you can change the server size up or down
I do want to emphasize one thing at this point. If you're looking for a place to have a static server that will host your email, web, and other services, neither option is what you want. My server is a VPS at Tektonic (can't say i would recommend them, but they're ok), and i'm paying 28$/month for 1.2GB/26GB and decent performance, a free server snapshot, ticket-based support, 50GB bandwith - you can find better deals elsewhere, and you won't be able to get the same on either EC2 or rackspacecloud. What those are good for is a deployment of many servers, where the demand is elastic: you need 3 servers now, but the next hour you need to boot up 100 servers, and scale down to 10 the next day. This is what cloud computing is for.
Now, that little comparison is fine and dandy, but leaves out a lot. I had a chat with a nice Rackspace rep, "Roland", who clarified a few points for me:
the rackspacecloud comparison with AWS page mentions, about IPs:
Additional public IPs are available upon request and shared IPs can be provided for high availability.
that would lead me to believe you can have an IP that goes to multiple servers in a load balancing fashion (like AWS's elastic load balancing) , or at least can automatically failover to a second server if the first one fails. It turns out that's not true, at least not according to "Roland"; it just means that a single server can have multiple IPs, and you can re-allocate that IP to another server if need be. So, just like elastic IP's
Reading the API document itself, i see that it's that's exactly what this is. "Sharing" the IP with another server will simply configure the local net so that traffic is allowed between the IP and that server, but won't assign the IP. It's then your responsibility to monitor the health of your active server and re-assign the IP if the primary server dies. This note at the end of the description kinda scares me, though:
Note that configuring the server does require a reboot.not sure why assigning a new IP to a server would require a reboot... but if it does, that sucks.
their pricing page shows a list of instance types.... but no mention of cpu's/cores/anything, which is very odd. The rep told me that the servers are all 4-quadcore machines with 16GB ram, and if you get the 16GB ram instance, you get the full machine. He then said that if you get a 256 instance, you share the instance, but didn't answer my question, still. Presumably, you'd then get 256/1600'th of the server (a little more than one eighth, so 2 cores). If that's true, that's pretty good for the price, but i have my doubts.
Then there's the issue of the API. AWS has a nice XML API, with a great python library for it (boto), as well as lots of command-line tools that use Java and Ruby (but are all pretty slow to use), and few nice graphical tools (ElasticFox and S3Fox, which i both use, and the AWS management console that's also quite good). On the rackspacecloud side, they also have an API, which you can query in XML or in JSON (i like the latter a whole lot more for many reasons, so that was very good news to me).
Since the Rackspace "cloud system" is extremely limited compared to AWS, the API is suitably simple, but it's exactly what's required (i.e., they didn't make it complicated or backwards).
The conclusion of all this, however, is rather simple: rackspacecloud offers hosting in the form of VPS'es. They then slapped an API and per-hour pricing on top of it. That's it - that's all there is to rackspacecloud.com. Is it cool? Yes, definitely, particularly because it's arguably cheaper than EC2 for the same system, if all you need is on-demand computing. Is it cloud computing?? I think not. The bone needs some meat around it - pricing and and API on top of something that existing already won't cut it. Hopefully that's just their first step - Amazon does need some competition, and Rackspace should be able to provide it.
Updates
I've looked at rackspacecloud a little more and a few more things popped up.
So, i stand by the earlier statements that this is VPS hosting with an API and by-the-hour billing slapped on top of it, nothing more nothing else. Better support, slightly cheaper instances
by wiswaud
on 16 July 2009
Tags:
cloud, english, geeky, linux, web
yeah... i should have defined that a little bit more... i don't have a good clear-cut definition for you but i think i'm just looking for more features than this.
For me the dealbreaker is really the lack of a concept like security groups, which makes it quite a PITA because you then have to configure or auto-configure each instance for internal access and external access. Say you have a db server and an NFS server in your cluster, and a new node comes up. You can't configure your images to allow NFS and DB access from everywhere, and because you don't own a block of internal IPs you can't just open up all internal IPs either as any other instance (not just yours) can then hack into your system through a flaw in your DB or NFS server. That means that when your system comes up both the new instance and the server instances must add rules for your new node. This is very annoying. It just shows that it's a product that still has a traditional hosting mentality to it, where the instances you bring up are there to stay, whereas in a cloud computing world, instances come and go.
Lack of the equivalent of Amazon's EBS is also fairly major in my mind; people were screaming for it when EC2 came out.
It's quite possibly that this is just rackspace's first steps; they're an awesome company with great hosting and amazing support, but for this to really compete with EC2 it needs a few more things.
"It's quite possibly that this is just rackspace's first steps; they're an awesome company with great hosting and amazing support, but for this to really compete with EC2 it needs a few more things."
Yeah, like reliability.
Rackspace has it, and RackSpaceCloud doesn't.
We host with RackSpaceCloud today, and our site was down more than 200 hours last month due to connectivity issues, security issues, failing hardware, scheduled and unscheduled maintenance blackouts and "misbehaving nodes".
We are moving immediately to a dedicated server... and it can't happen soon enough!
ouch!
rackspace is indeed awesome at hosting; i'm sure if their cloud takes off they'll make it just as awesome.
Thank you very much
travo 16 July 2009 21:21 EDT
You mentioned that Rax is not cloud computing. Just wondering what is your definition of cloud computing?