Announcing Micro Instances for Amazon EC2
aws.amazon.com
aws.amazon.com
Is this really $6/mo cheaper than a linode 512? That might be nice for personal projects.
I'm trying to teach myself some things that really need more than my local dev machine (puppet, backup strategies/more resilient code, learning cassandra). I've been running a bunch of VM's on my laptop, but my dev machine is a weakling and can't hardly handle it.
It almost seems like I could just spin up a dozen of these little instances for $2.88 per waking day and teach myself under substantially more "real" conditions on the cheap. That's something I'd love to have as an option on linode, given that teaching myself is a large part of what I use it for.
Is there any reason that wouldn't work? Is this too complicated in practice?
Linode doesn't charge you for bandwidth between nodes in the same datacenter -- is there something comparable in the EC2 world?
There is no Data Transfer charge between Amazon EC2 and
other Amazon Web Services within the same region (i.e.
between Amazon EC2 US West and Amazon S3 in US West). Data
transferred between Amazon EC2 instances located in
different Availability Zones in the same Region will be
charged Regional Data Transfer. Data transferred between
AWS services in different regions will be charged as
Internet Data Transfer on both sides of the transfer.As an example, a medium sized website database might be 100 GB in size and expect to average 100 I/Os per second over the course of a month. This would translate to $10 per month in storage costs (100 GB x $0.10/month), and approximately $26 per month in request costs (~2.6 million seconds/month x 100 I/O per second $0.10 per million I/O).
This just brought AWS down into the realm of competition with the likes of Linode and others, and we can now figure out how to spin up a dozen nodes and work with all the innards of aws without worring about getting accidentally hosed on forgotten instances... works for me.
I get the general impression that doing anything architecture-y or deployment-y requires amazon-specific steps, steps that I don't have to take on a barebones ubuntu install. (of the 'Do this to get Thrift working on EC2' variety)
That sucks some activation energy away.
The ease/hurdles of VMs on my dev machine, even if performance is a bit of a bear, is still more attractive to me than doing anything Amazon-specific, because it's still all just unix.
I don't want to learn "Amazon", I want to learn [puppet, Cassandra, et al].
This is an issue for me to. It looks like a hassle and the instructions look vague and all I want to do is just setup a VM on my machine and then run it on amazon.
Turnkey Linux seems to make this better.
I'm guessing you're just using an off the shelf Ubuntu AMI, right?
AWS is great, but you can't compare the AWS instances with other VPS or Dedicated offerings.
It seems a bit ridiculous, because you still need a bit of local power for display and fast reactions, and current iPhones/netbooks could do with more power. But desktop PC's have been fast enough in that respect for a while. An advantage of the cloud is that as RAM, cycle prices etc drop, you get it (more of them or cheaper) without the hassle of physically upgrading. And bursty usage is available too, eg. when compiling.
There's solid economics here: it's a sort of timesharing idea, instead of cycles being wasted while you type, someone else uses them to compile. Even more compelling globally - someone else uses them while you sleep. The same argument works for sharing your desktop's own cycles, p2p, but a centralized cloud has admin advantages and other economies of scale.
But latency isn't such an issue for compiling etc. Someone was saying in the instant google thread that 250ms is imperceptible for search (and I've heard 200ms for the command line, from Rob Pike on Go). That's much lower hanging fruit than for gaming, where 250ms latency is far from instant but unplayable.
Yet, it works. Shockingly well. Better for FPS games than strategy games actually (you notice lag on a mouse cursor more than anywhere else).
In fact local maintenance is the driving force behind web apps already. They generally lag like a mother, have lame controls and update in whole-page flashes, but I see more every day.
Are these actually redundant carriers, or is the last leg owned by qwest and just leased to Time Warner and ClearWire?
My pictures are all stored "in the cloud" (on facebook, or flickr, or photobucket). "My" music doesn't even really exist anymore, it is playlists on grooveshark, or stations on pandora.
Documets? Google documents.
I do all of my web development on VIM running VPSs.
The only stuff that doesn't happen "in the cloud" is specialized, media-creation type things, an activity that I would be surprised if more than 5% of the population participates in.
There isn't really any data to be backed up here, except for the web dev things. For that, there are three servers that all exchange rsyncs every night. One is prod, one dev, and one that is just using some spare disk space on one of the arrays at work.
For the photos, the online stuff is the backup. The originals still live either on their negatives, or on SD cards.
Did I give up too soon?
That said, sooner or later you'll want to do something that should seem possible on App Engine (e.g., image transformations with BufferedImage) and you'll hit a brick wall.
That's when I turn to a generic Ubuntu image running on EC2. It's not free, but with spot pricing it's awfully cheap. I expect spot pricing for this newest micro size to stabilize at around $10 a month.
Could you pay $14 and have a remote IE instance that the whole team can access no matter where they are, instead of using up your precious local memory on every machine?
I'd much rather run IE locally in a VM though.
This is the only instance that is missing 64-bit.
Even Micro instances offer 64-bit.
https://spreadsheets.google.com/ccc?key=0AtNTMtkGNKnfdGJoajF...
$10/mo for 1 year reserved is pretty amazing.
Also, on my small slicehost, I'm paying $20/mo for 1/3 the RAM, and using 6GB of disk, which would be $0.60 on EBS.
Still, I wonder the same thing -- actually, whether or not it's possible for the spot pricing to go higher than the on-demand pricing, etc.
The important take away: Don't use spot instances unless you are 100% okay with the idea that your machines will disappear without warning at some point. Let that sink in.
It always bothered me that for a development server you are basically overpaying for bandwidth. Who cares I have 450GB bandwidth when I use maybe 30GB per month ?
No affiliation to them but I do have VPSs at both (slicehost for things that require lots of bandwidth).
And if I have to do it myself I might as well use Amazon, I use it for everything else anyhow.
I did not try, but that probably means complicated settings, which is a pity, since while the price could probably appeal to people launching side projects at minimal costs, like me, being a side project also means that not much time can be devoted to sysadminery.
- we are hosting a little software load balancer for web services and it definitely does not need more than that
- thanks to the web service api of Amazon, it is relatively easy to set automated recovery plans, and the idea is very attractive, but until now I was detterred by the price.
- for small web applications with low bandwith, the price is good. For reserved instances, for one year, you pay 54$ up front, then 87.6$ for usage for the whole year, for a total of 141.6. That's a lot less than renting a server at linode.com for a year (~220$).
(($0.007 * 24 * 30)*12 + 54)/12 = $9.54 a month assuming you use it for the full year.
Edit: Also, as mentioned by _delirium, Linux instances are also $0.02 an hour. I did the Linux calculation but the same one with Windows goes at $0.012 per hour.
(The same applies with Tarsnap's $0.30/GB storage cost vs. fixed-plan backup pricing -- $10 for 50 GB sounds cheaper, but if people only use 5 GB of that on average, it turns out to be far more expensive.)
Edit 1: I mistakenly said that static IP was extra when it's not while in use.
Edit 2: Storage is also extra.
For example, I'm interested to see what changes this makes to the Heroku offering. It seems to be a perfect fit for their product.
EDIT: $54 upfront and then $0.01
* They have 64GB RAM hosts.
* They want to dedicate only up to 85% of the RAM to the Xen instances (keep 15% for the host OS, buffercache, etc).
* The Operations/Management team decides to target an overall rate of $1.82/hr per host to achieve desirable profits.
* The AWS marketing department has a requirement that instances be priced $.xx/hr (no fractional cents) to evoke "simplicity".
* At a first pricing attempt, they see they have the choice of charging $.02/hr and assigning 65536 * .85 / (1.82 / .02) = 612MB per instance
* ...or charging $.03/hr and assigning 65536 * 0.85 / (1.82 / .03) = 918MB per instance
* They select the first option (612MB/instance) because it is deemed sufficiently smaller than the existing "small" 1.7GB instance offering, whereas 918MB was not small enough.
A Xen supervisor needs a fair amount of memory for its own operations, plus it can buffer the physical disks in the machine as well as any network attached storage. If these servers were also hosting S3 in their "spare time" it would degrade performance, and expose the system to potential vulnerabilities.
To be better positioned for rapid growth in the future?
Can you use this as a VPS replacement? Probably. My guess is that your uptime will be no worse than some VPS provider. However, if you're storing information on the ephemeral storage, the onus is on you to get it to the new instance. I imagine that isn't generally the case on a VPS.
You may be able to mitigate this by using EBS (required in the case of these micro instances), but I've only used EBS a handful of times, and am no expert on the subject. If I understand their layout for these micro instances, it would simply be a matter of spinning up a new instance and spinning down the degraded node.
I've been running ~10 nodes for AdGrok for the last 3 months, and we've already had one node fail (in that it wouldn't respond to any ec2 cli command to shut down or even terminate).
That hardware failure rate is about what I'd expect if it was our own colo and our own machines. Stuff always breaks.
The bottom line is that EC2 installations need to be designed as semi-permanent. My preferred strategy is similar to how Google talks about their hardware (when they do), that any one server can go down at any time, but the overall setup is resilient to failure.
Amazon charges more for Windows instances across their entire offering. A Windows micro instance costs 50% more than a Linux micro instance ($.03/hr vs $.02/hr). This likely reflects Amazon's statistical studies on their EC2 datacenters that a Windows stack (OS + apps) uses on average more resources than a Linux stack, therefore more power costs, cooling costs, etc.
The TCO debate centers around the labor required to set up & maintain one versus the other.
That, incidentally, is why I run Windows on all my EC2 boxes.
http://www.jasonrowland.com/2010/09/amazon-vs-rackspace-for-...
However, if your usage is way up there all week long, it seems to me there are significantly cheaper alternatives, e.g. Hetzner servers.
That way you're not going to incur any licensing cost for SQL Server provided you can live with the DB having a file size limit of 4 gig.
Regardless, I'm glad to see the offering. Was looking for something similar and with the bar of entry constantly getting lower by competition rising, am sure it'll find a niche.
http://cl.ly/0430c3a3f00c59743368
edit: only appears to be available with certain AMIs
This may cut away at the incentive for people to start with Google App Engine.
I'm sure AWS will continue to increase the convenience and ease-of-use of their services, and GAE will continue to increase the breadth of their services, but right now they seem to be targetted at quite different app-dev areas.
http://www.thebitsource.com/featured-posts/rackspace-cloud-s...