SQL Server Migration Framework
Fairly recently I was asked if I would support a SQL Server re-platforming exercise (consolidating physical hardware to a virtual environment, which in this case was Microsoft Hyper-V R2). While I have been involved in re-platforming infrastructure server e.g. Domain Controllers, Web Servers and more complex products, like Exchange, I have never been involved in re-platforming SQL Server.
This challenge got me thinking about the kind of approach I would take, the steps involved, the tools I would use, and the approach I would consider.

The SQL Server re-platforming exercise would need to start with some form of discovery/assessment of the existing environment. For this stage of the project I would use the SQL Server Upgrade Advisor (this assumes that the project would take the opportunity to upgrade their existing SQL servers to SQL Server 2008 or potentially SQL Server 2008 R2). For more information on the SQL Server Upgrade Advisor see the links at the end of this article.
To perform the actually analysis I would use Microsoft Assessment and Planning (MAP) Toolkit for SQL Server 2008. For more information on the MAP Toolkit for SQL Server 2008 see the links at the end of this article.
For the purposes of the analysis, the following reports to help identify the opportunities for re-platforming:
· SQL Server Assessment Report
· Performance Metrics Report
· Server Virtualization Proposal
When the reports have completed generating, the analysis work can begin. The first report will provide insight into the SQL Server servers / instances that were analyzed. This report is named “Server Assessment Report” and can be found in the report repository. This document provides a summary level of information regarding the versions and editions of SQL Server that were found during the scan. In addition, it provides insight into the different features of SQL Server that are installed.
The second report that is generated is the "Performance Metric report". This report details the Processor, Network and Disk utilization recorded over the duration of the analysis. These key pieces of information will enable you to ensure that when the workload is virtualized, it is placed on a host that supports the demands of the application.
The final report that is generated as a part of the analysis is the "Server Virtualization Proposal". The proposal document first details the targeted host information. After that the proposal details each proposed virtualization candidate and aggregates each of the performance characteristics. This shows how each virtual guest will consume the resources of the host.
The next step would be to check to see if a supported configuration could be achieved through virtualization and for this step you simple compare the Server Virtualization Proposal against Microsoft's support policy for SQL. For more information on Microsoft’s support policy for SQL see the links at the end of this article.
Once you have obtained a supported configuration the next step would be to evaluate the virtualized SQL Server architecture to determine how the new features of SQL Server 2008 or SQL Server 2008 R2 would impact your environment. Often a new architecture generally means a different configuration that usually offers new features and capability that improve performance, scaling and capacity.
After the virtualized SQL Server architecture has been determined the work to start sizing the host Hypervisor can begin. For more information on best practices and performance considerations when running SQL Server in a Hyper-V environment, see the links at end of this article.
Finally the last aspect to look at before you start considering the upgrade/migration is placement and planning. Here you will look at various aspects like High Availability, Security, DR and Management.
Patrick Lownds
SQL Server Upgrade Advisor can be downloaded from the following URL below http://www.microsoft.com/downloads/details.aspx?familyid=1470e86b-7e05-4322-a677-95ab44f12d75&displaylang=en
For background information on the SQL Server Upgrade Advisor, see the following URL http://msdn.microsoft.com/en-us/library/ms144256.aspx
The MAP Toolkit can be downloaded from the following URL below http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=67240b76-3148-4e49-943d-4d9ea7f77730
For background information on the MAP Toolkit for SQL Server 2008, see the following URL http://technet.microsoft.com/en-us/solutionaccelerators/dd537572.aspx
For background on Microsoft support policy for Microsoft SQL Server products that are running in a hardware virtualization environment, see the following URL http://support.microsoft.com/kb/956893
For background information on Running SQL Server 2008 in a Hyper-V Environment, se the following URL http://download.microsoft.com/download/d/9/4/d948f981-926e-40fa-a026-5bfcf076d9b9/SQL2008inHyperV2008.docx