Category: Amazon RDS

AWS Management Console Now Supports the Relational Database Service

by Jeff Barr | on | in Amazon RDS | | Comments

The AWS Management Console now supports the Amazon Relational Database Service:

You can now create, manage, and scale DB Instances with point and click ease. Let’s start by launching an instance using the Launch DB Instance Wizard. Click on the Launch DB Instance button:

Fill in the first page of the wizard. Enter the desired storage space, choose an instance class, and enter a name for the instance, and a name and password for the administrator account, then decide if you’d like to create a Multi-AZ Deployment:

Now fill in the second page of the wizard. If you’d like to create an empty MySQL database to get started, enter its name on the second page of the wizard. You can generally use the default value of the Database Port, but change it if you need to. Select an Availability Zone (note that some of the DB Instance Classes are not available in every zone), and choose the desired DB Security Groups:

The third page of the wizard deals with backups and maintenance. Set the Retention Period and the Backup Window for your automatic backups, and set the Maintenance Window:

The final step is to confirm all of your selections. Make sure that they are in accord with your needs and then click the Launch DB Instance button:

RDS will proceed to create your DB Instance. The status of your instance will change from creating to backing up and finally to available, all within the space of a few minutes. While it is launching you can explore the other new features, all of which are available from the navigation area:

Once the status of your DB Instance transitions to available, click on the DB Instance and see status information in the lower pane:

Select the Public DNS Name (“” in this case) and update your application’s database access code to use it.

You can create a new DB Security Group or you can edit an existing one. You can grant access to a particular CIDR address or address range, or you can grant access to all of the EC2 instances that are in a particular EC2 Security Group:

You can use the DB Events tab to review all of the significant events for your DB Instance:

You can create a snapshot of your DB Instance with a single right-click:

You can also view the Amazon CloudWatch metrics for each of your instances:

I’ve covered the most important features in this post, but there’s more to explore, so check out the AWS Management Console today.

— Jeff;

enStratus Adds Support for Amazon SNS and Amazon RDS

by Jeff Barr | on | in Amazon EC2, Amazon RDS, Amazon Simple Notification Service | | Comments

My friends over at Minneapolis-based enStratus Networks emailed me yesterday to give me a heads-up on their newest release of their Cloud Management Solution.

They have had full support for Amazon EC2 instances, S3 storage, Elastic IP Addresses, CloudWatch, Elastic Block Storage, Auto Scaling, Simple Notification Service, and CloudFront for a while.

Today’s release adds support for the Amazon Relational Database Service (RDS) and the Amazon Simple Notification Service (SNS). This support is available in all four of the AWS Regions.

You can see your existing SNS topics on this page:

And you can create a new topic by filling out this form:

Per the dialog above, you can associate a description and a billing code with the SNS topic, and you can also label the topic (and the other components of your application) to identify it as part of a particular application.

Their system also includes a number of other enterprise-grade features including key management, multiple user roles, automated failure recovery, reporting, and cluster-level management of EC2 instances. Learn more here or request a demo.

— Jeff;

Amazon RDS – Multi-AZ Deployments For Enhanced Availability & Reliability

by Jeff Barr | on | in Amazon RDS | | Comments

Amazon RDS simplifies many of the common tasks associated with the deployment, operation, and scaling of a relational database. You don’t have to worry about acquiring and installing hardware, loading an operating system, installing and configuring MySQL, or managing backups. In addition, scaling the processing power or storage space available to your database is as simple as an API call.

When we rolled out Amazon RDS last October, we also announced plans to have a “High Availability” option in the future. That option is now ready for you to use, and it’s called “Multi-AZ Deployments.” AZ is short for “Availability Zone”; each of the four AWS Regions is comprised or two or more such zones, each with independent power, cooling, and network connectivity.

The availability and reliability characteristics of Multi-AZ deployments make them well suited for critical production environments.  I’d like to tell you about this new feature and how it works; here’s a diagram to get you started:

It is really easy to benefit from the enhanced availability and data durability provided by a DB Instance deployment that spans multiple Availability Zones. All you need to do is supply one additional parameter to the CreateDBInstance function and Amazon RDS will take care of the rest.

To be more specific, when you launch a DB Instance with the Multi-AZ parameter set to true, Amazon RDS will create a primary in one Availability Zone, and a hot standby in a second Availability Zone in the same Region. Data written to the primary will be synchronously replicated to the standby. If the primary fails, the standby becomes the primary and a new standby is created automatically. Amazon RDS automatically detects failure and takes care of all of this for you. The entire failover process takes approximately about three minutes. In addition, existing standard DB Instance deployments can be converted to Multi-AZ deployments by changing the Multi-AZ parameter to true with the ModifyDBInstance function (a hot standby will be created for your current primary).

When automatic failover occurs, your application can remain unaware of what’s happening behind the scenes. The CNAME record for your DB instance will be altered to point to the newly promoted standby. Your MySQL client library should be able to close and reopen the connection in the event of a failover. If your application needs to know that a failover has occurred, you can use the function to check for the appropriate event.

If you have set up an Amazon RDS DB Instance as a Multi-AZ deployment, automated backups are taken from the standby to enhance DB Instance availability (by avoiding I/O suspension on the primary). The standby also plays an important role in patching and DB Instance scaling. In order to minimize downtime during planned maintenance, patches are installed on the standby and then an automatic failover makes the standby into the new primary. Similarly, scaling to a larger DB Instance type takes place on the standby, followed by an automatic failover.

Multi-AZ deployments also offer enhanced data protection and reliability in unlikely failure modes. For example, in the unlikely event a storage volume backing a Multi-AZ DB Instance fails, you are not required to initiate a Point-in-Time restore to the LatestRestorableTime (typically five minutes prior the failure). Instead, Amazon RDS will simply detect that failure and promote the hot standby where all database updates are intact.

Putting it all together, this new feature means that your AWS-powered application can remain running in the face of a disk, DB Instance, or Availability Zone failure. Once again, you can focus on your application and let AWS handle the “dirty work” for you.

While you cannot use the synchronous standby in a Multi-AZ deployment to serve read traffic, we are also working on a Read Replica feature.  This feature will make it easier to take advantage of MySQLs built-in asynchronous replication functionality if you need to scale your read traffic beyond the capacity of a single DB Instance. You’ll be able to provision multiple “Read Replicas” for a given source DB Instance.

— Jeff;

Amazon RDS Now Available on the West Coast

by Jeff Barr | on | in Amazon RDS | | Comments

The Amazon Relational Database Service (RDS) is now available in our US West (Northern California) Region. With this release, Amazon RDS is now available in the US East (Northern Virginia), US West (Northern California), EU (Ireland), and Asia Pacific (Singapore) Regions so you can deploy your DB Instance(s) in whichever Region minimizes your latency or cost.

We’ve got some other goodies in the works for RDS, so stay tuned to the blog.

— Jeff;

Now Open: AWS Region in Asia Pacific

by Jeff Barr | on | in Amazon CloudFront, Amazon CloudWatch, Amazon DevPay, Amazon EC2, Amazon Elastic Load Balancer, Amazon RDS, Amazon SDB, Amazon Simple Notification Service, Amazon SQS, APAC, Asia Pacific | | Comments

Businesses and developers in the Asia Pacific part of the world can now obtain their processing, storage, and other services on an economical, pay-as-you-go basis from resources located nearby.

We’ve just opened up an AWS Region in Singapore, with two Availability Zones. The new region supports Amazon EC2 (including Elastic IP Addresses, Amazon CloudWatch, Elastic Block Storage, Elastic Load Balancing, and Auto Scaling), Amazon S3, Amazon SimpleDB, the Amazon Relational Database Service, the Amazon Simple Queue Service, the Amazon Simple Notification Service, Amazon DevPay, and Amazon CloudFront. The page for each service includes full pricing information for the Singapore Region.

Existing toolkit and tools can make use of the new Region with a simple change of endpoints. The documentation for each service lists all of the endpoints for each service. 

I know that RightScale will be supporting the new Region and will be migrating their templates and images in the next  couple of weeks. They already have their infrastructure up and running in the Region to provide fast communication between managed instances and their platform. Read more about how they are accelerating cloud adoption with support for the new Region, Windows, and simplified image creation.

George Reese of enStratus wrote to let me know that all 46 of their AMIs are already up and running in the new Region. This includes all of the AWS services, user management, financial controls, infrastructure automation with automatic application deployment, multiple auto-scaling options, automatic recovery, encryption, and key management.

Attention developers: I’ll create a list of updated tools and toolkits soon! Please send info to

A number of customers are already planning to migrate their applications to the new Region. Here’s a sampling:


Kim Eng, one of Asia’s leading securities brokers, is using AWS to host a trading application for the iPhone that will be launched in the near future. They chose AWS and the Singapore Region in order to minimize latency and to make sure that they can provide quick and efficient service even if there’s a sudden spike in usage.

iTwin, creators of the iTwin remote device for plug and play access to remote files, recently started using EC2. Lux Anantharaman, Founder and CEO, told us that “After evaluating multiple cloud service providers, we realized AWS is the only one which is globally available and which satisfies our deployment needs. AWS is extremely simple to configure and use, provides a comprehensive suite of web services which are unmatched by any other provider, and the billing system is convenient. Last but not least, our engineers love AWS.”


Altium provides software for electronic design. They have moved their content delivery over to Amazon S3 and CloudFront, reducing their bandwidth and storage costs to just 25% of that charged by their former provider. As their CIO, Alan Perkins, said, “At times we have thousands of clients asking for 1.5GB files at the same time and AWS has delivered without a glitch. ” They have also moved a lot of their research and development work to AWS.

Also in Australia, runs their crowdsourced graphic design site on AWS. They use a cluster of application servers on EC2, backed up by database servers and proxy servers that also run on EC2. They count on Amazon S3 to store massive amounts of data — a new design is uploaded every seven seconds. Lachlan Donald, CTO of, told us that “AWS has virtually eliminated our infrastructure concerns and allowed us to focus on our core business.”


Rediff provides online news, information, communication, entertainment, and shopping services. They’ve been using AWS for highly demanding data processing such as data mining and analytics. Sumit Rajwade, Rediff’s Vice President of Technology, told us that “The flexibility and scalability of the AWS platform is unparalleled and we are pleased that AWS is opening up a region in Asia Pacific.”

Indiagames decided to use AWS to launch and run their popular T20Fever game on Facebook. They turned to AWS as an alternative to building and scaling their own infrastructure. As a result, they were able to keep their staffers focused on development instead of on managing physical hardware. Their application makes use of EC2, S3,RDS, and CloudFront. According to Vishal Gondal (CEO), “By leveraging Amazon EC2, Amazon S3, Amazon Relational Database Service (RDS), and Amazon Cloudfront, we’ve been able to handle thousands of gamers concurrently without having to spend a rupee on physical infrastructure.”

— Jeff;

PS – We’ve been ramping up our marketing and business development activities in Singapore and we’re hiring a Marketing Manager, a Regional Account Manager for the International Market, and a Regional Account Manager for the Indian Market

We also need to hire some Solutions Architects, Technical Sales Representatives, a Data Center Manager, and some Data Center Technicians in Singapore. If you are interested in any of these positions, please send your resume or CV to .

Amazon Relational Database Service Now Available in Europe

by Jeff Barr | on | in Amazon RDS | | Comments

We launched the Relational Database Service in the US less than six months ago. Since then, developers have been putting RDS through its paces.They’ve quickly become accustomed to the ease with which they can create a new DB Instance, put it to use, manage backup and recovery, and to scale data storage and processing power as needed. In fact, RDS has already become one of the fastest-growing services in the history of AWS.

You can read my original blog post to see how to use RDS from the command line.

We’re now making RDS available in our EU – Ireland region. Developers running EC2 instances in the region can now benefit from local, low-latency access to RDS, and they can also be confident that their data will be stored within the EU. Contributors to the RDS forum have been asking (and asking (and asking)) and we are happy to oblige. We think that Mr. Pomi will be happy too!

— Jeff;

Save Money With Combined AWS Bandwidth Pricing

by Jeff Barr | on | in Amazon EC2, Amazon RDS, Amazon S3, Amazon SDB, Amazon SQS | | Comments

I never tire of telling our customers that they’ll be saving money by using AWS!

Effective April 1, 2010, we’ll add up the bandwidth you use for Amazon Simple Storage Service (Amazon S3), Amazon Elastic Compute Cloud (Amazon EC2), Amazon SimpleDB, Amazon Relational Database Service (Amazon RDS), and the Amazon Simple Queue Service (SQS) on  a Region-by-Region basis and use that value to set your bandwidth tier for each Region. Depending on your bandwidth usage, this could mean your overall bandwidth charge will be reduced, since you will be able to reach higher volume tiers more quickly if you use multiple services.

We’re also going to make the first gigabyte of outbound data transfer each month free.

You’ll see both of these benefits in a new entry on your AWS Account Activity page. We’ll combine the bandwidth used by the services listed above.

Sound good?

— Jeff;

Amazon RDS Tech Tips

by Jeff Barr | on | in Amazon RDS | | Comments

The Amazon RDS team will be publishing a series of tech tips this year. Tech Tip I covers the creation and use of on-demand test databases and Tech Tip II describes best practices for the use of RDS security groups.

You can also follow the RDS team on Twitter as @amazonrds .

If you have an idea for an RDS Tech Tip, please feel free to leave a comment on this post.

— Jeff;

The New AWS Simple Monthly Calculator

by Jeff Barr | on | in Amazon CloudFront, Amazon CloudWatch, Amazon EC2, Amazon Elastic Load Balancer, Amazon Elastic MapReduce, Amazon RDS, Amazon S3, Amazon SDB, Amazon SQS, Announcements | | Comments

Our customers needed better ways to model their applications and estimate their costs. The flexible nature of on-demand scalable computing allows you pick and choose the services you like and only pay for those. Hence to give our customers an opportunity to estimate their costs, we have redesigned our current AWS Simple Monthly Calculator

The link to the new calculator is 

AWS Simple Monthly Calculator

This new calculator incorporates a wide array of pricing calculations across all our services in all our regions. It also shows breakdown of features for each service in each region. Most of our customers use multiple AWS services in multiple regions. Hence the calculator has a mechanism to select a service in a particular region and add it to the bill.

Users can select a region and simply input the usage values of each service in that region and then click on the “Add to Bill” button. This will add the service to the bill. Once the service is added to the bill, the user can modify/update the input fields, and the calculator will automatically recalculate. Users can remove the service from the bill by simply clicking on the red cross button Delete in the bill. Each input field represents to be a value per month. For example, Amazon S3 Data Transfer out is 40 GB in a Month and 5 Extra Large Linux Instances running for 10 hours in a month. For EC2/RDS/EMR, Users can click on green plus button Add and add similar type of instances (for eg., Web Servers, App Servers, MySQL DB Servers) in their topology.

The calculator also shows common customer samples and their usage. Users can click on “Disaster Recovery and Backup” sample or “Web Application” sample and see usages of each service. We will continue to add new real-world customer samples in future. If you would like us to add your sample usage, please let us know.

Last month, we announced new EC2 pricing, new Instance Types and a new AWS service (Amazon RDS). This calculator incorporates all of these new features and services and will continue to evolve as we add new features, new services and new regions .

The calculator is currently in beta and provides an estimate of the monthly bill. The goal is to help our customers and prospects estimate their monthly bill more efficiently. In the future, we would also like to give you recommendations on how you can save more by switching to Reserved Instances from on-demand instances or using AWS Import/Export service instead of standard S3 data transfer. Stay Tuned.

We would love to hear your feedback. Please let us know whether this new version of the calculator is helpful in estimating your AWS costs. You can send your feature requests, comments, suggestions, appreciations, confusions, frustrations to evangelists at amazon dot com. 

— Jinesh

Introducing Amazon RDS – The Amazon Relational Database Service

by Jeff Barr | on | in Amazon RDS, Announcements | | Comments

We are always looking for ways to make it faster, simpler, and more fun to develop applications of all types. Every hour that you don’t spend fiddling with hardware, tracing cables, installing operating systems or managing databases is an hour that you can spend on the unique and value-added aspects of your application.

Today I’d like to tell you about our newest service, the Amazon Relational Database Service, or Amazon RDS for short. Now in beta, RDS makes it easier for you to set up, operate, and scale a relational database in the cloud. You get direct database access without worrying about infrastructure provisioning, software maintenance, or common database management tasks.

Using the RDS APIs or the command-line tools, you can access the full capabilities of a complete, self-contained MySQL 5.1 database instance in a matter of minutes. You can scale the processing power and storage space as needed with a single API call and you can initiate fully consistent database snapshots at any time.

Much of what you already know about building applications with MySQL will still apply. Your code and your queries will work as expected; you can even import a dump file produced by mysqldump to get started.

Amazon RDS is really easy to use. I’ll illustrate the most important steps using the command-line tools, but keep in mind that you can also do everything shown here using the APIs.

The first step is to create a database instance. Here’s how to create a database named mydb with room for up to 20 GB of data:

$ rds-create-db-instance --db-instance-identifier mydb --allocated-storage 20 \
  --db-instance-class db.m1.large --engine mysql5.1 --master-username dbroot \
  --master-user-password dbpass

You can specify any one of five server instance classes:

  • db.m1.small (1.7 GB of RAM, $0.11 per hour).
  • db.m1.large (7.5 GB of RAM, $0.44 per hour)
  • db.m1.xlarge (15 GB of RAM, $0.88 per hour).
  • db.m2.2xlarge (34 GB of RAM, $1.55 per hour).
  • db.m2.4xlarge (68 GB of RAM, $3.10 per hour).

During the beta you can create up to twenty databases per AWS account, and each one can consume up to 1 TB of storage. You can specify an availability zone (which you should do if you plan to access it from an EC2 instance) or you can let RDS choose one for you.

You can check on the status of your new database at any time:

$ rds-describe-db-instances
DBINSTANCE mydb db.m1.large mysql5.1 20 dbroot    creating 1  us-east-1d 1
    SECGROUP default active
    PARAMGRP default.mysql5.1 in-sync

When the status changes from creating to available your database is ready for use and the command output will include the server name and connection string you use to access the database instance from the command line or your application:

$ rds-describe-db-instances
DBINSTANCE mydb 2009-10-15T22:47:48.037Z db.m1.large mysql5.1 20 dbroot available 3306 us-east-1d 1
    SECGROUP default active
    PARAMGRP default.mysql5.1 in-sync

The final step is to edit the database’s security group so that it allows inbound connections. You can enable connections from any (or all) of your EC2 security groups:

$ rds-authorize-db-security-group-ingress default --ec2-security-group-name default --ec2-security-group-owner-id 889135802129

You can also enable connections from a particular IP address or address range using CIDR notation:

$ rds-authorize-db-security-group-ingress default --cidr-ip

And that’s all it takes to create a fully functioning DB Instance of MySQL 5.1 in the cloud. There’s nothing to install, nothing to configure, and nothing to tune. The DB Instance will use the InnoDB storage engine.

If you need more storage space, you can expand your instance like this:

$ rds-modify-db-instance mydb --apply-immediately -s 50 

If you don’t use the –apply-immediately parameter, the expansion will be performed during your DB Instance’s maintenance window. The maintenance window opens once per week for four hours. During that time we will apply the latest MySQL patches (if necessary) and take care of any pending scaling operations. Your DB Instance will be unavailable only for the minimum amount of time required to make system changes on your behalf. You should set the maintenance window to a time that will result in the least possible inconvenience and down time for your users.

You can set up a two hour backup window and a retention period for automated backups, and you can also create a database snapshot at any time:

$ rds-create-db-snapshot mydb -s jeffbarr-backup-2009-10-15

You can create new Amazon RDS DB Instances from either type of backup.With the automated backup feature, you can restore to any point in time within your backup retention period, up to the last five minutes.

Each DB Instance exports a number of metrics to CloudWatch including CPU Utilization (percent), Free Storage Space (bytes), and Database Connections (count).

At this point in the post I’d usually talk about the uses for the service, but I think that’s pretty obvious! I should point out that RDS enables a lot of really enticing development and test scenarios. You can set up a separate database instance for each developer on a project without making a big investment in hardware.

Once you’ve deployed RDS for production use, you can easily scale up to larger instance sizes, add additional storage space (up to a total of 1 TB per RDS instance), and make backups with ease. You can easily snapshot a production database and then bring it back to the lab to dig in to a problem.

RDS usage is charged by the DB Instance hour. As noted above, there are five instance sizes and corresponding hourly rates. You’ll also pay 10 cents per GB per month for your provisioned storage and 10 cents for every million I/O requests. You get backup space to store 100% of your provisioned storage at no additional charge, with additional space priced at 15 cents per GB per month. The usual AWS charges for data transferred in and out of the cloud also apply.

We have a number of enhancements planned for the future. Here are some of the features planned for the coming months:

  • Reserved DB Instances so that you can pay a low one-time fee and then receive a substantial discount on your hourly usage charges.
  • A High Availability offering so that you can easily and cost-effectively provision synchronously replicated RDS instances in two different availability zones.

We believe that RDS will make a really nice complement to Amazon SimpleDB and that each of the services has a number of unique features and use cases. A number of our early adopters are planning to use both of the services in their AWS applications.

As always, we have plenty of documentation, libraries, and FAQs. I look forward to seeing how you put RDS to use in your own applications.

— Jeff;

PS – You may also enjoy reading RightScale’s take on today’s releases.