Agreed. I've heard some people say that those prices are kept high to encourage keeping data locked within the platform; forcing people to use the provider's services versus shipping data off to other platforms. I'm not sure if I believe that or not, but it's an interesting theory.
Honestly, the high bandwidth costs have killed a number of ideas I would have liked to tinker with on AWS. I find the cost of EC2 to be quite good, and storage cost is tolerable, but $.10/GB of bandwidth-out is horrific.
Seriously, I pay $20 for a VPS with good stats and 3TB of outbound bandwidth per month. It's with Linode, who have been apparently hard hit, but I've suffered about 10 minutes of downtime over the course of the last 2 years, and all of that was in the past week, when the DDOS crap started. Since then it's been fine.
I have been a big fan of linode in the past, I still have a fair amount with them but honestly at this point I'm seriously considering AWS even at the increased cost (which compared to my time isn't that large really and reputational cost which is).
This is the third time they've had a critical breach in the past 5 or so years, and that's excluding all the DDoS downtime they've had in that time span. I stopped using them after their second breach, and frankly am glad I did. I'm very happy with Digital Ocean.
I was a Linode customer back when it first happened.
I found out on Slashdot/Reddit first and got the email from Linode about 3 days later. I have known ever since then that Linode is the type of provider you don't want to be involved with. A VPS provider has one responsibility above all else: be honest and transparent.
Yes, with Linode and other VPS providers we get good amount of bandwidth quota. Also if you have 2 instances running then they combine the monthly quota for you. But, how much network capacity one can use is actually limited by the network connectivity the machine offers.
For example, the $20 a month VPS on Linode offers only 250 Mbps connectivity (outgoing bandwidth). So as soon as you saturate that, you need one more VPS to handle the load. So this leaves a lot of bandwidth quota unused. Especially since in the real world traffic tends to come in spikes. AWS is similar, depending on the instance size the network connectivity differs. This makes the calculations for estimating costs for hosting even more difficult.
yeah, but 250 Mbps will chew up your bandwidth quota in a day or 2... so you already needed more quota anyways... unless your traffic is incredibly spiky.
Reading between the lines, I think AWS has a huge upstream bandwidth bottleneck that it can't get around easily, while spread out small dedi providers have everything but this problem.
(Speculation based on how AWS prices things: Build big, charge for everything, charge what it actually costs with a small markup, and put every high-margin provider out of business)
Keep in mind that if you're sufficiently large, you can negotiate better rates on dedi as well. Because of the massive competition in that market, you don't have to be that large to do it either.
Transparent pricing is one of the greatest selling points of the "cloud". Nobody in the startup scene wants to deal with traditional enterprisey "call us for a quote" pricing unless they really have no other choice.
So if what you're saying is right, that would be just another reason for most small companies to avoid Amazon. If you're wrong, other comments in this thread have also given a good reason for small companies to avoid Amazon.
Huh? It's totally transparent AND you can get a better deal if you pick up the phone and negotiate. They'll ask you to sign a commitment and (unenforceable) exclusivity clause.
Some people even take that "confidential" offer letter for volume pricing and shop it around to other cloud providers. Shocker!
I have trouble believing that this is actually true. I say this as a customer who spends a half million a month with AWS (and that spending is rapidly increasing).
There are some growth incentives (eg, prepay $3MM for next year, get 6% off all services), and there are some tiered savings (e.g. 5% off on more than $500k of RIs in a single region), but I've never seen a plausible, verifiable incident of people successfully negotiating AWS rates downward.
"You agree that the existence and terms of this Addendum and the Private Pricing Program are not publicly known and constitute AWS Confidential Information under the Agreement."
Maybe they're milking your investors. Maybe you've built some absurd contraption that they know you won't be able to move elsewhere. Or maybe you need to hire a better negotiator.
That text matches what we got from a growth commitment that included a pretty modest discount.
Given that we couldn't get it; and that nobody from our company's entire VC network could get it; and that nobody on my CTO email list could get it... I'm going to continue thinking that the anonymous HN commenter is talking out of his ass.
But if you can prove me wrong, I'd be thrilled to be wrong.
"the anonymous HN commenter is talking out of his ass"
Anonymous commenter versus 11-hour old throwaway account... who wins?
Looking at a few words in your rebuttal above and combining it with the tone you're using, I can come up with quite a few reasons you might not have gotten the discount you sought.
I'd suggest you put down the "CTO email list" and let an actual business person handle this for you. Handshakes and existing relationships still matter in this world. Good luck!
If you're going to complain about tone; don't be a rude son of a bitch in the first place.
That said, no point in arguing further with a liar and/or troll. You're not getting 10x discounts on your AWS bill. You're not fooling me or anybody else.
The median AWS based SaaS company spends around 6% of their revenue on AWS. (this compares to a median of 7% for those who choose to manage their own servers).
As such, $500k/mo isn't a terribly elite club. Essentially every SaaS company that does more than $10MM/mo of revenue is spending as much or more than we are.
What do you consider significant? If you are doing over 10TB then you'll be paying lower and even lower the higher you go. This doesn't help the smaller players doing under 10TB. Do you know of people under 10TB that have negotiated better rates?
I don't consider $900/month in bandwidth significant. And I'm sure Amazon account managers don't either -- but it can't hurt to ask, especially if you've got a growth plan that makes sense.
At that point you're rapidly approaching the scale where cloud-style on-demand provisioning isn't really helping you (unless you prefer AWS's tooling to any "private cloud", which is legit), and you might as well put a bunch of dedicated servers in colo, right?
That is to say, the reason you can negotiate a discount once you get well past that point (or if you intend to grow well past that point) is because staying on AWS makes increasingly less sense for you.
Depends on the situation - a bunch of dedicated servers means a sizable shift from "operating expenses" like AWS fees to "capital expenses" for hardware. It also means shifting expenses from monthly as-you-go to mostly upfront.
Right now I use 3 Softlayer virtual servers to serve up 15TB of static files a month. It costs me a whopping $168 a month. The same 15TB on AWS would cost $1325 a month. I consider saving $1157 'significant'.
Softlayer no longer includes 5TB on every virtual server and their bandwidth is equally outrageous so I'm still evaluating a plan for new servers.
I quit Softlayer because every time I sent a change order in something awful would happen. At one point the issue tracking system broke in a way that I could not put in new tickets and got to talk to four different people until I talked to a wizard who punched a few commands into the SQL monitor and told me he saw something "amusing".
I had a "near miss" at data loss because one of their techs botched adding another hard drive to the machine, plus I was dealing with an expensive and balky backup system so I immediately moved my data into S3 then all the servers into EC2.
Softlayer had a crack sales guy call me to try to get me back and I told him I had a day job and a night job and I don't have time to talk to minions to fix the problems they make for me. He brought up the egress cost issue and I told him flatly that "I make $1000 a month in ad revenue and I pay $30 in egress charges so I don't care."
My business situation has changed in many ways since then but I'd say that my egress charges tend to run between 5-10% of my total spend so it is not a concern for me. If there is any AWS service that I don't like the value of it is RDS and I am mostly off it since I have been using SSD-backed instances and first running local copies of MySQL and then ditched MySQL.
Softlayer is the product of multiple provider rollups and it shows. Some of their techs are solid, but others not so much. Their processes can be pretty whacked too.
One rollup just prior to Softlayer was ThePlanet and their efforts to onramp us from their vanilla dedicated to their new managed service several years ago was a complete debacle. And our environment was super simple--only 5 boxes on a rack and a couple network devices.
But, the guy who was "leading" the effort was completely inexperienced. When we finally announced that we'd had enough, they brought in more management and senior tech guys to advise and save the deal (they were angling for an investment so wanted to book more customers before quarter's end; thus our little business mattered).
They talked us into staying and one of our conditions was that they replace the "lead". Oddly, they asked if they could leave him in place because he was "a young guy, just getting started, and the blow would set him back". Of course, I felt for the guy, but that struck me as a horrible thing to ask of a customer. Didn't want to hurt him but had to insist nonetheless.
In any case, we stayed with them for some time at close to legacy prices on fairly dated metal, primarily because we didn't have time to switch. Over that time, services became decidedly "less managed", especially after the rollup to Softlayer. Of course, by then they were also pushing their cloud. When we finally found time to switch, we moved to AWS and never looked back (except in relief).
We cut our costs by two-thirds. Better, it struck me that AWS's automated processes are an order of magnitude better than the "managed" services we were by then receiving from Softlayer.
Can I ask when you moved off of soft layer? I ask because my employer is considering them as an option and this isn't the first time I've heard softlayer horror stories.
Not the OP but we have had a hell of a time with SoftLayer and have been doing everything we can to move. If you have a large ops team (or a team that isn't busy) and you go with a well planned physical server build-out (make sure you get them in different pods) you _might_ be ok.
We have been working on a POC in AWS and it's such a breath of fresh air. Things work as advertised, the provisioning process is quick and everything can easily be done with an API call. No more waiting for support tickets. The freedom you get with your network routing in an AWS VPC is worth it to me.
At the risk of sounding too much like an AWS fanboy we are actually looking at scrapping it all and just bringing everything in-house running on our own physical boxes with some type of hypervisor on top.
> At the risk of sounding too much like an AWS fanboy we are actually looking at scrapping it all and just bringing everything in-house running on our own physical boxes with some type of hypervisor on top.
We have done just that, with Opennebula (qemu,kvm; networking built on top of openvswitch and storage from distributed iSCSI NAS appliances). It's a perfect middle ground. All the easy provisioning niceness, less than half the price of AWS.
You're getting a fundamentally different quality of network from AWS or GCE than you get from Linode or similarly-sized dedicated provider. It's a good idea to question whether you need the network services of the large cloud providers, but it's not a very good idea to compare them as if they were apples and apples.
Aside from the fact that total egress for AWS is biggger and thus (slightly) more ddos resistant ... what exactly is the quality difference here ?
There's plenty of dedi providers that are big enough to prevent real outages though. And it doesn't protect you as a customer, it just protects you from other Amazon customers getting ddossed, but Amazon doesn't keep your website reachable if you're getting ddossed (no dedi providers do).
Amazon AWS is 10 times bigger than the next 14 competitors combined. [0] Amazon's unused network capacity is likely far larger than any other single provider's total available capacity, possibly with the exception of Azure.
If it's expensive for Amazon to have multiple Tbps of unused capacity, imagine how expensive it is for any other provider. To match the absolute spare bandwidth of Amazon having only 1/10 extra network capacity, another cloud provider might need to have keep its network utilization at only 5%. Maintaining a network capable of serving over 20x your current utilization "just in case of DDoS" is bloody expensive.
One major difference between Google and AWS is that Google will carry your packets between data centers on its backbone by default. Google will also carry packets as close to the customer as possible, whereas AWS will dump it off as quickly as possible.
So, even between Google Cloud and AWS it's not an apples to apples comparison.
Thanks for that. I knew Google has scary, massive bandwidth but didn't realize it was shared between their internal operations and their cloud platform.
A lot of the time ddos also depends on number of locations, because typically only one customer is attacked, and typically that one customer is only in a few location.
Also, I'm not sure I buy the argument Amazon has small unused capacity in absolute value, relative maybe. They could also have 5% across 23 locations so if your application is distributed it can have even better resiliency.
For me, the worthwhile comparison isn't between cloud and dedicated, but between AWS/Google/Azure on the one hand and DigitalOcean/Linode/Vultr on the other. The former charge for all outgoing transfer by the GB, while the latter include generous amounts of transfer per month with each VM plan.
Jeff's got to make money somewhere. Remember, ingress is free and unlimited. This has made business models like DropCam viable where essentially the ISP and AWS pay for all the ingress, and DropCam only has to pay for the processing and storage.
So to put what I'm cofused about plainly (my fault on the confusion I'm sure :D ):
It sounds like the reason for having that outside of your primary infrastructure (or more accurately, inside a cheaper bandwidth host) are lower bandwidth costs with the trade-off of some slower requests getting sent to your origin server when the cached resource expires/is invalidated.
With Moore's law now still continuing to double transistor counts every 2.5 years or so, if AWS was serious about passing on savings, it'd reduce the cost of EC2 instances by about 5% _every couple of months_. That's clearly not happening, and because compute isn't exactly fungible (despite being called a "commodity") thanks to things like subsidized data ingress, AWS is making an absolute killing. The margins, even after building huge datacenters, are ridiculous.
CPU cost is only part of the total cost of an EC2 instance.
According to James Hamilton who speaks on behalf of Amazon, Servers make up ~57% of the cost of running a DC. CPUs are only a fraction of the cost of a server, maybe 25%.
So moores law only really applies to ~15% of the total cost of EC2. That's before factoring in all of Amazons capex to build the software that is EC2.
Yes, the CPU cost is only a fraction, however, the costs of the rest of server (ie. storage and memory) also is dropping precipitously, and has for decades. The cost of networking equipment and any network transit should be factored into the cost of network egress (which starts at healthy $0.09/GB).
The capex on software is negligible, because the cost of duplication is effectively zero. AWS can scale to whatever size they want (as long as their software is architected correctly, of course), and not have to spend more cash.
That said, I'm not faulting AWS for charging what they charge. They have a remarkable service. It's just hard to stomach a post bragging about dropping the price by 5% when they're effectively printing money.
Do remember Intel builds the CPUs, prices them, and basically has no competition.
I have no education/insight at all into this matter, but I would keep that in mind and reconsider your assessment of Moore's law's direct influence on AWS' bottom line.
It's not like storage or network bandwidth are sitting still pricewise. Especially on the SSD front. What was a reasonable price 2 or 3 years ago for some amount of SSD would be considerably overpriced today.
Wouldn't that only be true if they replaced/upgraded everything every few months? You'd have to factor in the cost of that. And of course, it wouldn't work that way anyway because Moore's Law isn't actually continuous. It's is a line drawn through discrete points in the timeline (new product launches from chip makers).
Also, correct me if I'm wrong, but Moore's law doesn't say anything about ancillary costs like power/air conditioning. I have no idea what the trend is for those.
It doesn't matter what the trend is, it just matters that Moores law only applies to a fraction of the cost of a server, which is only a fraction of the cost of running DCs.
With AWS, you're paying for so much more than just the bare cost of the resources. Like it or not, things like CodeDeploy, Auto-scaling triggers, OpsWorks, Elastic Beanstalk and all the other services that are "included" ("pay only for the resources you use") are likely factored into the EC2 costs.
I've tweeted to you twice and asked your customer support about this too but I have never gotten a reply to it. So I'm asking you here.. When are you gonna allow reserved instances for Indian customers?
Right now I cannot purchase reserved instances and so my bills are much much more than what others are paying.
P.S. Here is the screenshot when I try to purchase. There has been no update for 1 year now.
http://i.imgur.com/oZAHMt5.jpg
This seems a worthless reduction. I tried having my online dedicated box on ec2 for a while, cheapest server. Bill per month $120 USD. Yes that is mostly traffic. It was over 200 the month I decided, foolishly, to host a video on a blog.
Doing exactly the same on a dedicated provider: 10$ per month. With more traffic than I did on ec2.
Also, it's an (atom powered) dedicated machine. Performance is far better. 4G memory instead of 1G. Disk space : 1T (of the rotating kind though), but of course I can have ramdisk now for most of the stuff. Compared to 100G SSD for 10$ on AWS. But egress traffic, that's what's costing me.
Downtime since switching : 0 (but I will agree that it's lower quality. Not 12x lower though).
If you're running a single server then I agree, AWS is hideously expensive. That's not really their market though.
They come into their own when you're running tens to hundreds of servers, with dependencies between each other, and a use for supporting services such as RDS and S3.
I don't know what kind of hardware Amazon uses, but it looks like 60TB worth of any kind of SSDs starts at $24K on Newegg. If they're provisioned 3X, that's 12 months to pay off the drives.
If you check out 3x redundancy, what does it get you ? Well, you can correct any 1 bit error (not 2, because you wouldn't know which version is the correct one). Hamming(7,4) with column encoding gets you the same (better in some ways even). Therefore would you really be lying to your customers if you told them you gave them 3x redundancy if you used Hamming(7,4), column encoded ? I'd say no. Because it gets them the same : any disk can fail, and you can rebuild the data.
If you intend to serve your customers correct bitstreams in the case of bitflips on the disks, you'd need to read 2 disks even in the case of 3x redundancy, exactly the same as in the Hamming case. Of course, people might choose not to do that, but then you only have backups, not redundancy. What can go wrong with 3x replication reading from one disk is that your system updates the 3 disks based on information read exclusively from disk 1, which may turn out to be wrong data.
But Hamming only costs you 175% storage, not 300%. That brings it to ~7 months. And with precomputed lookup tables Hamming decoding is far, far faster than reading from disk (even without I bet it would still beat it).
Another huge advantage Amazon has is that EBS means they don't have to allocate SSD space unless a customer actually uses it, not just if they reserve it (and they pay for it when reserving it). So in practice you do what ? 100% overprovisioning is prudent ? Let's say compression, given that these are operating system images mostly, gets you another 30-50% or so. If they dedupe, they could get far more.
On the other hand the newegg figure doesn't include power to actually use those disks (SSDs are cheap though). Amazon of course doesn't pay anywhere near full price there either. Then, actually putting stuff onto an EBS ... amazon charges for that. And of course, Amazon needs to develop a lot of software to make this happen. So there's various other things not counted here.
So hardware costs for Amazon would be at most 2-3 months or so until they're repaid, no more.
You're leaving out things like ops & security staffing, etc. not to mention the physical hardware other than disks: you need servers, cabinets of disks, etc. all of which need to be purchased, monitored and replaced just like everything else.
An SSD might use less power but you need more of them and the rest of the storage server won't change at all.
Finally, I'd love a citation for any compression + dedupe savings at the level you're seeing for large heterogeneous deployments, not to mention reliable performance at their scale.
Do they specify the VMs tested? AWS has a lot of different versions of things in play and most of the people I know fall into two camps: fairly generic VMs running compute jobs, which probably would compress well, and VMs running huge databases / image farms / etc. which do not. By VM count I'm sure the former dominate but by total storage consumption I think the latter wins – I would, of course, love to see if anyone has hard data.
AWS doesn't have that many OS versions.
Besides I'd expect huge datasets go either to S3 or to ephemeral storage like Cassandra clusters etc.
EBS isn't the best place for it. Your mileage may vary etc.
A storage server and network to put those drives into which would give similar functionality to EBS would have significant costs and require some degree of management.
I don't have any empirical data, however I believe spot prices wouldn't move. Spot prices tend to be relatively flat except for odd spikes which AWS uses to kick off people who use Spot as if were the same as Dedicated Instances. You're already getting 75-80% off the Dedicated price, so a 5% reduction isn't going to move the needle all that much.
Honestly, I wish to have smaller instances like m4.medium or even m4.small, because right now I have no other option to use for autoscaling group as m4.large even if it's not more than 80%-90% underutilized.
Not OP, but I have some data and an answer of sorts. If you have a workload that is light on CPU but needier on RAM, m4.large is cheaper than m3.large; m3.medium may not do as it has less than 4GB.
Also, in our experience t2.* instances can't sustain any reasonable network traffic, but they do work wonderfully for lightweight RESTful systems. So any workload which serves mostly cached data and needs 6-7 GB per node is best off with m4.large. At least for Ireland, in our experience a single m4.large can keep up with bursts of ~120Mbps and sustain around 65Mbps. We have two as edge nodes for one of our public services, and will probably add a third one soon. Cutoff point for sustained bandwidth is slightly above 70Mbps, after that it starts to stutter. The t2.* instances choke and throttle bandwidth way earlier.
Finding the right instance type for a particular service always takes some time and experimentation.
The more SKUs I have sitting on the shelf, the more price reduction announcements I can make. The difference with Safeway however is that I cannot take those promotions back. On the other hand, why not? Should we expect to see AWS announce Mothers Day two-for-one t2.micro deals soon, while supplies last?