Category: Compute*

Amazon RDS for SQL Server and .NET support for AWS Elastic Beanstalk

We are continuing to simplify the Windows development experience on AWS, and today we are excited to announce Amazon RDS for SQL Server and .NET support for AWS Elastic Beanstalk. Amazon RDS takes care of the tedious aspects of deploying, scaling, patching, and backing up of a relational database, freeing you from time-consuming database administration tasks. AWS Elastic Beanstalk is an easy way to deploy and manage applications in the AWS cloud and handles the deployment details of capacity provisioning, load balancing, auto scaling, and application health monitoring.

Here are the details…

Amazon RDS for SQL Server
We launched the Amazon Relational Database Service (RDS) in late 2009 with support for MySQL. Since then, we have added a number of features, including Multi-AZ, read replicas, and VPC support. Last year, we added support for Oracle Database.

Today we are extending the manageability benefits of Amazon RDS to SQL Server customers. Amazon RDS now supports Express, Web, Standard, and Enterprise Editions of SQL Server 2008 R2. We plan to add support for SQL Server 2012 later this year.

If you are a new Amazon RDS customer, you can use Amazon RDS for SQL Server (Express Edition) under the free usage tier for a full year. After that, you can use the service under multiple licensing models, with prices starting as low as $0.035/hour. Refer to Amazon RDS for SQL Server pricing for more details.

.NET Support for AWS Elastic Beanstalk
Earlier this year, we added support for PHP applications to Elastic Beanstalk alongside the existing support for Java applications.

Today, we are extending Elastic Beanstalk to our Windows developers who are building .NET applications. Elastic Beanstalk leverages the Windows Server 2008 R2 AMI and IIS 7.5 to run .NET applications. You can run existing applications on AWS with minimal changes. There is no additional charge for Elastic Beanstalkyou pay only for the AWS resources needed to store and run your applications. And if you are eligible for the AWS free usage tier, you can deploy and run your application on Elastic Beanstalk for free.

AWS Toolkit for Visual Studio Enhancements
We are also updating the AWS Toolkit for Visual Studio so you can deploy your existing web application projects to AWS Elastic Beanstalk. You can also use the AWS Toolkit for Visual Studio to create Amazon RDS DB Instances and connect to them directly, so you can focus on building your applications without leaving your development environment.

Lets look at how it all works. For a detailed step-by-step walkthrough, visit the AWS Elastic Beanstalk Developer Guide.

Deploy Your Application to AWS Elastic Beanstalk
To get started, simply install the AWS Toolkit for Visual Studio and make sure you have signed up for an AWS account. You can deploy any Visual Studio Web project to AWS Elastic Beanstalk, including ASP.NET MVC projects and ASP.NET Web Forms. As an example, I will use the NerdDinner MVC sample application.

(click for full-sized image)

To deploy to AWS Elastic Beanstalk, right-click the project, and then click Publish to AWS. Provide the details and complete the wizard. This will launch a new Elastic Beanstalk environment and create the AWS resources to run your application. Thats it; NerdDinner is now running on Elastic Beanstalk.

Create and Connect to an Amazon RDS Database Instance
By default, NerdDinner connects to a local SQL Server Express database, so well need to make a few changes to connect it to an Amazon RDS for SQL Server instance. Lets start by creating a new Amazon RDS for SQL Server instance using the AWS Explorer view inside Visual Studio.

(click for full-sized image)

We will also need to create the schema that NerdDinner expects. To do so, simply use the Publish to Provider wizard in Visual Studio to export the schema and data to a SQL script. You can then run the SQL script against the RDS for SQL Server database to recreate the schema and data.

(click for full-sized image)

Update Your Running Application
Now that the Amazon RDS for SQL Server database is set up, lets modify the applications connection string to use it. To do so, you simply modify the ConnectionString.config file in your NerdDinner project and provide the connection details of your RDS instance.

(click for full-sized image)

Finally, you will republish these changes to AWS Elastic Beanstalk. Using incremental deployments, the AWS Toolkit for Visual Studio will only upload the modified file and RDS-backed NerdDinner becomes available a few seconds later.

(click for full-sized image)

I hope that you enjoy these new AWS features!

— Jeff (with lots of help from Saad Ladki of the Elastic Beanstalk team);

Updated Microsoft SQL Server Offerings

As you might know, you can use official Windows AMIs (Amazon Machine Images) to launch Amazon EC2 instances with Microsoft SQL Server, inside or outside a VPC (Virtual Private Cloud).

Many customers are taking advantage of this possibility to run different types of workloads on the AWS Cloud. After listening to customer feedback (as we always like to do) and feature requests, today we’re happy to announce some updates to our Microsoft SQL Server offerings. Here they are.

  1. Support for Additional Instance Types
    You can now launch Microsoft SQL Server on m1.small (1 ECU, 1.7 GB RAM) and m1.medium (2 ECU, 3.75 GB RAM) instance types. Since we have several instance types, you might also want to take a look at the details.
  2. Support for Microsoft SQL Server Web Edition
    For customers who run web-facing workloads with Microsoft SQL Server software, we are introducing support for Microsoft SQL Server Web Edition, which brings together affordability, scalability, and manageability in a single offering. SQL Server Web will be supported across all Amazon EC2 instance types, all AWS regions, and On-Demand and Reserved Instance offerings.
  3. Support for Microsoft SQL Server 2012
    Last, but definitively not least, we now support Microsoft SQL Server 2012 on Amazon EC2.
    Customers now have immediate access to Amazon published (official) AMIs for:

    SQL Server 2012 Express (AMI catalog entry)
    SQL Server 2012 Web Edition (AMI catalog entry)
    SQL Server 2012 Standard Edition (AMI catalog entry)

    You can use Microsoft’s SQL Server Comparison Chart to learn more about the features available to you in each edition.

You can locate the new SQL Server 2012 AMIs by searching for the string “SQL_2012” (don’t forget the underscore) in the AMI list within the AWS Management Console:

Let us know how you plan to take advantage of these new features!

Simone (@simon)

Launch Cluster Compute instances inside the Virtual Private Cloud

The AWS team has been at Bio-IT World in Boston this week, hearing from a range of scientists, academics and industry folks about how they are using the cloud to store, process and collaborate around the large volumes of data arriving from sources such as the 1000 Genomes Project. Customers have found that AWS is a good fit for their scientific computing needs, with available storage, compute and database services providing the building blocks for many of the fantastic tools powering modern research.

We launched the second generation of our high performance computing instance type, cc2.8xlarge, in November 2011 to support these kinds of workflows. This instance type is designed to address the needs of customers who want to run tightly coupled supercomputing applications in the elastic environment of the AWS cloud. Not only are they deployed on a high speed, full-bisection bandwidth 10 gigabit ethernet but they sport the fire breathing Intel Xeon E5 processors.

Since launch, we’ve heard that customers from fields such as life sciences, oil and gas, manufacturing, business computing and even space exploration would like to run high performance workloads in their Amazon Virtual Private Cloud environments for improved network management and isolation. Amazon VPC lets you provision a private, isolated section of the AWS Cloud where you can launch AWS resources in a virtual network that you define. Today, we’re announcing that cc2.8xlarge cluster computing instances are available in Amazon VPC. We’re also removing the beta tag.

The CC2 instances make Intel Xeon E5 processors, with support for AVX extensions, available to customers on demand, at scale, and we’ll be expanding the cc2.8xlarge instances to other regions in the future.

Let us know how you’re using high performance instances in your pipeline.

~ Matt


AWS Elastic Beanstalk – Expanding to Japan

Saad from the Elastic Beanstalk team has some great news!

— Jeff;

Today we are expanding the availability of AWS Elastic Beanstalk to the Asia Pacific (Tokyo) region. Developers can now leverage the service in both the Asia Pacific (Tokyo) region and the US East (North Virginia) region.

To celebrate this new regional launch, I am going to highlight some of my favorite Elastic Beanstalk functionality and call out a few often-missed gems. If youre eager to just jump in, visit the Elastic Beanstalk Developer Guide.

Easy to Begin, Using the Interface That Fits Your Style
With a single click in the AWS Management Console, you can launch an Elastic Beanstalk environment, sit back, and let Elastic Beanstalk automatically handle provisioning, load balancing, auto scaling, and application health monitoring.

The AWS Toolkit for Eclipse provides deployment and management functionality for Java developers directly from the IDE. You can even start with a sample blogging application, the Travel Log, and customize it.

If you are working on your PHP application and prefer to use the command line, you can use the Git deployment and the command line interface.

You can also use one of the AWS SDK to programmatically update Elastic Beanstalk environments from your continuous build and deployment environment. Here is a list of the available region endpoints.

Impossible to Outgrow, Flexible, and Reliable
Elastic Beanstalk automatically scales your application up and down based on default Auto Scaling settings. You can easily adjust Auto Scaling settings based on your specific application’s needs.

With Elastic Beanstalk, you retain full control over the resources running your application and you can easily manage and adjust settings to meet your needs. Because Elastic Beanstalk leverages services like Amazon EC2 and Amazon S3, you can run your application on the same highly durable and highly available infrastructure.

Hidden Gems

Prepare for your launch When youre ready to launch your application, make sure that it is ready to handle production traffic and redundantly deployed across Availability Zones (AZ). Elastic Beanstalk makes the setup of a multiple AZ deployment as easy as changing a configuration setting.

No downtime deployment, no problem By allowing you to replicate environments and swap URL, Elastic Beanstalk provides an easy mechanism to reduce or eliminate downtime when deploying new application versions or configuration updates.

Lock it down with AWS Identity and Access Management (IAM) Elastic Beanstalk is integrated with IAM, allowing you to control the actions that each developer can make when youre developing, deploying, and testing across a team of developers.

No additional charge for Elastic Beanstalk You pay only for the AWS resources needed to store and run your applications.

To get started, visit the Elastic Beanstalk Developer Guide.

Saad Ladki, Product Manager for AWS Elastic Beanstalk

The AWS Marketplace – Find, Buy, Compare, and Launch Cloud Software

Using the new AWS Marketplace, you can easily find, compare, and start using an array of software systems and products. We’ve streamlined the discovery, deployment, and billing steps to make the entire process of finding and buying software quick, painless, and worthwhile for application consumers and producers.

Here’s what it looks like:

We are launching the AWS Marketplace with many categories of development and IT software. They are grouped into 3 categories:

  • Software Infrastructure – Application Development, Application Stacks, Application Servers, Databases & Caching, Network Infrastructure, Operating Systems, and Security.
  • Developer Tools – Issue & Bug Tracking, Monitoring, Source Control, and Testing.
  • Business Software – Business Intelligence, Collaboration, Content Management, CRM, eCommerce, High Performance Computing, Media, Project Management, and Storage & Backup.

The AWS Marketplace includes pay-as-you-go products that are available in Amazon Machine Image (AMI) form and hosted software with a variety of pricing models. When you launch an AMI, the product will run on your own private EC2 instance and the usage charges (monthly and/or hourly) will be itemized on your AWS Account Activity report. Hosted software is run by the seller and accessed through a web browser.

The Details
Each product in the marketplace is described by a detail page. The page contains the information you’ll need to make an informed decision including an overview, a rating, versioning data, details on the support model for the product, a link to the EULA (End User License Agreement), and pricing for each AWS Region.

For this example, I will focus on the Zend Server. I can find it by browsing or by searching:

I can then choose from among a list of matching products:

I can read all about the product, and I can check on the pricing. I’ll pay for the software and for the AWS resources separately:

The software pricing can vary by EC2 instance type:

1-Click Launch
When I am ready to go I click the Continue button. I then have two launch options: 1-click and EC2 Console:

The 1-click launch process starts with sensible default values (as recommended by the software provider) that I can customize as desired by expanding the section of interest:

As you can see from the screen shot above, the Marketplace can use an existing EC2 security group or it can create a new one that’s custom tailored to the application’s requirements. Once everything is as I like it, I need only click on the Accept Terms and Launch button:

I can visit the Your Software section of the AWS Marketplace to see all of my subscriptions and all of the EC2 instances that they are running on:

The Access Software link routes directly to the admin page for the Zend Server. After accepting the license agreement and entering a password, I can proceed to the Zend Server console:

EC2 Console Launch
I can also choose to launch the Zend Server AMI through the EC2 console. You can do this if you want to launch multiple instances at the same time, exercise additional control over the security groups, launch the software within a VPC or on Spot Instances, or perform other types of customization:

The AWS Marketplace distributes and then tracks AMIs for each product across Regions. These AMIs are versioned and the versions are tracked; you have the ability to select the version of your choice when launching a product.

Selling on the AWS Marketplace
If you are an ISV (Independent Software Vendor) and you want to list your products in the AWS Marketplace, start here! Check out our listing guidelines and best practices guides, and then get in touch with us via the email address on that page. Products that fit within one of the existing categories will be given the highest priority. As I noted earlier, we’ll add additional categories over time.

— Jeff;

Microsoft SharePoint Server on AWS Reference Architecture White Paper

We have just published the Microsoft SharePoint Server on AWS Reference Architecture White Paper.

This white paper discusses general concepts regarding how to use SharePoint services on AWS and provides detailed technical guidance on how to configure, deploy, and run a SharePoint Server farm on AWS. It illustrates reference architecture for common SharePoint Server deployment scenarios and discusses their network, security, and deployment configurations so you can run SharePoint Server workloads in the cloud with confidence.This white paper is targeted to IT infrastructure decision-makers and administrators. After reading it, you should have a good idea on how to set up and deploy the components of a typical SharePoint Server farm on AWS.

Here’s what you will find inside:

  • SharePoint Server Farm Reference Architecture
  • Common SharePoint Server Deployment Scenarios
    • Intranet SharePoint Server Farm
    • Internet Website or Service Based on SharePoint Server
  • Implementing SharePoint Server Architecture Scenarios in AWS
    • Network Setup: 
      • Amazon VPC setups for Intranet and Public Website Scenarios
      • AD DS Setup and DNS Configuration
    • Server Setup and Configuration
      • Mapping SharePoint Server Roles and Servers to Amazon EC2 AMIs and Instance Types
      • SharePoint and SQL Server Configurations
    • Security
      • Security Groups
      • Network ACLs
      • Windows Instance Security
      • Administrator Access
      • Data Privacy
    • Deployment
    • Monitoring and Management
    • Backup and Recovery


— Jeff;


New Amazon EC2 Fresh Servers

Let’s face it. Sometimes you just need a local server. Perhaps your office is too cold, or you have the urge to pull the cover off and reseat the memory. Or, you might have some data on floppy disks that you simply cannot live without.

Because we will leave no stone unturned in our efforts to bring on-demand computing to the masses, I would like to tell you about today‘s release, the Amazon Fresh Server.

Starting today, if you live within 45 North or South of the Equator, we can deliver a fresh EC2 server to you in 15 minutes or less. This is a genuine, physical server. We’ve launched (literally) some brand new technology in order to make this a reality. Read on to learn a lot more.

There are two delivery modes: terrestrial and atmospheric.

Terrestrial Delivery
If you live in a densely populated urban area, a uniformed delivery person will have your new server on your doorstep in a matter of minutes. As I write this, trucks loaded with servers are circling the 100 largest cities in the country. Here’s one of our delivery people in action:

Actual delivery person delivering actual server.

Atmospheric Delivery
The Atmospheric Delivery model is a lot more interesting. In conjunction with our friends at NASA JPL, we’ve launched a fleet of satellites in to low Earth orbit. Each satellite is stocked with a considerable number of Cluster Compute Eight Extra Large (cc2.8xlarge) servers, individually packaged in our proprietary re-entry shields.

Genuine fake button thanks, jQuery)

When you order a server (currently limited to one per customer) using the new Deliver Instance button, we’ll select a satellite and place your order in the appropriate delivery queue.  After a set of careful (checked, double-checked, and then re-checked) ballistic calculations, the satellite will release your order on a trajectory that will deliver it to the latitude and longitude of your choice, accurate to a 1 meter radius, within 10 minutes. You need do nothing more than fill out this dialog:


Actual fake picture of genuine AWS Management Console.

So far so good, right? Read on, it gets even better!

As you probably know, a satellite in LEO is traveling at approximately 7.8 km/second. The amount of heat generated on re-entry to the atmosphere is considerable since the payload must lose all of that speed within a few minutes. We capture that “delta-v” energy and use it to power the server for up to two weeks. Because the server includes a built-in Wi-Fi card and a preconfigured Elastic IP Address, you don’t have to connect any cables. You can simply leave it where it lands and start using it. In fact, under optimal conditions, you can start using it while it is still decelerating. You’ll be up and running in minutes.

Actual conceptual diagram by genuine artist.

As part of the pre-release beta, my son Stephen ordered a server and took delivery in the courtyard of his graduate student housing complex. It was up and running when it landed and we were happily coding away in no time flat:

Actual developers using a genuine Amazon Fresh Server.

When you are done with your server, you can initiate the return process via a single click in the AWS Management Console.

This is a pilot program, and we’ll be taking orders starting today. Get your server today!

— Jeff;

New Whitepaper: The Total Cost of (Non) Ownership of a NoSQL Database Service

We have received tremendous positive feedback from customers and partners since we launched Amazon DynamoDB two months ago. Amazon DynamoDB enables customers to offload the administrative burden of operating and scaling a highly available distributed database cluster while only paying for the actual system resources they consume. We also received a ton of great feedback about how simple it is get started and how easy it is to scale the database. Since Amazon DynamoDB introduced the new concept of a provisioned throughput pricing model, we also received several questions around how to think about its Total Cost of Ownership (TCO). 

We are very excited to publish our new TCO whitepaper: The Total Cost of (Non) Ownership of a NoSQL Database service. Download PDF


In this whitepaper, we attempt to explain the TCO of Amazon DynamoDB and highlight the different cost factors involved in deploying and managing a scalable NoSQL database whether on-premise or in the cloud.

When calculating TCO, we recommend that you start with a specific use case or application that you plan to deploy in the cloud instead of relying on generic comparison analysis. Hence, in this whitepaper, we walk through an example scenario (a social game to support the launch of a new movie) and highlight the total costs for three different deployment options over three different usage patterns. The graph below summarizes the results of our white paper.

When determining the TCO of a cloud-based service, its easy to overlook several cost factors such as administration and redundancy costs, which can lead to inaccurate and incomplete comparisons. Additionally, in the case of a NoSQL database solution, people often forget to include database administration costs. Hence, in the paper, we are providing a detailed breakdown of costs for the lifecycle of an application.

Its challenging to do the right apples-to-apples comparison between on-premises software and a Cloud service, especially since some costs are up-front capital expenditure while others are on-going operating expenditure. In order to simplify the calculations and cost comparison between options, we have amortized the costs over a 3 year period for the on-premises option. We have clearly stated our assumptions in each option so you can adjust them based on your own research or quotes from your hardware vendors and co-location providers. 

Amazon DynamoDB frees you from the headaches of provisioning hardware and systems software, setting up and configuring a distributed database cluster, and managing ongoing cluster operations. There are no hardware administration costs since there is no hardware to maintain. There are no NoSQL database administration costs such as patching the OS and managing and scaling the NoSQL cluster, since there is no software to maintain. This is an important point because NoSQL database admins are not that easy to find these days.

We hope that the whitepaper provides you with the necessary TCO information you need so you can make the right decision when it comes to deploying and running a NoSQL database solution. If you have any questions, comments, suggestions and/or feedback, feel free to reach out to us.

— Jinesh

Updated Amazon Linux AMI (2012.03) Now Available

We’ve just released version 2012.03 of the Amazon Linux AMI. Coming six months after our previous major release, this version of the AMI is loaded with new features that EC2 users will enjoy.

One of our goals for this release has been to make available multiple major versions of important packages. This allows code that relies on different versions of core languages, databases, or applications to migrate from older AMIs with minimal changes needed. For example:

Tomcat 7: Support is included for both Tomcat 6 and Tomcat 7. Both are included in the package repository, and can be installed via yum install tomcat6 or yum install tomcat7.

MySQL 5.5: New Amazon Linux AMI 2012.03 users who yum install mysql (or yum install mysql55) will get MySQL 5.5 by default, unless they explicitly choose to install the older MySQL 5.1. Users upgrading via yum from Amazon Linux AMI 2011.09 instances with the older MySQL 5.1 installed will stay with MySQL 5.1, which is still available as mysql51 in the package repository.

PostgreSQL 9: Similar to MySQL, new Amazon Linux AMI 2012.03 users who yum install postgresql (or yum install postgresql9) will get PostgreSQL 9 by default, unless they explicitly choose to install the older PostgreSQL 8. Users upgrading via yum from Amazon Linux AMI 2011.09 instances with the older PostgreSQL 8.4.x installed will stay with PostgreSQL 8, which is still available as postgresql8 in the package repository.

GCC 4.6: While GCC 4.4.6 remains the default, we have included GCC 4.6.2, specifically for use on EC2 instances that support Intel’s new AVX instruction set. Run yum install gcc46 in order to get the packages. GCC 4.6 enables the Amazon Linux AMI to take advantage of the AVX support available on the Cluster Compute Eight Extra Large (cc2.8xlarge) instance type.

Python 2.7: While Python 2.6 is still the default, you can yum install python27 to install version 2.7. We are constantly working on getting more modules built and available for the new Python version, and will be pushing those modules into the repository as they become available.

Ruby 1.9.3: While Ruby 1.8.7 is still the default, you can yum install ruby19 to run version 1.9.3 of Ruby.

We have also upgraded the kernel to version 3.2, updated all the AWS command line tools, and refreshed many of the packages that are available in the Amazon Linux AMI to the latest upstream versions.

The Amazon Linux AMI 2012.03 is available for launch in all regions. The Amazon Linux AMI package repositories have also been updated in all regions. Users of 2011.09 or 2011.02 versions of the Amazon Linux AMI can easily upgrade using yum. Users who prefer to lock on the 2011.09 package set even after the release of 2012.03 should consult the instructions on the EC2 forum.

For more information, see the Amazon Linux 2012.03 release notes.

— Jeff;

PS – If you’d like to help make the Amazon Linux AMI even better, please take a look at our open positions:


CloudSpokes Coding Challenge – Build an EC2 Spot Instance Tool

There’s a new coding challenge on CloudSpokes with a top prize of $2000 and other prizes ranging from $1000 to $100.

The goal: Create tools to help more people to make use of Amazon EC2 Spot Instances!

This is an opportunity to be imaginative and creative, and to show us what you can do. You could focus on the  business side and work on price visualization, better ways to determine the optimal prices for bids, or a strategy-based system that uses relative workload priorities to get the most work done at the lowest price.

Or, you could focus on the technical side. You can create tools or libraries to handle long-running processes that might be interrupted, a checkpointing framework, some setup tools, or create an interesting integration with Elastic MapReduce.

The challenge ends in less than 13 days, so you’d best  be getting started now! I look forward to seeing what you come up with.

— Jeff;