Migration of .Net Monolithic Application to AWS

Migration of .Net Monolithic Application to AWS
February 21, 2020 Eshan Sarpotdar
Moveable Container Storage and CloudHedge

About the Client

The client – Moveable Container Storage (MCS) is your One-Stop shop for portable ground level Storage Container & Office Containers used throughout the USA for many purposes such as temporary storage and mobile offices. MCS has a nationwide network with more than 60 locations.


The Business Challenge

The client had an IIS based ASP .Net Monolithic Application hosted on Rackspace Windows 2008 R2 server. The Rackspace hosted application was overprovisioned, moreover, it had enterprise licenses that were very expensive to maintain. The actual requirement of the application’s availability was not in line with the configuration that was set up leading to very high billing. Besides this, the environment lacked certain features like – absence of auto-scale up/down, auto start/stop and efficient management of infrastructure. 

In addition, Microsoft had announced the end of support for its Windows 2008 R2 server in January 2020, it was necessary to migrate the Monolithic Application to Windows 2016 Server for business continuity.


How CloudHedge Helped?

After analyzing the challenges, it was clear that most of the issues are related to environment configuration. CloudHedge gathered all information and analyzed it to review the Rackspace setup which included application, database, current & historical data, web services, schedulers, etc. 

Enterprise Licenses for Windows 2008 R2 and SQL, unused heavy infrastructure (128GB RAM and 12Cores Processors), inflexible scaling and high availability were proving expensive and were the contributing factors for the decision to migrate the application to Amazon Web Services (AWS).

The next step was to backup and transfer the application database and historical data(files, images, logs) to AWS S3 bucket. CloudHedge then installed prerequisites like IIS, .Net framework, Visual Studio to run the application and securely migrated the ASP .Net Monolithic Application from Rackspace server to AWS EC2 instance within minutes. In addition, a separate database was created on AWS RDS instance from the backup taken on S3 in the previous step. 

To simplify the process and save additional resources, CloudHedge’s CloudLease feature was implemented. CloudLease is used to auto start/stop application instances with respect to working hours. 

CloudHedge automated auto start/stop functionality of the Database server which is an AWS RDS instance using CloudLease, AWS CloudWatch and Lambda function.

  • CloudLease will start/stop EC2 instance
  • CloudWatch will check the EC2 instance status and trigger Lambda function

This automation of server start/stop based on a predefined schedule significantly impacted the overall billing, thereby aligning it more closely to the actual usage.


Benefits

  • CloudHedge enabled easy and production-ready deployments. 
  • The solution was highly available and ready to scale based on the requirements.
  • 75% reduction in TCO by migrating to AWS and by providing CloudLease for start/stop of instances on cloud. 
  • Customer experience was elevated as the app performed seamlessly once on AWS.
  • After migrating to AWS, MCS achieved a fault-tolerant architecture.
  • Cloud automation helped in the overall reduction of the migration effort.