My task was straight forward. I wanted to set up a database on Amazon Relational Database Service (RDS) on Amazon Web Services (AWS) to use for a Ruby on Rails web application and a WordPress installation for my new business website PatternsDB. I’d never set up RDS before, so it was all new to me. But I got caught with a $198.09AU bill over the course of 9 days. So I’ll explain what happened so you don’t get caught with an unexpected bill too. And I’ll also share how I got it reversed.

Installing RDS

I already had a Ruby on Rails web application set up with Elastic Beanstalk and I wanted to set up WordPress to use as the blog using Elastic Beanstalk too. After quite a bit of research I decided that I wanted to have a central RDS Database instance that I could use. I followed the instructions provided by AWS – “Build a WordPress Website on Amazon Web Services”. So off I went and followed the instructions to the letter. After a few hours I had set up the RDS database instance and WordPress, but there was a problem with getting WordPress to work. It was the end of the day and I was going away for a week the following day so I didn’t get around to getting it all up and running.

The dreaded email with a $198.09 monthly bill

Fast forward 9 days. I’ve had a trip away (with gastro mind you) and I didn’t think anymore about my RDS attempt. But one rainy afternoon while my son was watching the Rio movie for the fourth time in two days I checked my emails only to see an AWS monthly bill for $198.09AU. This got my heart pumping as my bills were usually under $10 a month.

I went straight to my computer to take a look at the AWS billing page to see where the costs came from. And this is what I came across:
AWS Billing Page

On drilling down the Elastic Compute Cloud there was a charge of $24.98 for an EC2 t2.large instance at $0.104/hour for 239 hours. And RDS had a db.r3.large RDS being charged at $0.48/hour for 238 hours. What had I done?

Well, fortunately I keep everything I do in Evernote. So I found the note detailing my actions for the RDS set up only to see that I had chosen the t2.large EC2 instance and db.r3.large RDS instance as noted on the AWS Billing page. I then went and re-read the instructions that I’d followed on the AWS site. They recommend using these sizes and then doing some load testing to see what you need. But I clearly didn’t have my brain switched on, and didn’t follow my own advice of only using the micro versions of AWS servcies.

Stopping those charges

First task was to turn everything off so I wouldn’t get any more charges. This involved

  • Deleting the RDS Database Instance
  • Deleting the Elastic Beanstalk application for WordPress

Nicely ask for a reversal of charges

Then with a clear mind I opened a new case at the AWS Support Center, requesting a reversal of the charges.

The exact message was:

I followed the instructions on setting up a WordPress site at http://docs.aws.amazon.com/getting-started/latest/wordpress/hosting-wordpress-on-aws.html. It recommended using EC2 t2.large and RDS of db.r3.large, now I have just received an outrageous bill. I did this all on 21/9/2016, and it wasn’t even working properly, I then went on holidays and haven’t touched it since. Environment was called patternsdb-wordpress-env. I also have an Elastic Beanstalk called patternsdb-env which is fine and has been costing under $10/month so this is a real shock. How can I get these charges reversed, and what do I need to do to stop any further charges? I have already terminated the Elastic Beanstalk environment and deleted the RDS instance,

Thanks for your help,

Carmen Grantham

Then I sat back and hoped AWS, being the large company that it is would reply quickly and reverse my charges. Well 7 hours later I had the response that I was after. They had reversed all my charges for the month and the couple of days for the following month that I’d been charged. What a relief!

Setup billing alarms to prevent it again

To avoid this happening again I created a Billing Alarm in CloudWatch so that I would be notified if I was billed more than $0.50US in a 6 hour period. Within 2 days I received my first Billing Alarm email with the dreaded subject line of “ALARM: “Exceed 50 cents” in US East – N. Virginia”. Expecting the worst I opened the email to find a bill of $1.00 US. Phew! I can deal with that. I’d just set up a new hosting zone so knew exactly where the cost was coming from.

Conclusion

This experience has taught me a very valuable lesson. Don’t take recommendations (even by AWS) at face value. You must do your own research and make sure that you know what you are doing and choose an option that you REALLY NEED. And always check the relevant pricing pages, like the one for RDS.  It may save you from unwanted worry and anxiety.


0 Comments

Leave a Reply

Avatar placeholder