Using the Windows discovery tool
Migrate to Containers provides a self-service tool that you run on a Windows VM workload to determine the workload's fit for migration to a container.
The tool outputs a zip file that indicates whether or not the Windows VM is a potential fit for migration. The name of the file indicates the results:
info-hostname-timestamp.zip
indicates that the VM is a potential fit to be migrated.info-hostname-timestamp-NOFIT.zip
indicates that the VM is not fit to be migrated. Typically a NOFIT results from a missing or incorrect version of IIS.
How the tool works
Because Migrate to Containers requires Windows VMs to run Microsoft IIS 7 or higher, the discovery tool collects IIS and general system information.
Prerequisites
To run the Windows discovery tool:
- You must have a 64-bit version of Windows.
- You must be an administrator on the Windows VM.
Downloading and running the tool
The tool is packaged as a single .exe file. You must download the tool before you can execute it.
To evaluate a VM:
Log in to your VM.
Create a directory for the tool:
> mkdir m4a > cd m4a
Download the tool to the VM from https://storage.googleapis.com/anthos-migrate-release/v1.9.0/windows/amd64/collect_info.exe.
Run the tool on the VM as an administrator:
You can either right click on the tool in the File Manager and select Run as Administrator, or open a PowerShell command window as an administrator:
> collect_info.exe
The tool outputs a zip file named
info-hostname-timestamp.zip
orinfo-hostname-timestamp-NOFIT.zip
to the current directory.The timestamp is in the format
YYYMMDDhhmmss
. See Output zip file format for a description of the zip file.You can optionally use the
-o
option to specify the path to the output directory. For example:> collect_info.exe -o /home/mydir
To see help information, use:
> collect_info.exe -h
Output zip file format
The output zip file contains:
- A log file named
log.log
. - A file named
collect_info_version.txt
containing the version of the tool. - Directories containing information about the system:
computer_info
iis
gac
odbc
The contents of each directory are described below.
The computer_info directory
The computer_info
directory contains:
File | Description |
---|---|
hosts.txt |
Copy of machine hosts file |
installed_programs.json |
Information of installed programs |
ipconfig_out.txt |
Output of ipconfig /all . |
msinfo32_out.txt |
Report from msinfo32 utility. |
netstat_out.txt |
Information of all connections and listening ports with executables involved in creating each connection or listening port. |
routing_tables.txt |
The machine's routing tables. |
schedtasks.csv |
Information of scheduled tasks |
systeminfo_out.csv |
Output of systeminfo utility in CSV format. |
win32_product_installed_programs.json |
Information of installed programs provided by Win32_Product WMI class. |
windows_features.json |
Information on Windows features. |
The iis directory
The iis
directory contains information about IIS, sites and .NET configurations,
and additional selected information that might help us to understand the applications.
The directory contains following files:
File | Description |
---|---|
Framework[64]_v<version>_config |
Copy of all .NET global config directories, for each framework and version.
Includes global.configs and machine.configs, for example |
iis_config |
A copy of the IIS config directory including configs and schemes. |
sites_files |
A directory contains exported files from IIS sites, meaning copies of all web.config files in sites. |
sites.json |
Information on all sites configured in IIS, including recursive directory listing for each site with ACL information of files. |
version.txt |
The IIS version. |
Handling secrets in the iis directory
Copies of config files and directories (IIS, global .NET, and sites) might contain secrets. These files include applicationHost.config
and web.config
.
The collect_info.exe
tool filters passwords from
connection strings
in those files ( .NET 3.5+ format).
Every password is replaced with ***
. You can remove and filter any additional
sensitive information manually from the output zip file.
The gac directory
The gac
directory contains information of the .NET Global Assembly Cache:
File | Description |
---|---|
clr2.txt |
A list of assemblies in CLR2.0 GAC. |
clr4.txt |
A list of assemblies in CLR4.0 GAC. |
The odbc directory
The odbc
directory contains information of the ODBC DSNs and installed drivers:
File | Description |
---|---|
system_dsn_32.reg |
Exported registries with all information of system DSNs and drivers for 32-bit. |
system_dsn_64.reg |
Exported registries with all information of system DSNs and drivers for 64-bit. |
user_dsn.reg |
Exported registries with all information of user DSNs and drivers for 32- and 64-bit. |
Handling secrets in the odbc directory
ODBC DSNs might contain secrets. The collect_info.exe
tool filters out passwords from the exported .reg files. You can remove and filter any additional sensitive information manually from the output zip file.