Azure Migration - barialim/architecture GitHub Wiki

Table of Content

Table of contents generated with markdown-toc

Overview

Azure Migration service is Azure's central hub for your Cloud migration projects.

It can be used to assess your on-premise workload will perform on Azure, and how much they'll cost to host on Azure.

Assessment will include your migration

  • Azure readiness
  • Monthly storage estimates
  • Monthly cost estimate

On top of all this, Azure gives you agentless experience; reducing complexity and helping you make the most of your investment.

⚠️ Note: see 11-steps Azure Migration checklist which you'll need to take into account when migrating to Cloud.

Azure Migration Process

Microsoft recommend four-step process for migrating applications and workloads to Azure.

Stage 1: Assess

Start by discussing the migration project with all relevant stakeholders, calculating "Technology Operations Center (TOC)" of your current deployment, and discovering what parts of your application portfolio may benefit from migration. Evaluate applications to see how suitable they are for a cloud environment and what changes will need to make to allow them to run in the cloud.

Key considerations for the assessment stage:

  1. Networking—look into creating a Virtual Network to maintain the same performance and stability you had in the on-premise data center. Check how many subnets you will need and how DNS will be managed—via Active Directory or the Azure DNS service.
  2. Storage—review Azure storage services and select a solution according to the allowed number of operations per second, and the nature of the data—hot vs. cold. Cold data should be stored in slow, inexpensive storage.
  3. Scalability—learn about Azure Autoscale and consider using it to dynamically scale your application. This requires careful cost modeling.

Use Azure tools to assess applications for migration and get automated recommendations regarding CPU, disk size and storage requirements, current network architecture and capacity, performance requirements, high availability and resiliency recommendations, and requirements for ongoing maintenance.

  • Virtual Machine Readiness Assessment tool—automatically inspects physical or virtualized assets and provides a checklist for moving them to the cloud. It provides a report saying which workloads can be moved and which require further investigation.
  • Microsoft Assessment and Planning (MAP) toolkit—an inventory, assessment and reporting tool that can help you plan migrations for Windows 8.1, Office 2013, Office 365, Windows Server 2012, SQL Server 2014, Hyper-V, Microsoft Private Cloud Fast Track, and more environments. The MAP Toolkit assesses environments and provides readiness information for both physical and virtualized workloads migrating to Azure.

Stage 2: Migrate

You will need to select an Azure migration strategy out of the four approaches that we'll define in the following section. Once you've decided on an approach, you'll be able to identify the tools and technologies that will help you migrate each of your applications. Start small with a Proof of Concept of several applications that provide high value to the business and are easier to migrate, and then continue to the more complex or lower value applications.

Key considerations for the migration stage:

  1. Do you need to leverage Azure’s hybrid cloud solutions?
  2. Are some workloads suitable for Microsoft’s Office 365 environment and not for Azure?
  3. Do you want to run in traditional VMs, in containers or using serverless functions?
  4. Do you need to migrate machines that have a higher capacity or special hardware requirements that are not supported by one of the Azure VM sizes?

Stage 3: Optimize

Even after an application is deployed on the cloud and working as expected, you should continuously monitor the application and see how to improve it.

Key considerations for the optimization stage:

  1. Monitor your costs and see how to optimize them with a better mix of Azure services or improved automation.
  2. Monitor performance and ensure you are meeting your migration goals—providing at least the same performance as you were with the on-premises model, or hitting a new performance target.
  3. Beyond the immediate goal of migration, plan your next steps—what you can do next in Azure and reinvest to gain new capabilities.

⚠️ Note: This is perhaps the most important stage—ongoing operations in the cloud. Beyond the regular operational considerations, in a public cloud environment, you will have a few new elements to consider.

Stage 4: Secure and Manage

Key considerations for the secure and manage stage:

Azure Migration Strategy

Azure provides a powerful cloud platform that is highly suitable for large enterprise IT environments with stringent compliance and data protection requirements. When planning your migration, it is worth considering the pros and cons of the four key migration strategies: Rehost, Refactor, Rearchitect and Rebuild. Depending on which of these models you pick will determine your entire Azure migration strategy.

When planning your migration, it is worth considering the pros and cons of the "four key migration strategies":

  • Rehost (lift-and-shift)
  • Refactor (repackage)
  • Rearchitect
  • Rebuild

Depending on which of these models you pick will determine your entire Azure migration strategy.

Rehost

Also referred to as Lift & Shift, which means, moving applications from the on-premise environment to the cloud with no changes to the underlying application. Our blog about lift and shift provides more information on how it compares to other methods, as well as some of the tools that can be useful for rehosting.

  • Suitable for: Legacy migrations, teams with limited cloud or Azure skills.
  • Pros: Smaller risk of breaking the application, faster and easier migration.
  • Cons: Applications might use cloud resources less efficiently and be more difficult to scale and extend.

rehost

Refactor

Also referred to as Repackage, which means, moving an application to Azure with some code changes but not a major overhaul of the application. This allows you to leverage services like Azure SQL Database Managed Instances and Azure Container Service. You can also leverage Azure’s App Service, Azure Functions and Logic Apps to help re-architect, refactor and rebuild your apps in Azure.

  • Suitable for: Sensitive and business-critical applications where disruption of ongoing functionality is a concern, but there is a need to modernize or improve infrastructure.
  • Pros: Fast and relatively easy, but lets you improve your infrastructure, for example by adding DevOps automation tools or moving to container-based deployment.
  • Cons: Cannot make major architectural changes—for example, splitting the application into microservices, which allows substantial efficiencies in the cloud.

refactor

Rearchitect

This strategy involves revamping the codebase of the application and moving it to a cloud-native architecture.

  • Suitable for: Applications that need maximum agility, scalability and flexibility in the cloud.
  • Pros: Allows you to create a highly scalable, resilient, easily deployable application that can leverage the full power of the Azure cloud.
  • Cons: Complex, expensive migration with a high risk of faults and service disruption in the early deployment stages.

refactor

Rebuild

The rebuild strategy involves putting aside the old application and building the same functionality from scratch using the Azure Platform as a Service (PaaS) capabilities. Leverage services like Azure Functions and Logic Apps to build the application tier, and use Azure SQL Database or other hosted Azure data services for the data layer.

  • Suitable for: Applications with relatively low complexity and few dependencies on other business processes.
  • Pros: Inexpensive, avoids the complexity of software licenses. No dependency on middleware or existing infrastructure.
  • Cons: You will typically not get the same level of functionality as in a custom-built app. Evaluate in advance which parts of the app can be successfully rebuilt in the Azure environment and which cannot.

refactor

Azure Data Migration Services

Azure offers the Database Migration Service which provides a guided migration process for databases including SQL Server, Oracle, DB2, PostgreSQL and MySQL, with automated assessment of pre-migration steps, and migration at scale from multiple sources to a target data volume on Azure.

Lift and Shift Data Volumes to Azure with Cloud Volumes ONTAP

In this blog post, we examined the four cloud migration strategies as they relate to Azure.As part of a cloud migration strategy, you need to move your data. A powerful way to transfer storage volumes and manage them in the cloud is NetApp’s Cloud Volumes ONTAP.

NetApp Cloud Volumes ONTAP, the leading enterprise-grade storage management solution, delivers secure, proven storage management services on AWS, Azure and Google Cloud. Cloud Volumes ONTAP supports up to a capacity of 368TB, and supports various use cases such as file services, databases, DevOps or any other enterprise workload.

It provides highly available storage in Azure, which seamlessly connects to your on-premise storage devices, enabling quick lift-and-shift migration of enterprise-scale data volumes.

Using Cloud Volumes ONTAP, enterprises can leverage the NetApp SnapMirror® data replication tool and Cloud Sync service to migrate to Azure without disrupting operations, and while saving costs and effort of transferring massive amounts of data.

Move VM with custom Disk from VNet1 to VNet2

Which two actions to perform when moving VM with Disk from VNet1 to VNet2:

  1. Delete VM1 in VNet1 but retain the disk
  2. Create a new VM1 in VNet2

We cannot just move a virtual machine between networks. What we need to do is identify the disk used by the VM, delete the VM itself while retaining the disk, and recreate the VM in the target virtual network and then attach the original disk to it.

Reference:

https://blogs.technet.microsoft.com/canitpro/2014/06/16/step-by-step-move-a-vm-to-a-different-vnet-on-azure/ https://4sysops.com/archives/move-an-azure-vm-to-another-virtual-network-vnet/#migrate-an-azure-vm-between-vnets

Terminology

  • Workload: refers to a computer system's ability to handle and process work. Every time someone makes a search on Google, a workload is processed by data centers that find and present results.
  • Cloud workload: is a specific application, service, capability or a specific amount of work that can be run on a Cloud resource. Virtual machines, databases, containers, Hadoop nodes and applications are all considered Cloud workloads.
⚠️ **GitHub.com Fallback** ⚠️