INSIGHT

Seamless migration of Web Application to Azure helped minimize downtime and cost

here

Seamless migration of Web Application to Azure helped minimize downtime and cost

Client:
One of the leading internet services provider.

Business & technology challenges:
To offer more value-added services and assure high system availability to their global customers, client wanted to reconfigure and upgrade their IT landscape.
To achieve the above, having a scalable infrastructure, database, applications running securely was imperative.

Current landscape:

  • Applications were built using Angular and Spring boot framework.
  • The Angular based applications were hosted on an Apache Web Server instance.
  • Spring boot applications were hosted on a Tomcat server.
  • The system used a standard Microsoft SQL Server for storage.
  • The application relied on Microsoft Active Directory services for authentication.
  • Applications used a standard Microsoft SQL Server 2019 database for storing application data.
  • Application stored the images uploaded to or created from the application using network file storage.

Figure 1: On-premises Environment Architecture

Top challenges:

  • Moderate scalability and performance
  • Frequent maintenance and consequent downtimes
  • Security threats

 
MSRCosmos’ approach & solution:

What MSRCosmos Proposed And Implemented:

MSRCosmos team conducted a detailed study and understood the legacy system architecture and deployment setup. The study helped in abstracting the complexity of the existing system and in re-engineering the system architecture that is compatible with the cloud infrastructure.

Why Azure?

The team aimed at transitioning their legacy system to Azure via PaaS platform. They wanted to revamp the system in order to offer a more advanced and secure platform for their customers. The other key reasons that strengthened the client’s decision to choose PaaS migration via Azure were to:

  • Reduce maintenance requirements
  • Maximize performance and being resilient
  • Minimize costs
  • Achieve zero downtime and zero data loss.
  • To be cost-effective and flexible

 
Web Application migration from on-premise to Azure App Services:

App Services:

Platform as a service (PaaS) is a complete development and deployment environment in the cloud with resources that enable you to deliver everything from simple cloud-based apps to sophisticated, cloud enabled enterprise applications.

Azure app service is a fully managed Webhosting service for building web apps, mobile backends, and RESTful APIs. From small websites to globally scaled web applications, we have the pricing and performance options that fit your needs.

Tools:

Azure App Service migration assistant tool is used to migrate the on-premise Web Application to Azure App Services.

Steps followed:

  • App Service Migration Assistant was installed
  • After selecting the local server (in this case, Tomcat) and application(s) to migrate – we provided the resource group name, destination site name, app service plan, and region.

Figure 2: Web App Migration using App Service Migration Assistant

Database migration from on-premise to Azure SQL:

Azure SQL Database is the intelligent, scalable, relational database service built for the cloud. It is evergreen and always up to date, with AI-powered and automated features that optimize performance and durability for you. Serverless compute Hyperscale storage options automatically scale resources on-demand, so one can focus on building new applications without worrying about storage size or resource management.

Tools: 

We used Azure Migrate Assessment and migration tools to discover the database(s), assess them, and migrate the on-premise database to Azure.

Steps followed:

  • Database Migration Assistant was installed.
  • Using the tool, in the Azure portal, Azure SQL Server was created.
  • For assessment, the on-premises SQL server name was entered, the authentication type was chosen, and selected the database to be migrated.
  • The assessment report was uploaded to Azure Portal.

Figure 3: Database Migration using DMA

Based on the above migration approach, the team moved the on-premise environment to the Azure cloud environment.

Azure Cloud Environment:

Environments created Run applications on app service Run jobs on app service Azure SQL DB creation General-purpose account storage DR
Development Yes Yes Yes
QA Yes Yes Yes
Production Yes Yes Yes Yes
DR Yes

 
Web Applications were mapped to the cloud components (web roles)

  • Active directory authentication replaced with ACS 2.0 Passive federation with ADFS (Active Directory Passive Federation)
  • Azure cache in-role is used for the session state
  • Components that persist data onto disk are re-written to persist into Windows Azure Storage (Blob)
  • Azure VPN is used to provide interaction between cloud applications and on-premises databases
  • Azure diagnostics was enabled for diagnostics support
  • The application uses Azure SQL Server database for storing application data

 
Benefits delivered to the customer:

Utilizing the Microsoft Azure environment, MSRCosmos enabled the client to introduce new value-added services and improve their customer experience with less downtime & at a lower cost.

here

App and Web Services Migration Approach to Azure

With many enterprises, be it traditional or new-age, working to align their IT initiatives with their Businesses have made ‘cloud’ an integral part of the strategy. To draw maximum results, the applications and databases should ideally run on the most modern cloud infrastructure, like Microsoft Azure. In this article/approach document, we will try to elucidate what a modern cloud infrastructure is and our migration methodology.

So, what’s a modern cloud infrastructure?

  • Enables dynamic provisioning of computing resources with a few mouse clicks
  • Regularly upgraded hardware with an agile architecture to meet not only today’s needs but also tomorrow’s
  • Best-in-class security
  • Flexible pricing models

Why Azure?

  • Scale: Global businesses or a high transaction business from a particular geography, they can count on Azure for their infrastructure to scale to match their requirement – scale with elasticity.
  • Speed & Ease: Enterprises should be in a position to leverage the huge computing power of the cloud with a few clicks and offer the best experience to the users.
  • Performance: Microsoft Azure runs a worldwide network of datacenters and regularly upgrades the hardware. Having the best hardware leads to reduced latency and better performance
  • Security: Protecting data, apps and infrastructure is one of the top priorities for enterprises. Azure offers the right set of policies, controls, and technologies to ensure a secure environment.
  • Reliability: Customers can be assured of High Availability & Disaster Recovery at an optimal cost as data can be mirrored within the cloud infrastructure.

Overall Migration Approach:

Microsoft Azure’s Web Apps and its tools have made it easier for enterprises to move their websites and applications with ease. To further smoothen the process, we are suggesting the following approach:

    • 1. Migration Strategy & Methodology
      1. Analyze your priorities:
        • What triggered this request for migration?
        • What is the business outcome expected?
        • Work-load priorities
        • Total Cost of Ownership
      2. Choosing the right option:
        • X as a Service (X-aaS): Based on the business goals, the enterprise team has to select between Platform as a Service (PaaS) or Infrastructure as a Service (IaaS)
        • While IaaS provides virtualized hardware, PaaS offers the organizations, cloud platform to run their apps, databases on the most modern hardware
      3. Cross-functional teams (CFT):
        • For a smooth execution, stakeholders from Finance, Business and IT have to come together to form this CFT
    • 2. App Migration Approach
      1. Step 1: Analysis & Strategy
        • Understanding the customer’s business requirement & applications’ role
        • Apps’ performance, architecture in the current environment (on-premise)
        • Understanding the data flow (input & output & interdependencies)
        • Choosing the right service (Infra or Platform as a service)
        • Selecting the right cloud computing plan including the database & storage
      2. Step 2: App Migration
        • Pre-migration checklist and sign-off
        • Prepping the App to be compatible with Azure
        • Porting and Migration of App to Azure
      3. Step 3: Storage Migration
        • Pre-migration checklist of current databases (DB) and sign-off
        • Prepping the databases to be compatible with Azure
        • Migration of SQL or other DBs to Azure Store
    • 3. Manage, Secure & Scale

After migration, for the best performance enterprises are recommended to utilize the tools like Azure Arc, Azure Security center.

    1. Manage:Azure Arc helps you manage workloads across multiple environments. This enables the admins to monitor the performance in real-time.
    2. Secure: Detect & respond to threats to your work environment using Azure Security Center and Azure Sentinel, with full visibility.
    3. Scale: Constantly analyze workloads and based on the performance matrix, it is recommended to arrive at the right mix of standard and custom policies to govern & scale the cloud environment. This will not only ensure high availability but also offer the best experience.

Contact MSRCosmos

Contact Us