As customers move their enterprise applications to Azure, there are several decisions that need to be made. One of those decisions may be to move the application as-is, with as little change as possible. This may be due to several reasons such as economical, support, timelines, etc. In the move to the cloud, there are areas where you can reconsider the hosting environment away from physical, single host or multi-host to a hosting environment that is more cost effective, agile and provides higher density.
In this workshop, you will learn how to discover, assess and re-host legacy applications. One of the challenges we were looking to address is the fact that legacy applications were built with legacy tooling and knowledge from the period. We chose to use older applications that were actually designed and developed in the period, rather than create new applications with present tooling, knowledge and access to learnings. We feel that this will lead to a better, more real-world experience overall. Some common patterns we were looking to address are:
- Web/multi-tier applications
- Older IIS/.NET versions (IIS 6.0 >, .>NET Framework 3.5)
- Windows Authentication and domain Join of host/containers
- Containerizing legacy web applications
We know that we did not capture all of the scenarios, pitfalls and patterns. If you have a scenario that you encounter, please log an issue and we will try our best to incorporate it into the broader set of workshop materials.
Current Status |
---|
In Development |
The workshop can be conducted in two different formats:
- Open Hack - a set of challenges are issued and the participants can choose how to complete the effort.
- Hand on Labs (HOLs) - specific step-by-step instructions that detail how to complete the challenge.
Both can be used in combination if desired.
- Open Hack 1: Setting up the Azure environment. In this challenge you will create the environment that is needed for the workshop.
- Open Hack 2: Create a Cloud DevOps Ready pipeline. Now that you have the source applications configured, create a cloud DevOps ready pipleline with CI/CD.
- Open Hack 3: Enable legacy applications with CI/CD. Now that we have DevOps working on a new app, get it working with the legacy applications
- Open Hack 4: Windows Containers and authentication. Some legacy applications require native Windows functionality.
- Open Hack 5: CI/CD with Windows Containers. Now that you have the application working in a container, use your DevOps pipeline to deploy it to Azure.
- Open Hack 6: Monitoring.With the applications deployed into production, we need to monitor them both at the infrastructure and application levels.
- Open Hack 7: Going live. Now that you have the application in the cloud and it has been tested in the cloud. Make the original version of the application accessible and then cut over to the migrated version.
In this session, we will provide a brief overview of the workshop and provide an overview of the app migration factory.
In this lab you will create the environment that is needed for the workshop.
- Run a custom ARM Template to scaffold the resources used during the training
In this session, we will understand how to inventory applications, assess dependencies and understand the configuration requirements.
HOL 2 - Configure legacy Applications:
In this lab you will inventory the sample applications.
- Explore the sample applications
- Gather information about the source applications
In this session, we will understand the different patterns and identify the proper treatment for your legacy applications.
HOL 3 - Choose Migration Path:
In this lab you will review the legacy application, align the requirements to the different Azure offerings and provide a path for migration.
- Provide possible treatments for the legacy applications
In this session, we will understand how Ci and CD can be used to help with the application migration factory.
HOL 4 -DevOps with App Service
In this lab you will setup CI and CD with a simple application
HOL 5 - Migrate Source Apps to PaaS
In this lab you will use CI/CD with the sample legacy applications
In this session, we will understand how Windows Containers can help with legacy workloads that require .NET and Windows integrated authentication.
View PowerPoint View PowerPoint
HOL 6 - Windows Containers
In this lab you will learn how to set up Windows containers
HOL 6 (Supplemental) - Advanced troubleshooting with Windows Containers
In this lab you will learn advanced techniques for working with Windows Containers
In this session, we will learn techniques for migrating applications and databases
In this lab you will learn how to containerize legacy applications
In this session, we will learn how to create a CI/CD pipeline with Windows Containers.
HOL 8 - DevOps with Containers:
In this lab you will learn how to use CI/CD piplelines with Windows Containers
In this session, we will learn about monitoring and mangement of Azure resources and applications
HOL 9 - Monitoring:
In this lab you will enable monitoring for the legacy applications
In this session, we will learn how to plan for transistioning the legacy applications to running in production on Azure.
HOL 10 - Going Live:
In this lab, you will use some Azure services to help with going live
This lab represents optional stretch goal exercises where you can add an additional scenarios on your own.
- Windows Integrated Authentation (Host Domain Joined Only)
- Container to Container Trusted Sub System
- Trusted Subsystem to SQL
- Impersonation to FileShare
- Containers with DNS
- Containers with SSL
- Load Balance across containers