Before you start migrating to Google Cloud, you need to determine the requirements and dependencies to migrate your apps. This document describes products and tools to assess your source environment to identify those requirements and dependencies. It also helps you to evaluate those assessment tools and choose the right one for your migration to Google Cloud.
This document shows you how to do the following:
- Establish evaluation criteria to analyze assessment tools.
- Evaluate each tool against the criteria.
- Evaluate example use cases.
This document is part of a multi-part series about migrating to Google Cloud. If you're interested in an overview of the series, see Migration to Google Cloud: Choosing your migration path.
This document is part of a series:
- Migration to Google Cloud: Getting started
- Migration to Google Cloud: Assessing and discovering your workloads
- Migration to Google Cloud: Choose an assessment tool (this document)
- Migration to Google Cloud: Building your foundation
- Migration to Google Cloud: Transferring your large datasets
- Migration to Google Cloud: Deploying your workloads
- Migration to Google Cloud: Migrating from manual deployments to automated, containerized deployments
- Migration to Google Cloud: Optimizing your environment
- Migration to Google Cloud: Best practices for validating a migration plan
When you design your migration plan for Google Cloud, you assess your workloads to determine the requirements and dependencies to migrate your environment to Google Cloud. The assessment phase consists of the following tasks:
- Build a comprehensive inventory of your apps.
- Categorize your apps according to their properties and dependencies.
- Train and educate your teams on Google Cloud.
- Build an experiment and proof of concept on Google Cloud.
- Calculate the total cost of ownership (TCO) of the target environment.
- Choose the workloads that you want to migrate first.
Discovery: In the discovery subtask, you start building an inventory of your apps. To complete discovery, you compile a list of the items to evaluate for migration and high-level details about each item, such as IP addresses and installed OS type.
To start building the detailed list, you gather information from different sources. For example, you might use configuration management databases (CMDBs) or consult IT support teams and operations teams. These sources might provide details about the source environment and the workloads to migrate, but the data that you gather might lack critical pieces of information. The data also might be out of date due to configuration changes to the components of the infrastructure that can occur over time. Therefore, it's important to manually or automatically validate the data by checking directly in the environment.
Collection: In the collection subtask, you finish building an inventory of your apps. To complete the collection subtask, you examine each item that was discovered in the previous step and you collect data about it. You then add details to the list that you produced during the discovery subtask, such as dependencies between workloads, software installed on each item, and OS version. This information is used to build an app inventory and an app catalog for planning the migration project.
Report: The report subtask is the process to categorize your apps. To complete the report subtask, you first organize all the information that you gathered in the previous subtasks. You then create a detailed view of the workloads that are running in the source environment. This view can also contain details about technologies involved, dependencies between workloads, and problems that might arise during the migration process, such as compatibility issues or unsupported versions of software.
The detailed view should be structured in a way that will help you to plan future work. For example, the detailed view can visualize a map of the dependencies between items or it can create a view that highlights the different amounts of data that an item requires in order to migrate. The report subtask can also include the use of assessment tools (described later in this document) as a support element to guide your selection of target cloud services to host the workload that you're migrating.
Each of the preceding steps to assess your environment involve work that can be complex to do manually. Manual validation of the data that you gather during the discovery and collection subtasks can be complex and error prone. At the end of the process, each item that will be in the inventory of your app is—in practice—in a host with workloads installed on it, so the host supports integration with automation.
Use an assessment tool
To complete a thorough assessment, we recommend that you use migration assessment tools that do the following:
- Automate periodic data collection from the environment that you want to migrate. Doing so can help to reduce errors due to manual operations and processes, and can help continuously update the data about the source environment.
- Provide the information about the source environment in a consistent format.
- Provide the necessary pieces of information to completely outline and follow a migration plan, including recommendations about the best migration approaches for each component and workload in the source environment.
To create a complete list of hosts and workloads that are running on-premises or on other cloud environments, Google Cloud provides Google Cloud Migration Center with its integration with StratoZone, and a fit assessment tool. These tools provide different features and have different approaches to discovery. This document will help you to understand the details of each of these tools and to create a comparison between them, so that you can pick the right tool for your use case.
To choose an assessment tool, you evaluate each tool according to a set of evaluation criteria. Migration Center and the fit assessment tool can also integrate so that you can run the data collection using Migration Center and then create a report using each of the tools. This integration lets you take advantage of recommendations from each tool, depending on the specific migration use case for the item.
Establish criteria to evaluate assessment tools
To establish the criteria to evaluate assessment tools, consider whether the assessment tool supports discovery and collection for the most important aspects of your source environment. To maximize the value that's provided by the assessment tool, you can also consider recommendations and reports that the tool can generate. You should assess your workloads to compile a list of the criteria that are important for you and for your use case, and then order them according to importance.
The following evaluation criteria and the order that they're listed in are provided as an example. After assessing your workloads, you might consider the following evaluation criteria:
- Source and target environment:
- Which environments does the assessment tool support?
- What OS does the assessment tool support?
- Does the assessment tool generate a report that has recommendations for specific environments?
- Data acquisition mode:
- What steps does the assessment tool perform to automatically get the list of hosts that are running in the environment?
- Which prerequisites does the assessment tool have?
- Does the assessment tool require software (an agent) to be installed on the host in order to collect data?
- Can the collection be run remotely (for example, by using an SSH connection) or should it be executed on the host directly?
- Does the assessment tool support remote execution on hosts?
- Does the assessment tool support collection on running hosts?
- Can the assessment tool import data from external sources, such as other assessment tools or precompiled inventories?
- Ease of use:
- Does the assessment tool require manual setup steps?
- How long does the tool take to provide meaningful data?
- Comprehensiveness, security, and usability of data collected:
- Which data does the assessment tool collect?
- Can the data that the tool collects be exported?
- What exporting formats does the assessment tool support?
- How is the data handled?
- Is the data stored and processed locally or is it sent to another physical location?
Evaluate assessment tools
The following sections provide an evaluation of Migration Center and the fit assessment tool based on the example criteria in the preceding section.
Evaluate Migration Center
Migration Center is an agentless assessment tool. To use Migration Center, you deploy the Migration Center discovery client on a dedicated host that has direct access to the assets that you want to assess. Discovery client provides a user interface that you use to configure details about your environment. After you install discovery client, you run discovery and collection by doing the following:
- Create credentials to access the host in the environment.
- Add network details for discovery client to reach your hosts. You can specify either a list of IP addresses, so that the probe can access them directly, or specify an IP address range that discovery client can use to discover reachable hosts.
- Select credentials to use for the IP addresses or range.
- Start the collection for the hosts that discovery client discovers.
After discovery and collection, discovery client sends the collected data to Migration Center, where you can view and export data.
To evaluate Migration Center against the criteria that you established earlier, use the following specifications:
Source and target environment: Migration Center integrates with VMware vSphere environments, and it supports running discovery of non-VMware vSphere environments by scanning the network. It also supports the collection of data from other cloud environments. Migration Center supports these methods of collection: OS scan, vSphere scan, and Database scan. Discovery client supports both the Linux OS and the Windows OS. If you run a Migration Center assessment in a VMware vSphere environment, discovery client can connect directly to the vSphere center to collect data about hosts. Migration Center can provide recommendations about how to set up the Compute Engine target environment to best suit common workloads.
Data acquisition mode: Migration Center lets you create a custom assessment that groups all the information about your hosts. Migration Center requires specific configuration on the hosts to be scanned and on the host that runs discovery client. To complete the assessment of a source environment where you can't deploy discovery client for technical, regulatory, or other reasons, Migration Center offers an offline manual data upload mode. If you use the manual data upload mode, you complete templates that are available in the Migration Center portal, and then upload them to the portal. After you upload the completed templates, Migration Center imports data about hosts into the assessment.
Ease of use: To start using Migration Center, you create your Google Cloud project and activate Migration Center. Then, if you don't want to manually upload data, you can create a discovery client that you can install in the source environment.
After you install and configure discovery client, you can use Migration Center and the discovery client user interface to perform the assessment. Migration Center usually takes less than an hour to discover the hosts in the source environment, but we recommend that you run Migration Center for at least a few days to ensure that it gathers enough data to also map dependencies between hosts.
You can also self-provision a StratoZone account directly within Migration Center at no additional cost. This lets Migration Center automatically sync your inventory data with StratoZone.
Comprehensiveness, security, and usability of collected data: During the initial activation, Migration Center lets you select the Google Cloud region where you want to store your data. Other than IP addresses, Migration Center doesn't collect personally identifiable information (PII) or data subject to PCI or HIPAA compliance requirements. Migration Center doesn't collect data from within your applications or file storage.
After Migration Center collects data, you can generate total cost of ownership (TCO) reports based on your migration preferences. You can use the TCO reports to compare options that you can migrate your assets to, such as Compute Engine VMs, Google Cloud VMware Engine, and Compute Engine sole-tenant nodes. You can also use StratoZone to generate additional reports from your inventory.
Evaluate the fit assessment tool
The fit assessment tool is a command-line, agentless tool that can run on a host in the source environment. You can run the fit assessment tool to assess workloads that are deployed on hosts and to determine the best fit for a migration to containers.
To assess a host and workloads that are running on the host, the fit assessment tool evaluates the workload and the host against a set of rules. Each rule checks the workload and the host to identify potential issues for a particular migration scenario. For example, if you're migrating a workload that's running on an OS version that the OS vendor doesn't support, the rules might highlight that the migration will require a version update.
The fit assessment tool consists of these components:
mfittool: a command-line tool that runs fit assessment tool commands. The
mfittool lets you run commands for remote collection, data aggregation, and export. To run the
mfittool for discovery, collection, and reporting of data, you must use a Linux host.
mfitLinux collection script: a script that runs against Linux hosts to perform data collection.
mfitWindows collection script: a script that runs against Windows hosts to perform data collection.
To evaluate the fit assessment tool against the criteria that you established earlier, use the following specifications:
- Source and target environment: The fit assessment tool supports
automatic discovery of hosts only if they're in a VMware vSphere
environment. The fit assessment tool supports collection on hosts that run
Windows or Linux. To collect host data, you must run one of the collection
scripts on the host. The fit assessment tool also supports the remote data
collection on VMware vSphere environments for Linux hosts that are
accessible through the
The report that's generated by the fit assessment tool contains
include different possible target environments,
such as the following:
- Compute Engine
- Google Cloud VMware Engine
- Anthos and GKE
- Autopilot, a mode of operation in GKE
- Cloud Run
- Data acquisition mode: The fit assessment tool integrates with VMware vSphere environments. The tool can run discovery by querying the VMware vSphere API in the source environment directly or, if there is no direct access to the vSphere environment, by importing the output of an RVTools export. Data collection is based on scripts to be run on the hosts in the source environment, either directly on the host or remotely. The tool is agentless, but it might require collection to be started directly on the host. The fit assessment tool produces a compressed archive for each host in the source environment, and then the tool aggregates the information in those archives.
- Ease of use: The fit assessment tool might require some extra manual setup to collect host details. For example, remote execution isn't available for Windows targets that aren't in a VMware vSphere environment. In these environments, you need to manually run the script on each Windows VM, and you need to manually transfer the compressed archives that contain the results of the collection from each host to the fit assessment tool host. The running time of the tool is limited to the execution of the script and the time to aggregate results. The source code of the collection scripts is available, so you can completely audit them before you run them in your source environment.
Comprehensiveness, security, and usability of collected data: The fit assessment tool collects data about the host, such as OS, apps, listening ports, and mounted disks. The fit assessment tool collects the following types of data:
- VMware vSphere data. The fit assessment tool interfaces with the VMware vCenter API to collect specific data about the VMware vSphere environment, such as the VMware ID.
- Linux and Windows hosts. The fit assessment tool collects data on Linux or Windows hosts by running the collection scripts either remotely from a dedicated host or locally on each VM. This data collection contains data about each VM, such as OS type, data storage, number of CPUs and CPU cores, and other information about the host.
The fit assessment tool produces reports that include the result of the assessment against a predefined set of rules. The fit assessment tool evaluates each rule, and it shows results based on the analysis of the data that's collected by running the collection scripts on the hosts in the source environment.
The fit assessment tool supports exporting reports in different formats, such as in HTML, CSV, and JSON. The fit assessment tool handles all data locally in your environment, and it doesn't transmit any information outside, so you have full control over where the data is stored.
Compare Migration Center to the fit assessment tool
|Migration Center||Fit assessment tool|
|Source and target environment||
|Data acquisition mode||
|Ease of use||
|Comprehensiveness, security, and usability of data collected||
Migration Center and fit assessment tool integration
Migration Center can collect data for the mFit assessment so that you can use the discovery and collection features of both tools without having to collect data in the source environment twice. This integration gives you more comprehensive data to support your migration decisions and to design your migration plan by letting you evaluate the migration paths that are suggested by both tools. In the preceding sections, you evaluated both Migration Center and the fit assessment tool separately. However, to have more complete data for your assessment, we recommend that you consider this integration—at the cost of configuring both tools and generating multiple reports. This integration relies on discovery client, so you must be able to install discovery client in the environment.
Choose a tool for your migration
To choose the assessment tool that best fits your use case, evaluate each tool against the criteria that you established. You can assign a value to every criteria for each option, and then calculate the total score of each option. To calculate the total score of each option, add all the ratings for that design option based on the criteria. For example, if an environment scored 10 against one criterion, and 6 against another criterion, the total score of that option is 16.
To represent the importance of each criterion in the evaluation, you can also assign different weights to the score against each criterion. For example, if having obfuscated data is more important than the evaluation modernization option, you can define multipliers to reflect that: a multiplier of 1.0 for comprehensiveness, security, and usability of data collected, and a multiplier of 0.7 for source and target environment. If none of the criteria clearly stands out as a differentiating factor to choose an assessment tool, you can use both tools at the same time to get a detailed picture of the source environment.
Example use cases
The following sections provide examples of common use cases of source environments to assess, and they describe which assessment tool best fits the use case and why.
Lift and shift migration of an on-premises Windows environment to Compute Engine
This example use case is for a lift and shift migration of an on-premises environment that's primarily composed of Windows hosts to be migrated to Compute Engine.
Use Migration Center to migrate a Windows environment
- Source and target environment: Migration Center supports remote collection on generic Windows hosts and provides recommendations on how to migrate them to Compute Engine.
- Data acquisition mode: By configuring the required Windows credentials and network settings, you can run data collection on all the Windows hosts remotely from the host where you deployed the discovery client VM.
- Ease of use: Migration Center supports fully automatic, remote data collection, which we recommend using when you migrate large production source environments.
- Comprehensiveness, security, and usability of data collected: Migration Center collects data that provides information about hosts. It also provides specific recommendations about the migration journey of each workload, including cost forecasting.
Use the fit assessment tool to migrate a Windows environment
- Source and target environment: The fit assessment tool doesn't support remote data collection on Windows hosts.
- Data acquisition mode: By installing the required software on hosts, you can configure Windows to run scripts on different hosts.
- Ease of use: To collect data for the fit assessment tool, you must
manually run the collection script on each host to migrate, and then
aggregate the data. In this scenario, the
mfittool can't perform remote discovery and collection, so you have to move the aggregated data to the
mfittool host VM.
- Comprehensiveness, security, and usability of data collected: The fit assessment tool provides recommendations for migrating hosts to Google Cloud. The fit assessment tool report can suggest the best solution, which in this case can be Google Cloud VMware Engine or Compute Engine. The tool can also highlight attention points and rework required.
Recommended tool for lift and shift migration
In this example use case, we recommend using Migration Center because it supports fully automated, remote data collection for Windows hosts, unlike the fit assessment tool.
Hybrid migration of a VMware vSphere-based environment
This example use case is for a hybrid migration approach that combines a lift and shift migration with an improve and move migration of a VMware vSphere-based environment. In this example, the source environment hosts the following workloads, which you're evaluating for migration:
- Workloads to eventually containerize.
- A database to migrate to Compute Engine or to Cloud SQL.
In this scenario, you might find that some workloads are easy to modernize during an improve and move migration. Other workloads might be more complex, and better suited for a lift and shift migration.
Use Migration Center to migrate a vSphere-based environment
- Source and target environment: Migration Center can interface with VMware vSphere for the discovery phase, and it supports database scans. Migration Center supports data collection about the workloads to migrate, but it lacks recommendations for a replatform.
- Data acquisition mode: You need to configure credentials with the required privileges and network settings to run Migration Center.
- Ease of use: Migration Center requires installing discovery client in the source environment.
- Comprehensiveness, security, and usability of data collected: StratoZone recommendations help you to migrate databases by generating a solution group. A solution group identifies migration paths for most common enterprise apps, such as common databases or management software, so it's well suited for this use case.
Use the fit assessment tool to migrate a vSphere-based environment
- Source and target environment: The fit assessment tool provides recommendations to move to different target environments, and to evaluate the required effort and potential difficulties.
- Data acquisition mode: A user who has required privileges must be available to run the fit assessment tool remotely on different hosts.
- Ease of use: As mentioned previously, you can run the fit assessment tool collection scripts remotely through an SSH connection on Linux hosts.
- Comprehensiveness, security, and usability of data collected: The fit assessment tool provides recommendations to evaluate different target environments, such as Compute Engine and GKE.
Recommended tool for hybrid migration
In this use case, there isn't a clear deciding factor between Migration Center and the fit assessment tool. Both tools can perform a discovery, and both tools can collect data from most of the hosts. These are the primary points to consider:
- Migration Center offers a feature to scan databases, which fits the requirements for performing lift and shift migration of workloads that involve multiple databases.
- The fit assessment tool lets you evaluate different rules, including recommendations for improve and move migrations.
For this use case, we recommend that you consider a hybrid approach to the assessment. You can use Migration Center to collect data about databases and use the fit assessment tool to collect data about the hosts that host other workloads. For example, you might use the integration between Migration Center and the fit assessment tool to collect all the required data using discovery client. Using both tools lets you take advantage of the features of both tools to gather all the data points that you need in order to design an effective migration plan.
Heterogeneous workloads running on Windows and Linux hosts
In this example use case, the source environment hosts heterogeneous workloads running on Linux and Windows hosts. Scenarios like this are commonly found in enterprise environments that want to migrate on-premises source environments to the cloud. Enterprise organizations usually have a heterogeneous technology stack that has a great degree of variance that accumulated over time. Because such migrations can take months or years to complete, migrating those source environments usually requires a tailored migration plan that minimizes migration costs and effort required. In this example use case, you carefully choose the workloads to move first because this choice can greatly affect the success of the migration.
- Source and target environment: The fit assessment tool doesn't support remote data collection on Windows hosts, but you can work around this limitation by using the integration of the fit assessment tool with Migration Center. In such a large migration, it's reasonable to think that both tools will eventually be useful for the assessment of a group of hosts. Because there are many different workloads, running a report with both of the tools can help you to determine the best migration solution.
- Data acquisition mode: Considering the variance in the source environment, it can be an important deciding factor to have the flexibility to select a data acquisition method for each host group. You can choose whether to invest time and effort to install and configure discovery client or to collect data by using the fit assessment tool collection scripts.
- Ease of use: Due to the high number of hosts in the environment, it
can be beneficial to use an automatic approach that can scan all the hosts.
However, it can be time-consuming to set up Migration Center
and install discovery client on a host.
Therefore, we recommend that you consider using the
mfitcollection scripts for first movers.
- Comprehensiveness, security, and usability of data collected: In this scenario, the recommendations provided by the fit assessment tool let you evaluate different migration options for each workload. If you're migrating to Compute Engine, Migration Center lets you forecast costs.
This example use case highlights the importance of a hybrid approach to assessment. The integration between Migration Center and the fit assessment tool can be an important factor for long term planning.
Google Cloud offers the following options and resources for you to get help and support in using Google Cloud services:
- Self-service resources. If you don't need dedicated support, there are several options that you can use at your own pace.
- Technology partners. Google Cloud has partnered with multiple companies to help you use our products and services.
- Google Cloud professional services. Our professional services can help you get the most out of your investment in Google Cloud.
- Complete the assessment by educating your organization about Google Cloud.
- For more reference architectures, diagrams, and best practices, explore the Cloud Architecture Center.