The PaaS competition heats up with Amazon adding ASP.NET support to its AWS Elastic Beanstalk environment and MS SQL Server to the Amazon RDS offerings. This is a significant announcement from Amazon as it draws the battle lines with Microsoft which is aggressively positioning Windows Azure as the .NET Cloud offering to the developer community.
Amazon Relational Database Service (RDS) was launched in 2009 with the initial support for MySQL. Amazon has been regularly investing in RDS by bringing the high availability features like Multi-AZ deployment and performance enhancements like Read-Replicas. Last year, Oracle got added to the supported databases of RDS and recently the Multi-AZ feature was added to it. Right from the day of the announcement, it was clear that AWS was moving towards supporting the popular databases on RDS. Until now, SQL Azure has been the only database choice for Microsoft customers looking for a managed DB on the Cloud. With MS SQL Server support on RDS, Amazon will go after the Microsoft customer base luring them to move to its Cloud. The smart move from Amazon comes in the form of the free tier that includes the one-year free access to the MS SQL Server Express edition. SQL Azure’s free trial is limited to only 90s days after which customers will start getting billed. But SQL Azure is ahead of the game through its capabilities like Data Sync, Reporting and Federation. Microsoft has invested in hybrid capabilities to enable easy integration of on-premise MS SQL deployments with SQL Azure. Microsoft’s hybrid strategy is far more powerful and easier than AWS whose hybrid strategy primarily revolves around the complex VPC architecture. While competing with each other in the Public Cloud domain, Microsoft and Amazon collaborated in enabling the customers to extend their existing MS SQL licenses to RDS. Microsoft’s License Mobility program allows customers who already own SQL Server licenses to run SQL Server deployments on Amazon RDS. This benefit is available to Microsoft Volume Licensing (VL) customers with SQL Server licenses covered by active Microsoft Software Assurance (SA) contracts.
The next big thing comes in the form of ASP.NET support on AWS Elastic Beanstalk. Amazon has all the essential building blocks to expose a powerful PaaS layer to the developers who do not want to deal with the complexity of the Cloud. Elastic Beanstalk was started with Java support and recently PHP was added to the stack. The AWS SDK for .NET has been rapidly evolving to support recent additions like DynamoDB and CloudFormation. Elastic Beanstalk supports IIS 7.5 and .NET 4.0 to run web applications built on the latest MS web development platform. The AWS Toolkit for Microsoft Visual Studio is very stable and makes it easy for the .NET developers to deploy applications on AWS. ASP.NET developers can now deploy web applications to AWS Elastic Beanstalk with single click. The toolkit integrates with RDS enabling developers to easily bind to the MS SQL DB instances hosted within RDS. I tried deploying a few ASP.NET web applications to AWS Elastic Beanstalk and found that the integration was extremely smooth and the deployment was fast. For scenarios involving the integration with legacy COM components and long running processes, developers can login to the underlying Amazon EC2 instances through the RDP to take full control of the environment. Thus AWS Elastic Beanstalk offers best of the both worlds of IaaS and PaaS.
With Cloud Foundry powered .NET PaaS offerings like Uhuru and Iron Foundry on one side and Amazon closing the gap with the .NET world on the other side, Microsoft will be under pressure in the coming days. The interesting fact is that Amazon is adding the Windows Azure features to AWS and Microsoft is trying to bring the AWS capabilities to Windows Azure. This phenomenon will ultimately benefit the customers by offering more choice. The game has just begun!
- Janakiram MSV, Chief Editor, CloudStory.in