“What do you need?”, a life lesson; courtesy Amazon Web Services

“What do you need?” is an important thing to know. It allows you to more accurately predict what your costs might be for any longer term obligation. And to be obvious, this relates to pretty much everything, from how many miles you drive to derive fuel costs and a budget for them, to how much free time you have to devote to a pet. You’ve got some quantity of a finite resource, generally it’s a good thing to have some reserves at all times. And that, dear reader, never happens by accident.

If you’ve been reading along at home, you’ve noticed that spurred on by a friend of mine’s experience migrating his web hosting to Amazon.com Web Services, on an Elastic Computing Cloud (EC2); that I have started a EC2 of my own using their Free Tier services.

My feelings on the service are quite positive, it’s pretty darn awesome to have the ability to go from a single small server with a website to a enterprise size data-center and web-farm on demand. I don’t use it for such but, that’s worth something. Personally, I love having a root ssh available and the ability to run whatever service I deem fit, feels good; real good!

However, what had happened was, I popped on over to check my account activity and was greeted with this:

WhatTheWhat

What I’d like to draw your attention to is the “AWS Data Transfer (excluding Amazon CloudFront)” group. This section contains four items:

  1. Data transfer out under the monthly global free tier
  2. Region data transfer under the monthly global free tier
  3. Data transfer in per month
  4. First 10 TB / month data transfer out beyond the global free tier

And of those items, #4 is the little devil. Good ‘ole First 10 TB / month data transfer out beyond the global free tier.

I’m not going to complain about the price, $9.95 sounds reasonable for the transfers. The thing is, I’ve had this account for 20 days, and even if I did use quite a bit during the “load up” phase of server configuration, I’d say honestly it would have been under 10 GB. I did have a game server running for a week or so of that. I don’t believe the bandwidth use would have been in 60 GB. I could be wrong about that.

And there you have it, I have no idea because, I don’t know what I need. At least when it comes to pay-as-you-go computing platforms and web-enabled services. Well at least I have something to think about. I’m not really quite sure where to begin to map out my needs on this.

I’ve turned my instance off until I can sort it all out, I have time for a free experiment, but sadly not the funds. I do have an email into Amazon Web Services Support, in particular asking how I can tell if the charges are valid and identifying where my usage was to/from. Hopefully they have the capabilities and it’s just unpreparedness on my side.

Either way, the service is excellent and I highly recommend it. I probably wouldn’t run a game server on it without getting far better bandwidth usage scenarios.

Another Amazon.com Win

Recently, a friend of mine switched his web hosting to an Amazon Elastic Compute Cloud (EC2)  and was very pleased with the results; so much so that I decided I needed to look into this myself as a currently provide web hosting for a number of small domains and while I am satisfied with my current provider, as it turns out Amazon offers deep discounts for longer term agreements (one or three years) which are very competitive.

As I like to do, before I get into the Amazon.com win, I’d like to provide a little backgroundSmile

Amazon’s description of their service is (ref: http://aws.amazon.com/ec2/) :

Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides resizable compute capacity in the cloud. It is designed to make web-scale computing easier for developers.

EC2 is Amazon’s version of Virtual Private Server hosting which in a nutshell is renting a an actual server computer that is located and run by the hosting provider and they give you an administrator account to that server such that you can use to install and maintain any software the server can run, such as web servers, DNS servers, source control, even video games. The advantage to a VPS hosted environment over traditional web hosting is that you get to decide exactly what services the server runs. Traditional web hosting generally provides you with a web server and usually an FTP server, and sometimes SSH access to a remote command line. You can then upload content to and not what web server software you’d like to use, or install any additional custom services.

Currently (1/15/2010) Amazon has a Free Tier which, if you are eligible for, you can get a linux based micro instance free for a year. This tier comes with a limited but what I feel is a generous amount of bandwidth and storage use.

From Amazon’s AWS Free Usage Tier product page:

AWS Free Usage Tier (Per Month):

  • 750 hours of Amazon EC2 Linux Micro Instance usage (613 MB of memory and 32-bit and 64-bit platform support) – enough hours to run continuously each month*
  • 750 hours of an Elastic Load Balancer plus 15 GB data processing*
  • 10 GB of Amazon Elastic Block Storage, plus 1 million I/Os and 1 GB of snapshot storage*
  • 5 GB of Amazon S3 standard storage, 20,000 Get Requests, and 2,000 Put Requests*
  • 15 GB of bandwidth out aggregated across all AWS services*
  • 25 Amazon SimpleDB Machine Hours and 1 GB of Storage**
  • 100,000 Requests of Amazon Simple Queue Service**
  • 100,000 Requests, 100,000 HTTP notifications and 1,000 email notifications for Amazon Simple Notification Service**
  • 10 Amazon Cloudwatch metrics, 10 alarms, and 1,000,000 API requests**

In addition to these services, the AWS Management Console is available at no charge to help you build and manage your application on AWS.

* These free tiers are only available to new AWS customers and are available for 12 months following your AWS sign-up date. When your free usage expires or if your application use exceeds the free usage tiers, you simply pay standard, pay-as-you-go service rates (see each service page for full pricing details). Restrictions apply; see offer terms for more details.

** These free tiers do not expire after 12 months and are available to both existing and new AWS customers indefinitely.

The price, is Free for the limits above (assuming you are eligible). Were you to exceed any of the limits, you will be charged the normal fees for a linux micro instance (generally under $.20 USD an hour for the exceeded limit.) For full pricing structure see: Amazon’s EC2 Pricing page.

The eligibility requirements may be found on Amazon’s AWS Free Usage Tier Offer Terms page, and as of this writing, are as follows. (I high-lighted one in particular for it’s relevancy to this post) :

Terms and Conditions

  • Only individuals who have not previously created an AWS account are eligible to participate in the Offer. You will not be eligible for the Offer if you or your organization create(s) more than one account to receive additional benefits under the Offer or if the new account is included in Consolidated Billing. You will be charged standard rates for use of AWS services if we determine that you are not eligible for the Offer.
  • You must create and maintain an AWS account in good standing (including a valid credit card) to participate in the Offer. Your participation in the Offer and your use of the AWS services is subject to the AWS Customer Agreement. The Offer is a Special Pricing Program under the AWS Customer Agreement.
  • Only accounts created after October 20, 2010 are eligible for the Offer. The Offer does not apply to any use of the AWS services prior to November 1, 2010.
  • You will be charged standard rates for use of the AWS services prior to November 1, 2010 or after the Offer expires. You also will be charged AWS’s standard rates for any use that exceeds the free usage amount provided under the Offer.
  • If you have not used the AWS resources provided under the Offer during the previous 3 months, we may reclaim those AWS resources after giving you 30 days notice. Even if your AWS resources are reclaimed, you may continue to participate in the Offer using new AWS resources.
  • You may participate in the Offer for one year from the date you first sign up for any of the services provided under the Offer.
    Unused usage amounts remaining at the end of the month do not roll over to subsequent months.
  • When calculating your use of AWS services under the Offer, we will aggregate your use across all AWS regions.
  • We may stop accepting new registrations for the Offer at any time.
  • Existing free tier offers for Amazon SimpleDB, Amazon Simple Queue Service, and Amazon Simple Notification Service are subject to separate terms and conditions described on the pricing pages for those services and the AWS Service Terms.

So, as I stated before, I was pretty excited about the offer to check out what Amazon had to offer, especially in that I am a software developer that frequently works with web services and internet connected applications and Cloud Computing is a Big Thing in my world these days. So I grabbed my credit card and signed up immediately!

Well as it turns out I completely forgot that I did in fact already have an AWS account that I had gotten a number of years ago to play around with some of their web API’s. This made me ineligible for the Free Tier.

I proceed to load the server up and get it running the way I wanted to and two days later I checked back at the billing page to ensure I hadn’t messed anything up during the sign-up process. I found the process to be slightly confusing. The way what you are ordering is clearly defined and great, what was not intuitive was if what I was ordering was eligible under the micro account. You can absolutely get a Free Tier instance and purchase and pay for anything above and beyond what’s in the Free Tier, no problems. Which is great, but I found myself wishing for a way to limit the products and services to those only included in the Free Tier.

And they may actually be, I am not certain because I was not eligible at sign-up and the UI may very well have been tailored to that of a long time user. I’m certainly not going to slight them much for that, but if that was the case, it would have been nice to know before I pulled the trigger.

At any rate, I ended up being charged $.71 USD for 2 days of the service. Completely no big deal but if money keeps adding up and being budget wise is never a bad thing. So I quickly filled out a customer support form asking about it. This was a Friday evening and I heard back on the following Sunday morning.

Below is a portion of the response:

Hello John,

I’ve researched your account and it appears your AWS account was created before October 21, 2010. This would ordinarily make you ineligible for the Free Usage Tier Offer.  However, because of your limited use of our services, as an exception I have manually signed you up for the free tier services of EC2 and S3 effective January 1, 2012.

I was completely satisfied with the outcome. I wasn’t really sure what to expect, I was not aware that I was ineligible. I figured, worst case scenario, I pay the $.71 USD and cancel the account. And I feel that Amazon would have been completely within their right to rigidly stick to their terms. But they sure surprised me!

Amazon’s customer service is simply excellent. It’s one thing that, I feel, sets Amazon apart from its competitors. Their commitment to making their customers happy is truly one of the reasons I keep giving them my business. I’ve had to contact customer support a few times for my regular shopping using their site, and have always been happy with the outcome. It really is nice to see a company provide the same great service across all their product offerings.

Tip of the hat Amazon.com, thank you!