A
successful cloud migration project implementation will not only save budget but
it will also result in smooth operations post-migration. It is critical to plan
and implement migration strategies after a thorough study.
In this article, we will discuss different activities involved in
each of the migration phases and different tools that can be used to perform
these activities. Please note this article is
written keeping in mind MSSQL On-Premise database migration to Azure so the
methods and tools mentioned in this article will be helpful for database
migrations. Few of the tools discussed in this article can be used for
performing many other activities like monitoring, analysis, and so on but the other features of the tools are not discussed here.
An Azure migration project involves many number of tasks that
needs to be performed such as the gathering
of information, validation of source databases\servers, cost analysis and
so on. Azure migration project activities can be mainly divided into 3 phases
as mentioned below.
1. Pre-Migration Phase.
2. Migration Phase.
3. Post-Migration Phase.
1. Pre-Migration Phase:
This is the beginning phase of the Azure migration project and it
is one of the important and strong pillars of a migration project. The
successful execution of a migration project depends on how detailed and
accurately this phase is executed. The main tasks of this phase are estimating
the cost of Azure resources, gathering all details of the source servers that
are required to be migrated, and to check if the source server/database can be
migrated or not.
We can estimate the cost savings that can be achieved by migrating
existing servers\databases to Azure, as discussed here.
The first task is to gather information about the source
environment. For collecting information about source environment MAPToolkit is
one of the free tools available. We have discussed in detail about this tool here. After
gathering information about the source environment using MAPToolkit,
the next step is to check if the existing source environment or the database(s)
are ready to migrate to the cloud. As this article is written keeping MSSQL
database migrations in mind, to assess the source databases we can use the DMA (Database
Migration Assistant) tool. DMA is
discussed in detail here. After assessing the source databases we will get
details of which databases can be migrated and which can’t be migrated, which
existing features of source environment are not in use in Azure, mainly we need
to identify and fix the migration blockers in the DMA tool output. Migration
blockers are the features or components that will block our Azure migration, these
can be identified using the DMA
tool. After fixing all the migration blockers only Azure migration can be
performed successfully.
2. Migration Phase:
In this phase, we will
perform the actual migration of applications, servers, and databases. There are a number of methods and tools available for performing MSSQL database migration,
in fact, there are various ways
to migrate MSSQL database using SSMS
itself. Based on the environment and customer specifications like the
downtime allowed, the volume of data, budget, and so on, the tools and
methods of migration vary. There is no one fixed method of migration which
suits for all environments and databases. There are different tools like
DMS (Database Migration Service), DMA (Database
Migration Assistant), Transactional
Replication, and so on.
How we plan and perform
a SQL Server Service Pack upgrade similarly once the type of migration and the
tool for migration is finalized we first need to perform migrations of low-risk
databases\environments like Test or Stage databases. Once we identify the challenges and
fixes during the migration of test or stage databases then we need to plan for
production database migration. Migrating less critical databases will give us a good estimate of how much time it takes to migrate, what are the challenges that
may occur during migration, and which method would be best suitable for
migrating the production database.
3. Post-Migration:
Once migration is
completed the first step obviously is to validate the application. Once all
validations are completed then the next step is to start tracking and
monitoring the cloud environment.
As one of the main
advantages of moving to the cloud is to reduce cost, as we are billed 'Pay Per
Usage', to take the full advantage of 'Pay Per Usage' we need to keep
tracking our environment continuously and scale up and scale down cloud resources as
needed. Continuous monitoring of the cloud environment helps in removing
unused resources like unused storages, unused snapshots, unused VMs, and
so on. We should start collecting data points of the cloud environment
using different tools available. After gathering multiple data points by
monitoring the environment we can use those data points for optimizing and
cost-saving in the environment.
Azure Monitor helps in monitoring and tracking of applications, infrastructure, and networks. The data gathered while monitoring can be used to perform several analysis and detecting problems. Log analytics can be used to perform in-depth troubleshooting and Applications Insight helps in working on application issues and dependencies. At the time of writing this article Log Analytics and Application Insights also falls under Azure Monitor. You can read in detail about Azure monitor here.
Azure Security Center is a security management system that helps in assessing and alerting about security issues of our environment and resources. It helps in assessing the environment/workloads and gives us the current status of the security of our resources and provides suitable recommendations. You can read here in detail about AzureSecurity Centre.
Below picture shows
different phases and steps involved in each phase of MSSQL database migration
to Azure and different tools that will be helpful to perform different
activities.
How to create an Azure SQL Database?
How to perform ONLINE migration of the database to Azure?
How to perform OFFLINE migration of the database to Azure?
Thanks VV!!
#Azuresql #Azuremigration #migration
#SQLServer #Azure #MSSQL #Databasemigration #Database