Zero to Hero with App Service, Part 4: Migrate Applications to Azure App Service
In this installment of Zero to Hero with App Service, learn how to migrate your existing applications to App Service. If you followed parts one, two, and three then you already have an application on App Service, and you can continue to the next article.
Overview
There are multiple ways to migrate a web application to Azure App Service:
- Redeploy code using CI/CD Pipelines, Web Deploy, or the REST APIs
- Containerize your web application and deploy from a container registry
- Use App Service Migration Assessment Tool to migrate your ASP.NET, PHP web applications and Linux containers
App Service Migration Assessment Tool assesses whether your web site can be moved to Azure App Service. If your web site is public, you can simply provide your URL on this website to run the assessment. You can also download and run the assistant if your web site is hosted in a private environment. Post assessment App service Migration Assessment tool allows quick and easy migration of ASP.NET and PHP web applications running on IIS, and containerized web applications running on Linux operating systems to Azure App Service.
Step by Step Guidance
Please refer to Test Deployment and Migration Instructions for step-by-step instructions on migrating a sample ASP.NET web application to Azure App Service.
You can also refer to the Microsoft learn module for more information on how to migrate an on-premises web application App Service.
How the Tool Works
- Online assessment of publicly accessible web application using https://appmigration.microsoft.com/assessment
- Tool based assessment of internal web applications using the version of tool available for Windows OS and Linux OS. (Download the tool at https://appmigration.microsoft.com/readiness)
- Based on outcome of assessment (readiness checks) you may proceed further to migrate your web application to Azure App service using App Service Migration Assessment Tool
Please read How the Assistant Works for detailed information.
Readiness Checks
The App Service Migration Assessment Tool runs multiple readiness checks. The results of the readiness checks are used to decide if your app can migrate to Azure App Service. A comprehensive list of the checks is shown below.
IIS Server Site Checks
- Port Bindings
- Protocol
- Certificates
- Location Tags
- ISAPI Filters
- Application Pools
- Application Pool Identity
- Authentication Type
- Application Settings
- Connection Strings
- Framework
- Virtual Directories
For detailed information on readiness checks and possible remediation steps, see this article.
Linux Container Checks
- Linux Platform
- Container Volume
- Exposed Ports
- HTTP Traffic
Please read Linux Container Checks for detailed information on readiness checks and possible remediation steps.
Database Migration and Hybrid Connections
App Service Migration Assistant migrates the web application and associated configurations only, it does not migrate databases. There are multiple ways to migrate databases to Azure. Some options are listed below.
Your web application on Azure App service can also connect to an existing, on-premises database using Hybrid Connections.
Hybrid Connections allow your web application to securely access resources in other networks – in this case, an on-premises database. The migration tool configures and sets up Hybrid Connections for you, allowing you to migrate your site while keeping your database on-premises. You can then migrate your database later.
Azure Migrate Hub Integration
Azure Migrate provides a centralized hub to assess and migrate on-premises servers, infrastructure, applications, and data. The Migration assessment tool allows you to sync assessment data with Azure Migrate Hub for both successful migrations and migrations with blockers.
Summary
Using these resources, you can easily assess the migration feasibility of your .NET, PHP, and Linux containers. Once your migration assessment is complete, use the assistant's step-by-step instructions to complete the migration to App Service. For more information, see the links below.