AppZero Application Migration Guide Introduction

17/12/2014
AppZero Application Migration Guide
AppZero Application Migration Guide
Introduction
This document provides instructions for planning, creating, migrating, and dissolving Virtual Application Appliances (VAAs) using the AppZero Application
Migration and AppZero Dissolve features.
The intended audience is administrators and those responsible for creating VAAs and migrating applications.
Notices
Copyright © 2007­14 AppZero Software Corp. All rights reserved.
Notice: All information contained herein is the property of AppZero Software Corp. No part of this document (whether in hardcopy or electronic form) may be
reproduced or transmitted, in any form, or by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior written consent of
AppZero Software Corp. This document is protected by copyright and distributed under a license restricting its duplication, distribution and use. No part of this
guide may be reproduced, adapted, or translated in any form by any means without the prior written consent of AppZero. Please consult the license under which
this document was acquired in order to review all of the applicable restrictions.
AppZero and the AppZero logo are trademarks or registered trademarks of AppZero Software, and may be registered in certain jurisdictions. Other AppZero
graphics and logos are trademarks or trade dress of AppZero. Red Hat and all Red Hat­based trademarks and logos are trademarks or registered trademarks of Red
Hat, Inc. in the United States and other countries. Linux is a registered trademark of Linus Torvalds in the U.S. and other countries. UNIX is a registered
trademark of The Open Group. Microsoft and Windows are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other
countries. Other company, product, and service names may be trademarks, registered trademarks, or service marks of their respective owners.
This publication and the information contained herein are subject to change without notice and are provided pursuant to the terms of the software license
agreement to which it relates. All works provided by AppZero herein are provided on an "as is" basis and there are no warranties, representations or conditions,
express or implied, written or oral, arising by statute, operation of law, course of dealing, usage of trade or otherwise, regarding them by AppZero (including its
affiliates, licensors, suppliers, subcontractors and distributors). AppZero including its affiliates, licensors, suppliers, subcontractors and distributors disclaim any
implied warranties or conditions of quality, merchantability, durability, fitness for a particular purpose and non­infringement.
AppZero Software Corp
1 Hines Road, Suite 105
Ottawa, ON K2K 3C7
+1­613­254­5432
+1­613­254­9899
300 Brickstone Square, Suite 201
Andover, MA 01810
+1­617­820­5126
+1­866­444­6670
[email protected]
www.appzero.com
Abbout AppZero
AppZero™ creates, controls, and maintains Virtual Application Appliances (VAAs). VAAs decouple an application from the operating system and its underlying
infrastructure. The result is a single file that encapsulates an application with its dependencies, including executable libraries, files/registry, configuration settings,
and services. The VAA can be freely moved and managed without reconfiguring either the application or the operating system.
Isolated from the underlying infrastructure, VAAs can be easily moved among servers (physical or virtual) on­premise or in the cloud. This isolation makes it
easy for both legacy and new applications to move as needed from machine to machine, regardless of infrastructure changes, cloud provider, and differing virtual
and physical machine configurations, including hypervisor technology.
Other AppZero Resources
The resources in the following table can help you learn more about AppZero.
For information about
See
Important and late breaking information
AppZero Release Notes
AppZero Support
AppZero Support
Other services and products
www.appzero.com
http://docs.stage.appzero.com/book/export/html/812
1/45
17/12/2014
AppZero Application Migration Guide
Conventions
Convention
Meaning
option
CLI options appear in Courier font.
command
CLI commands appear in Courier font bold.
>
This symbol indicates a menu item. For example,
"Choose Tools >Options" means choose the Options
item from the Tools menu.
bold
Bold font indicates a graphical user interface element.
For example, ”Run Setup for AppZero, and then click
Next.”
Feedback
If you have comments about AppZero products or AppZero user documentation, please contact us:
www.appzero.com/content/contact
AppZero Support
For AppZero customer support, email [email protected] and see www.appzero.com/content/support.
Introduction to AppZero Application Migration
About Migrating Applications
AppZero Application Migration is an intelligent discovery tool that migrates an application and its dependencies from a tethered source machine to a destination
machine.
To migrate an application, AppZero is not required on the source machine. AppZero is required on the destination machine to tether to the application on the
source machine and run the migrated virtual application appliance on the destination machine.
Once you have migrated the application, you can then dissolve the application to the underlying operating system using AppZero Dissolve. For information about
AppZero Dissolve, see About Dissolve.
You use the AppZero Tether Console to migrate an application.
AppZero Tether Console
You use the AppZero Tether Console graphical user interface to:
1. Create a VAA, which is the container for the application you will migrate.
2. Connect to the source machine.
3. Get remote information and import it to your VAA.
4. Start and finish the migration process, or reset it if you need to.
http://docs.stage.appzero.com/book/export/html/812
2/45
17/12/2014
AppZero Application Migration Guide
Tooltips are available for GUI items (buttons, fields, and tabs) on the AppZero Tether Console.
Alternatively, you can use the CLI command appzpedit. See To Migrate an Application Using the AppZero CLI for information about how to use
appzpedit.
Once you have completed tethering using AppZero Tether Console, you will use the Administrative Console to manage your VAA as required. For more
information about managing VAAs, see the AppZero Administration Guide.
Restrictions
You cannot use AppZero Tether Console and Administrative Console at the same time when migrating an application. Complete tethering and then use the
Administrative Console once AppZero Tether Console closes to manage your VAA.
AppZero does not recommend that you use both AppZero Tether Console and the AppZero CLI at the same time when migrating an application. For
example, it is not advisable to use AppZero Tether Console during a tethering session and attempt to dock the VAA using the AppZero CLI while AppZero
Tether Console is still open. To avoid possible problems with a VAA, use AppZero Tether Console OR the AppZero CLI when working with a VAA.
The Application Migration Process
Migrating an application involves the following steps:
1. Complete prerequisite steps on the source and destination machines. See Are You Ready to Migrate an Application?
2. Double­click the Tether Console shortcut icon on your desktop to start AppZero Tether Console.
3. Create a VAA and connect to the source machine. See To Migrate an Application Using AppZero Tether Console.
4. Run your VAA application on the destination machine and exercise the application. See Running and Exercising Your Application.
5. Run AppZero Dissolve to remove AppZero encapsulation from the application appliance and transfer it to the underlying operating system on the destination machine so
that the application will behave as if natively installed. See To Dissolve an Application.
The following diagram summarizes the steps in the Tether process.
VAA Naming Conventions
When choosing a VAA name, consider the following:
http://docs.stage.appzero.com/book/export/html/812
3/45
17/12/2014
AppZero Application Migration Guide
By default, the VAA name is the same as the name of the VAA folder, which contains AppZero runtime support files, the configurable VAA properties, file
set, registry set, services, and other dependencies that are referenced in the template. Therefore, when choosing VAA names, avoid characters that cannot be
used in a Windows folder name.
A name must have at least 1 character and a maximum of 63 characters.
Do not start or end the VAA name with a period (.) or use a reserved extension such as ".exe" or ".cap".
Do not use "*" or "&" in the name.
Do not use the name "hostid", "self”, or "sourceid".
Choose unique names for VAAs.
Choose a naming convention that will make VAAs easy to identify.
Tether Agent
AppZero's Tether Agent allows compression of the data stream when copying files from the source machine in order to achieve better performance.
Tether Agent is off by default. You can enable or disable it as required.
You can view the Tether Agent log agent.log in the following directory:
C:/appliances/<VAA>/ctrack/Activity/agent.log
Tether Agent activity is also displayed in the Tether log.
Notes:
Tether Agent is not supported on Microsoft Windows 2000 Server source machines.
Only one VAA at a time can tether using Tether Agent to the same source machine. Multiple tethers via Tether Agent at the same time to the same source
machine are not possible. If there is an issue, stop the appzagent.exe process associated with the previous VAA on the source server, then dock and
start the second VAA.
To Enable Tether Agent
1. Go to the following key value on the destination machine:
Key value name:
HKLM\SOFTWARE\AppZero Settings\Controller\UseAgent
Type: REG_DWORD
Value Data: 0
2. Set Value Data to 1.
Configuring Tether Agent
You can configure Tether Agent parameters by setting their corresponding registry value under the following registry key on the destination machine:
HKLM\SOFTWARE\AppZero Settings\Controller\agent
For more information, see Advanced Configuration for Tether Agent in the AppZero Reference Guide.
Tether Credential Information
Configuration information is saved in a credential file:
<VAA_cid>.tether
The Tether credential file stores source machine information that you specify via AppZero application migration. The file includes the source machine name, user
name, and encrypted password used to connect to the source machine. The Tether credential file is saved in the AppZero installation directory, for example:
C:\Program Files\AppZero\1ce8a1a5cffe4e0.tether
Remote Information
You can get the following remote information for a VAA:
services installed on the source machine that a VAA requires to run properly
environment variables
user/group account information
Remote Services
You can list installed services on the source machine and copy services from this list to the destination machine before you dock a VAA. This is useful if a service
http://docs.stage.appzero.com/book/export/html/812
4/45
17/12/2014
AppZero Application Migration Guide
on the source machine was missing in the VAA when the VAA was created.
When you get remote services, a cremoteservices file is created in the VAA folder. This XML file contains a list of services from the source machine.
You can start a service on the Remote Services tab of the AppZero Tether Console.
Remote Environment Variables
You can also get a list of remote environment variables that are required by the application migration process. These remote environment variables will become
part of the VAA and a cremotenv file will be created in the VAA folder.
For information about setting and deleting environment variables (user and system), see the appzenvedit command line utility in the AppZero Reference
Guide.
User/Group Accounts
You can view user and group account information, such as SIDs and names, associated with a Windows user or group account. This is useful if this information is
required by the application migration process.
You can select user or group accounts using the Remote Accounts tab of the AppZero Tether Console or using the CLI. For information about managing user and
group accounts using the appzuser and appzgroup command line utilities, see the AppZero Reference Guide.
If you are using the AppZero command line, account information is exported to an "account bundle" directory on the desktop of the user currently logged in to the
machine. If you are using the AppZero Tether Console, account information is exported to a VAA’s cstore/accounts directory. The name of the directory is
the SID of the user or group account. If this directory already exists, contents will be replaced by the newest operation.
If a user account corresponding to the login credentials of a selected service is bundled with a VAA, information from the account bundle associated with the
service user as well as the user password will be imported automatically when the appliance is docked. If the user doesn’t currently exist on the underlying
operating system, the user will be created using the password specified in the Remote Services tab.
If you select user accounts that do not correspond to a service, these accounts will be imported to the operating system of the destination machine with the default
password "1password!" when you dock the VAA. AppZero recommends that you change the passwords of these accounts at the earliest opportunity.
Config­on­the­fly
Your VAA may contain configuration information from another system and this information may not be compatible with the current system. You can use a
Config­on­the­fly file (StandardCOTF.xml) to update the configuration information so that it works with the current system. You may need to update the
settings in the configuration file with information from the current system.
You specify the Config­on­the­fly file using the appzpedit command line utility to update the following property:
CPROP_CONFIG_FILE
VAA properties (for example, CPROP_SRC_NODENAME) can be used as arguments to the CPROP_CONFIG_FILE property.
StandardCOTF.xml is located as follows:
C:\appliances\<vaa name>\scripts\StandardCOTF.xml
Config­on­the­fly Files and Paths
When you specify a path to a COTF file, note that AppZero supports paths that are relative to the VAA folder. That is, AppZero supports:
".\scripts\StandardCOTF.xml"
or the absolute full path:
"C:\appliance\VAAName\scripts\StandardCOTF.xml"
Config­on­the­fly on Demand
You can execute Config­on­the­fly on demand for an undocked VAA, using the Administrative Console or the command line utility appzcotf. See the
AppZero Reference Guide for more information. You can execute Config­on­the­fly without having to re­tether a VAA. This is useful, for example, if you want
to re­host or re­configure a VAA for which Tether is already disabled.
You can also execute Config­on­the­fly on demand regardless of how a VAA was created; for instance, you can execute Config­on­the­fly on demand after a
compressed VAA file is moved to a new destination server or after you dissolve a VAA.
What Happens if a File Isn't Copied?
The tethering process will fail to copy a file or any file under a folder from the source machine if, for example, a file is locked on the source machine by a service
or a running application or if the connection to the source machine is lost. If this occurs, the tethering process will not mark such a file as "COMPLETE" until the
file is physically copied over from the source machine. If the application requests a file that was not successfully copied over previously, the tethering process will
continue to try to copy the file from the source machine until the copy operation is successful.
http://docs.stage.appzero.com/book/export/html/812
5/45
17/12/2014
AppZero Application Migration Guide
Compressing and Moving a VAA
If a VAA contains a Config­on­the­fly (COTF) file, copy the file into the scripts folder of the VAA before you compress the VAA. You can then manually
update the CPROP_CONFIG_FILE after you uncompress the VAA.
If scripts are required for the tethering process, place the scripts in the VAA's scripts folder before you compress and move the VAA.
If tether is enabled for a VAA and you compress a VAA, the CPROP_USE_TETHER property for the .cap file will be set to "N". Compressing will untether the
VAA and credentials to the source machine will be lost. You will have to enable tether again and specify credentials once again as required after you uncompress
the VAA. The template file in the .cap file may be incomplete because the template file is re­created automatically only when you untether the VAA via the
Tether Console. You can recreate the template file using appztemplatecreate.
Migrating an Application
Are You Ready to Migrate an Application?
Before you migrate an application, make sure that you complete the following technical prerequisites.
Install AppZero
Install AppZero software on the destination machine. AppZero is not required on the source machine. You must have appropriate credentials to install AppZero.
AppZero must run on a supported version of the Windows Operating System as follows:
Windows Server 2008 (64­bit)
Windows Server 2008 R2
Windows Server 2012
Windows Server 2012 R2
Credentials
The user must be logged in to the remote machine as a member of the Administrators Group. A user may proceed with a migration if:
For Windows Server 2003 source machines, they are a member of the Administrators Group
For Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2 , they are a member of the Administrators Group
AND if User Account Control (UAC) is enabled, the reigstry key
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\LocalAccountTokenFilterPolicy
is set to 1 to allow the user to be elevated.
Alternatively, you can add the key value by means of a .reg file located in the extras folder. Copy
add_LocalAccountTokenFilterPolicy.reg to the source machine and then double­click the file. To remove the key value, copy
remove_LocalAccountTokenFilterPolicy.reg to the source machine and then double­click the file.
For assistance with administrator credentials, contact your system administrator.
Start Windows "Server" Service
The Windows Server service supports file, print, and named­pipe sharing over the network for a computer. If this service is stopped, these functions will be
unavailable. If this service is disabled, any services that depend on it will fail to start. The Server service must be started on the source machine before you start a
migration.
Connectivity ­ Open Ports 445 and 80
Check that there is connectivity end­to­end from the destination server to the source on port 445; end­to­end means that that the port is open at the Windows
firewalls, at the cloud­instance firewalls, and at any perimeter firewalls between the two servers. For IIS migrations, make sure that port 80 is open because it is
required by Web Deploy.
If use of port 445 is not permitted on the network or a concern, use a virtual private network (VPN) to establish connectivity between the destination and source
machines.
Open Ports on the Destination Machine Firewall
Open appropriate ports on the destination machine firewall to ensure that the application can be reached once it is migrated. SQL Server, for example, requires
port 1433 by default. Microsoft IIS applications use port 80 by default. Other applications or database servers may require different ports. For more information,
consult application documentation and/or contact AppZero Support.
Security Options
The destination machine may require that the "LAN Manager authentication level" setting be set to "Send LM & NTLM responses". This setting may be required
if :
http://docs.stage.appzero.com/book/export/html/812
6/45
17/12/2014
AppZero Application Migration Guide
a machine has been removed from the domain, OR
Active Directory is unavailable, AND
the source machine is Windows Servier 2000 and 2003
You can test whether this prerequisite applies to your situation. From the destination machine, try to access the UNC path to the source machine (i.e., \\
<sourcemachine>\c$). You will be prompted for credentials to connect to the source machine. If authentication is successful and you can see the C: drive of
the source machine, then AppZero Tether connection will succeed and you may ignore this prerequisite.
1. At the Start menu, type secpol.msc in the search line and press Enter. The Local Security Policy editor opens.
2. Double­click Local Policies.
3. Click Security Options.
4. Double­click Network Security: LAN Manager authentication level.
5. Select Send LM & NTLM responses, and then click OK.
6. Close the Local Security Policy editor.
Antivirus Software
Do not install antivirus software or "endpoint security" agents on the destination machine. These agents interfere with AppZero software. Remote services will not
be retrieved if communication with the source machine is interrupted during the tethering process (for example, if the firewall on the source machine is enabled
while tether is in progress).
Do not install such software on the destination machine until after the migration, including Dissolve, is complete. After you have run Dissolve successfully on the
final destination machine, you can install antivirus software.
Each time you dock a VAA, AppZero performs an antivirus check and alerts you if antivirus software is found. This alert does not interfere with the docking
process.
You can view the Precheck Report in the AppZero directory if you want to see the result of the antivirus check.
For example:
Local Antivirus Installed: Yes
*Ad­Aware Antivirus
Destination Server Capacity
Make sure that the destination server or servers have adequate capacity to run the application you are migrating. That is, the destination servers must have
equivalent or greater capacity than the source server:
equal or greater number of CPU cores
equal or greater available memory (RAM)
equal or greater available disk space, or if you will be running Dissolve, twice the available disk space
same number of disks, each of them with equal or greater size and with the same drive letter as on the source server
Make sure that the drive on the destination server where the VAA will be created (by default, C:\appliances), has enough space to contain the entire application,
meaning the sum of the above drive capacities actually required by the application.
Operating System Compatibility
The operating systems of the source and destination machines must both be server operating systems.
AppZero supports 64­bit operating systems destinations.
The source application to be migrated must reside on a supported source machine operating system. The following versions of Windows are supported as source
machine environments:
Windows Server 2003 (32­bit and 64­bit)
http://docs.stage.appzero.com/book/export/html/812
7/45
17/12/2014
AppZero Application Migration Guide
Windows Server 2003 R2 (32­bit and 64­bit)
Windows Server 2008 (32­bit and 64­bit)
Windows Server 2008 R2
Windows Server 2012
Windows Server 2012 R2
The operating system version of the destination machine must be greater than the source operating system version, as follows:
Version
Build
Number
Number
Windows Server 2012 R2
6.3
.9600
Windows Server 2012
6.2
.9200
Windows Server 2008 R2
64­bit
6.1
.7601
Windows Server 2008
6.0
.7601
Operating System
Cross­Architecture Tethering
AppZero supports 64­bit operating systems destinations.
You can tether an application that is installed on a machine running Windows Server 2003 Service Pack 2 x86 to a destination machine running Windows Server
2008 x64, 2008 R2 x64, Windows 2012 x64, or Windows 2012 R2 x64. AppZero does not support migrating an application in the reverse direction, that is, from a
64­bit machine to a 32­bit machine.
.NET Framework 4.0
Verify whether .NET Framework version 4.0 or greater is installed on the source machine. If so, you must install .NET Framework 4.0 or 4.5 on the destination
machine before you perform a migration. On Windows Server 2012 R2, it is not possible to install version 4.0: you must install version 4.5.
Domain Name
Check the domain name on the source machine. If the application that you want to migrate has users that authenticate through the domain, then add the destination
machine to this domain.
Applications on a Remote or Removable Drive
The application that you want to include in the VAA must reside on the computer where AppZero is installed. It may not reside on a remote server and its
components may not be accessed via mapped network drives, UNC locations, or removable drives.
Multiple VAAs from Different Sources
You can have multiple VAAs from different sources on one machine and multiple VAAs from different sources that use IIS on one machine; however, only one
VAA can run at a time.
Schedule a Maintenance Window for Your Application
Schedule a maintenance window for the application you will migrate so that the application can be stopped and shut down just prior to migration.
Running a Pre­Migration Check
You can run a command line utility called appzprecheck.exe to verify whether the source and destination machines comply with the prerequisites listed in
Are You Ready to Migrate an Application?
appzprecheck is also run automatically when you attempt to connect to the source machine using the Tether Console or the Administrative Console. If
appzprecheck fails, an error message is displayed. You can view the Precheck Report to determine what the problem is as follows:
click the link displayed in the Tether Console, or
open the PreCheck report in the appliance ctrack/log folder, or
click the Precheck Report tab in the Appliance Logs tab in the Administrative Console
http://docs.stage.appzero.com/book/export/html/812
8/45
17/12/2014
AppZero Application Migration Guide
What If There's a Problem in the Precheck Report?
If the Precheck Report lists a problem or problems that will impede application migration, see Precheck Report in the AppZero Troubleshooting Guide for
guidance about how to resolve specific issues.
Sample Precheck Report
****AppZero Version****
6.0SP6 x64 (build:0xc3688efa)
****Port Status****
Status of port 445
*Local Port 445: Open
*Remote Port 445: Open
Status of port 80
*Remote Port 80: Open
****Local and Remote Machine Settings****
Domain Match: No
*Local Domain Name: WORKGROUP
*Remote Domain Name: trigence.com
OS Viable: Yes
*Local OS Ver: 6.3.9600
*Remote OS Ver: 5.2.3790
System Type Match: Yes
*Local: Server
*Remote: Server
System Root Drive Match: Yes
*Local: C:
*Remote: C:
.Net Framework Viable: Yes
*Local .Net Framework: 4.5
*Remote .Net Framework: 4.0
Web Deploy:
*Local: Microsoft Web Deploy 3.5 is installed.
*Remote: Microsoft Web Deploy 3.5 is installed.
SID Accounts:
*Local Account is verified as an Administrator
*Remote Account is verified as an Administrator
****Remote Machine Only Settings****
Remote Administrative Shares Enabled: Yes
Cached Logins: 10
IIS URL Rewrite Module: Not Installed
****Local Machine Only Settings****
LAN Manager Authentication Level: Invalid
*Value is undefined, should be "Send LM and NTLM Responses"
Shortnames on C: Enabled
IIS URL Rewrite Module: Not Installed
Local Antivirus Installed: No
Remote Antivirus Installed: No
To Run appzprecheck
1. Double­click the AppZero CLI shortcut on your desktop. A command prompt window opens.
2. Run the following command:
appzrecheck server username password [/O OutputDirectory]
Where
server is the IP address or machine name of the remote machine
username is the user name for the Administrator account on the remote machine.
password is the password for the Administrator account on the remote machine.
outputDirectory is the directory to which you want to write the file. Optional.
After you run the command, any issues are listed in the PreCheckReport.txt file located in the AppZero directory.
http://docs.stage.appzero.com/book/export/html/812
9/45
17/12/2014
AppZero Application Migration Guide
To Migrate an Application Using AppZero Tether Console
IMPORTANT!
You must be logged in as the System Administrator on the destination machine.
Before you migrate an application, complete the requirements listed in Are You Ready to Migrate an Application?
Notes
Remote services will not be retrieved if communication with the source machine is interrupted during the tethering process. This may occur for a number of
reasons; for example, if the firewall on the source machine is enabled while tethering is in progress. If remote services are not retrieved, try any of the
following: disable the firewall on the source machine; make sure that the Remote Registry service is enabled on the source machine; make sure that the user
credentials you specify to connect to the source machine are correct; check the Tether log. Once you have identified the issue, connect to the source
machine again.
Some products or product components do not appear in the Remote Products tab in the Tether Console. For example, Oracle 11g does not appear in the list
because Windows does not understand it as an installed product. Oracle 11g does not register itself or leverage any Windows mechanisms related to
installation and is therefore not recognized by the operating system as being installed. Therefore, Oracle 11g will not appear in the Remote Products list
but will be listed in Remote Services and Remote Accounts lists on the Tether Console. Make sure that you select services for such a product in the
Remote Services list.
To Migrate an Application Using the AppZero Tether Console
1. Double­click the Tether Console desktop shortcut icon on your desktop or click Start>AppZero>Tether Console. AppZero Tether Console opens.
2. In the VAA Name field, enter the full path and name of the VAA you want to create:
C:\appliances\VAA
Where VAA is the name of the appliance. Click outside the VAA Name field.
http://docs.stage.appzero.com/book/export/html/812
10/45
17/12/2014
AppZero Application Migration Guide
3. In the Source Name field, specify the IP address or name of the source machine you want to connect to. Specify only an Administrator account.
Alternatively, click the Query Networks button to display a list of machines on your network, and then select a machine to populate the Source Name
field.
4. In the Administrator Username field, type the username of the local administrator account on the source machine you specified in step 3. The default
username is Administrator.
5. Click the Find Applications button. If credentials are valid, AppZero Tether retrieves all remote applications, services, and user/group account information
and displays this information in the tabs in the bottom half of the AppZero Tether Console window. If credentials fail or prerequisites have not been met for
tethering, an error message is displayed. You can view the Precheck Report by clicking the precheck report link to determine what the problem is.
6. In the Remote Products tab, review the list of remote applications. Right­click the list and then click Details to see a legend that explains whether AppZero
supports the migration of products as follows:
Green: the application is supported
Yellow: the application can be migrated using scripts
Red: AppZero does not support migration of the application
Blue: unknown
7. Select the product or products you want to migrate. When you click away from the list, AppZero Tether automatically selects all user/group accounts,
services, and executables associated with the installed application and displays these in the Remote Services and Remote Accounts tabs.
8. Click the Remote Services tab and review the remote services that were automatically selected for the VAA.
Select services as appropriate.
Edit the User Name and Password for a service as appropriate. Note that you are setting a password only; AppZero does not validate a password against the
original password associated with the source machine. You cannot edit passwords after you click Start Tether. Service User Names must be in the format
domain\uid, where uid is the user identifier. This is a restriction of the Microsoft Win32 functions for working with the Service Control Manager
(SCM), which is used by AppZero.
If you select a service and the service is started on the remote machine, the row will be red and the Remote Status column will display "Started". Stop the
service before tethering by right­clicking the service and then selecting Stop Remote Service. If you do not stop remote services, tethering will not succeed
http://docs.stage.appzero.com/book/export/html/812
11/45
17/12/2014
AppZero Application Migration Guide
in step 11 below.
If you select a service and the service already exists on the underlying operating system, the row will be grey and the Remote Status column will display
"CONFLICT". Resolve the conflict and then press F5 to refresh the list.
If you hover over a service in the list, a tool tip will display which selected service, if any, requires this service.
9. Click the Remote Accounts tab and select user and group accounts as appropriate. If you select user accounts that do not correspond to a service, these
accounts will be imported to the operating system of the destination machine with the default password "1password!" when you dock the VAA. AppZero
recommends that you change the passwords of these accounts at the earliest opportunity.
10. Optionally, specify a Config­on­the­fly (COTF) file by enabling any of the following radio buttons:
Standard ­ AppZero Tether loads the standard COTF file (C:\appliances\<vaa name>\scripts\StandardCOTF.xml) and passes to the file
the source name you specified in step 3.
Custom ­ select or specify a customized COTF file, for example: MyCustomCOTF.xml.
AppZero supports paths that are relative to the VAA folder. That is, AppZero supports:
".\scripts\StandardCOTF.xml"
or the absolute full path:
"C:\appliance\VAAName\scripts\MyCustomCOTF.xml"
You can also specify only the file name of the COTF file if the file is in the scripts folder. For example:
"StandardCOTF.xml"
11. When you are ready to tether, click the Start Tether button. Note that the pre­populate portion of the tether process may take some time.
12. Once the VAA docks, click the Services tab. Only the services you selected for the VAA are displayed. Right­click each service and click Start to start the
service. The status of the service changes to "Starting" and the Tether Monitor icon in the Windows Taskbar spins and blinks to show that data is being
copied from the source machine. If a service cannot be started, an error message is displayed at the bottom of the Tether Console window.
13. If you need to make changes to the VAA, click the Reset button. Click Yes at the prompt. This stops services, undocks the VAA, and removes Tether
information from the VAA and returns the VAA to the condition it was in before the Tether process started. Repeat steps 6 to 12 as required.
Note: If you want to connect to the source machine with a different set of credentials after you have found applications, you must first make sure that any VAAs
tethered to the source machine are undocked then log out of the current Windows session. You can then use the Administrative Console to modify your VAA.
Alternatively, log out, discard your VAA and start again using Tether Console.
14. You are now ready to launch the application so you can exercise the main components of the application and test it while it is tethered. Click the Launch
Application button to select an application associated with a selected remote product or open the AppZero command prompt. The Select an Application
window opens. Do one of the following:
Select an application from the list, and then click Select. To view all applications associated with the selected product in the Start Menu of the source
machine, enable View All. Note that ODBC Manager is available in the Select an Application window if required for your application. The selected
application opens when you click Select.
Select AppZero Command Prompt. The AppZero command prompt opens.
http://docs.stage.appzero.com/book/export/html/812
12/45
17/12/2014
AppZero Application Migration Guide
15. Exercise the main components of your application. See Running and Exercising Your Application for more information.
16. As required, use AppZero Tether Monitor to monitor Tether activity and get an idea of when application components have been fully copied from the
source machine. For more information, see Monitoring Migration.
17. When you are satisfied that the main components of your application have been exercised and migrated, do the following:
Close your application.
Click the Services tab, and then right­click each service and select Stop.
18. Click the Finish Tether button. This undocks the VAA and exits AppZero Tether Console.
Once you have completed Tether using AppZero Tether Console, you will use the Administrative Console to manage your VAA as required. For more
information, see the AppZero Administration Guide.
See Also:
To Migrate an IIS Application Using AppZero Tether Console
To Dissolve an Application
To Migrate an Application Using the AppZero CLI
IMPORTANT!
You must be logged in as the System Administrator on the destination machine.
Before you migrate an application, complete the requirements listed in Are You Ready to Migrate an Application?
Note
Remote services will not be retrieved if communication with the source machine is interrupted during the tethering process. This may occur for a number of
reasons; for example, if the firewall on the source machine is enabled while tethering is in progress. If remote services are not retrieved, try any of the
following: disable the firewall on the source machine; make sure that the Remote Registry service is enabled on the source machine; make sure that the user
credentials you specify to connect to the source machine are correct; check the Tether log. Once you have identified the issue, connect to the source
machine again.
To Start Remote Registry service on the Source Machine
Remote Registry Service must be started on the source machine to migrate an application.
Membership in the local Administrators group, or equivalent, on the remote computer is the minimum required to complete this procedure.
1. On the source machine, open a command prompt window.
2. Execute:
sc <name of server> start RemoteRegistry
To Migrate an Application Using the AppZero CLI
1. Create a VAA. At the command prompt, enter the following:
>appzcreate <VAA> /E
where <VAA> is the full name and path of the appliance.
2. Enable Tether: enter the following at the command prompt:
>appzpedit <VAA> CPROP_USE_TETHER Y
where <VAA> is the full name and path of the appliance. The VAA property is case sensitive.
3. Specify information for connecting to the source machine: the source machine name, username, and password.
4. To enable Config­on­the­fly, enter Y. For information about how to create a Tether Config­on­the­fly file, see the AppZero Reference Guide.
5. Enter the path to the Config­on­the­fly file. For example:
appzpedit C:\appliances\<VAA>
CPROP_CONFIG_FILE <path to config file> <parameters>
If you do not specify the complete path for the COTF file, AppZero automatically looks for it in the VAA\scripts directory. For example, you
can specify:
"StandardCOTF.xml" CPROP_SRC_NODENAME
6. At the command prompt on the destination machine, enter the following to list services:
>appzsvc <VAA> list
http://docs.stage.appzero.com/book/export/html/812
13/45
17/12/2014
AppZero Application Migration Guide
A list of the services of the specified VAA on the source machine is displayed.
7. Run the following command to copy a service from the source machine to the VAA on the destination machine:
>appzsvc <VAA> add <service_name>
8. Run the following command:
>appzsc <VAA> config <service_name> /U <Administrator> /P <password>
Note that you are setting a password only via the <password> argument; AppZero does not validate a password against the original password associated with
the source machine.
9. As appropriate, list user accounts on the source machine:
>appzuser /L server username password
10. If you need to export user accounts to the VAA, enter the following:
>appzuser /X server username password account [appliance]
If you select user accounts that do not correspond to a service, these accounts will be imported to the operating system of the destination machine with the
default password "1password!" when you dock the VAA. AppZero recommends that you change the passwords of these accounts at the earliest
opportunity.
11. If you performed steps 9 and 10, import user accounts to the destination machine:
>appzuser /I bundle path
12. As appropriate, list group accounts on the source machine:
>appzgroup /L server username password
13. If you need to export group accounts to the VAA, enter the following:
appzgroup /X server username password account [appliance]
14. If you performed steps 12 and 13, import group accounts to the destination machine as follows:
>appzgroup /I bundle path
15. Dock the VAA:
>appzdock <VAA>
16. Start services:
>appzstart <VAA> <service_name>
17. Run and exercise the application.
18. When you are satisfied that you have exercised the main components of the application, stop the VAA services:
>appzstop <VAA> <service_name>
19. Undock the VAA:
>appzundock <VAA>
20. Disable Tether by entering the following (the VAA property is case sensitive):
>appzpedit <VAA> CPROP_USE_TETHER N
21. Regenerate the VAA template by entering: Y.
22. Test the VAA to make sure that the application is behaving as expected, services are starting, and so on. Run the appzdock, appzstart, and appzrun
commands.
23. Run the appzundock, appzstop commands.
24. Dissolve the VAA:
>appzdissolve <VAA>
For information about Dissolve, see About Dissolve.
To Migrate MS SQL Server
IMPORTANT!
You must be logged in as the System Administrator on the destination machine.
Before you migrate an application, complete the requirements listed in Are You Ready to Migrate an Application?
The SQL Rehosting Script does NOT work with SQL Server 2000, specifically SQL Server Database Engine versions 8.00.xxxx. To determine what
http://docs.stage.appzero.com/book/export/html/812
14/45
17/12/2014
AppZero Application Migration Guide
version of the Database Engine you're running, follow the steps outlined here: http://support.microsoft.com/kb/321185. The SQL Rehosting Script requires
that sqlcmd.exe be part of the tools installed, and will run only on SQL Database Engine versions 9.00.xxxx and higher.
Note:
Remote services will not be retrieved if communication with the source machine is interrupted during the tethering process. This may occur for a number of
reasons; for example, if the firewall on the source machine is enabled while tethering is in progress. If remote services are not retrieved, try any of the
following: disable the firewall on the source machine; make sure that the Remote Registry service is enabled on the source machine; make sure that the user
credentials you specify to connect to the source machine are correct; check the Tether log. Once you have identified the issue, connect to the source
machine again.
To Migrate SQL Server
1. Double­click the Tether Console desktop shortcut icon on your desktop or click Start>AppZero>Tether Console. AppZero Tether Console opens.
2. In the VAA Name field, enter the full path and name of the VAA you want to create. For example: C:\appliances\VAA, where VAA is the name of
the application. Click outside the VAA Name field.
3. In the Source Name field, specify the IP address or name of the source machine you want to connect to. Specify only an Administrator account.
Alternatively, click the Query Networks button to display a list of machines on your network,and then select a machine to populate the Source Name field.
4. In the Administrator Username field, type the username of the local administrator account on the source machine you specified in the previous step. The
default username is Administrator.
5. Click the Find Applications button. If credentials are valid, AppZero Tether retrieves all remote applications, services, and user/group account information
and displays this information in the tabs in the bottom half of the AppZero Tether Console window.
6. In the Remote Products tab, select the Microsoft SQL Server application packages. Also, select the packages for Visual Studio and Microsoft Office Web
Components. When you click away from this tab, AppZero Tether automatically selects all user/group accounts, services, and executables associated with
the installed application and displays these in the Remote Services and Remote Accounts tabs.
7. Click the Remote Services tab and review the remote services that were automatically selected for the VAA. Make note of the main SQL Server service
name, e.g., MSSQLSERVER or MSSQL$EXPRESS. Select any other services that may be related to your product if it is not already selected.
http://docs.stage.appzero.com/book/export/html/812
15/45
17/12/2014
AppZero Application Migration Guide
If you select a service and the service is started on the remote machine, the row will be red and the Remote Status column will display "Started". Stop the
service before tethering by right­clicking the service and then selecting Stop Remote Service. If you do not stop remote services, tethering will not
succeed.
If you select a service and the service already exists on the underlying operating system, the row will be grey and the Remote Status column will display
"CONFLICT". Resolve the conflict and then press F5 to refresh the list.
8. Click the Remote Accounts tab to review users and group accounts that have been selected. Select other user and accounts that you think are required for
your product. If you select user accounts that do not correspond to a service, these accounts will be imported to the operating system of the destination
machine with the default password "1password!" when you dock the VAA. AppZero recommends that you change the passwords of these accounts at the
earliest opportunity.
9. Optionally, specify a Config­on­the­fly (COTF) file by enabling any of the following radio buttons:
Standard ­ AppZero Tether loads the standard COTF file (C:\appliances\<vaa name>\scripts\StandardCOTF.xml) and passes to the file
the name of your source machine.
Custom ­ select a custom COTF file. Click the browse button to find and specify an XML file. Select a file and click Open.
10. When you are ready to tether, click the Start Tether button.
11. You can now run the SQL rehosting scripts. Click the Launch Application button in the Tether Console, and then select AppZero Command Prompt.
Type the following:
cd \Program Files\AppZero\EXTRAS\SQLServer
SQLReHostScript.bat <DB service name>
<DB service name> is the service name retrieved in step 7. You must specify it as an argument. For instance, for SQL Express:
cd \Program Files\AppZero\EXTRAS\SQLServer
SQLRehostScript.bat MSSQL$EXPRESS
Once the script has completed, the second command prompt window that appeared will close automatically.
http://docs.stage.appzero.com/book/export/html/812
16/45
17/12/2014
AppZero Application Migration Guide
Note: If you are migrating Microsoft SQL Server 2008, SQL Server 2008 R2, or SQL Server 2005 Enterprise Edition or Standard Edition less than version SP4
on Windows Server 2012 R2, Windows may display a compatibility prompt. Select Run the Program without getting help and proceed with rehosting; the
rehosting script will execute successfully.
12. On the Remote Services tab in the Tether Console, right­click the services and select Start.
13. When the services start, click the Launch Application button.
14. Navigate to the SQL applications you want to launch.
15. Exercise the applications as much as possible.
When you are satisfied that the main components of your application have been migrated, do the following:
Close your application.
16. Click the Remote Services tab, and then right­click each service and select Stop.
17. Click the Finish Tether button. This exits AppZero Tether Console.
18. Run Dissolve:
>appzdissolve Appliance [/A] /M:<SID_in_appliance>=<SID_in_host>,...][/M:?] [/V] [/F]
To Migrate SQL Server Configuration Manager MMC
IMPORTANT!
You must be logged in as the System Administrator on the destination machine.
Before you migrate an application, complete the requirements listed in Are You Ready to Migrate an Application?
Note:
Remote services will not be retrieved if communication with the source machine is interrupted during the tethering process. This may occur for a number of
reasons; for example, if the firewall on the source machine is enabled while tethering is in progress. If remote services are not retrieved, try any of the
following: disable the firewall on the source machine; make sure that the Remote Registry service is enabled on the source machine; make sure that the user
credentials you specify to connect to the source machine are correct; check the Tether log. Once you have identified the issue, connect to the source
machine again.
To Migrate SQL Server Configuration Manager MMC
1. Double­click the Tether Console desktop shortcut icon on your desktop or click Start>AppZero>Tether Console. AppZero Tether Console opens.
2. In the VAA Name field, enter the full path and name of the VAA you want to create. For example: C:\appliances\VAA, where VAA is the name of the
application. Click outside the VAA Name field.
http://docs.stage.appzero.com/book/export/html/812
17/45
17/12/2014
AppZero Application Migration Guide
3. In the Source Name field, specify the IP address or name of the source machine you want to connect to. Specify only an Administrator account.
Alternatively, click the Query Networks button to display a list of machines on your network and then select a machine to populate the Source Name
field.
4. In the Administrator Username field, type the username of the local administrator account on the source machine you specified in the previous step. The
default username is Administrator.
5. Click the Find Applications button. If credentials are valid, AppZero Tether retrieves all remote applications, services, and user/group account information
and displays this information in the tabs in the bottom half of the AppZero Tether Console window.
6. In the Remote Products tab, select the Microsoft SQL Server application packages. Also, select the packages for Visual Studio and Microsoft Office Web
Components. When you click away from this tab, AppZero Tether automatically selects all user/group accounts, services, and executables associated with
the installed application and displays these in the Remote Services and Remote Accounts tabs.
7. Click the Remote Services tab and review the remote services that were automatically selected for the VAA. Make note of the main SQL Server service
name, e.g., MSSQLSERVER or MSSQL$EXPRESS. Select any other services that may be related to your product if it is not already selected.
If you select a service and the service is started on the remote machine, the row will be red and the Remote Status column will display "Started". Stop the
service before tethering by right­clicking the service and then selecting Stop Remote Service. If you do not stop remote services, tethering will not
http://docs.stage.appzero.com/book/export/html/812
18/45
17/12/2014
AppZero Application Migration Guide
succeed.
If you select a service and the service already exists on the underlying operating system, the row will be grey and the Remote Status column will display
"CONFLICT". Resolve the conflict and then press F5 to refresh the list.
8. Click the Remote Accounts tab to review users and group accounts that have been selected. Select other user and accounts that you think are required for
your product. If you select user accounts that do not correspond to a service, these accounts will be imported to the operating system of the destination
machine with the default password "1password!" when you dock the VAA. AppZero recommends that you change the passwords of these accounts at the
earliest opportunity.
9. Optionally, specify a Config­on­the­fly (COTF) file by enabling any of the following radio buttons:
Standard ­ AppZero Tether loads the standard COTF file (C:\appliances\<vaa name>\scripts\StandardCOTF.xml) and passes to the file
the name of your source machine.
Custom ­ select a custom COTF file. Click the browse button to find and specify an XML file. Select a file and click Open.
10. When you are ready to tether, click the Start Tether button.
11. You can now run the SQL rehosting scripts. Click the Launch Application button in the Tether Console, and then select AppZero Command Prompt.
Type the following:
cd \Program Files\AppZero\EXTRAS\SQLServer
SQLReHostScript.bat <DB service name>
<DB service name> is the service name retrieved in step 7. You must specify it as an argument. For instance, for SQL Express:
cd \Program Files\AppZero\EXTRAS\SQLServer
SQLRehostScript.bat MSSQL$EXPRESS
Once the script has completed, the second command prompt window that appeared will close automatically.
12. On the Remote Services tab in the Tether Console, right­click the services and select Start.
13. When the services start, click the Launch Application button.
14. Navigate to the SQL applications you want to launch.
15. Exercise the applications as much as possible.
16. When you are satisfied that the main components of your application have been migrated, do the following:
Close your application.
Click the Remote Services tab, and then right­click each service and select Stop.
17. Click the Finish Tether button. This exits AppZero Tether Console.
18. Run Dissolve:
>appzdissolve Appliance [/A] /M:<SID_in_appliance>=<SID_in_host>,...][/M:?] [/V] [/F]
http://docs.stage.appzero.com/book/export/html/812
19/45
17/12/2014
AppZero Application Migration Guide
19. Select the SQL Configuration Manager from the Start menu.
Performing a Staged Application Migration
A staged application migration involves three machine: migrating an application from a source machine to an intermediary machine, and from the intermediary
machine to a final destination machine via a compressed VAA, called a .cap file.
Note:
You cannot migrate an application from a 32­bit machine to an intermediary 32­bit machine and then on to a final 64­bit destination machine; AppZero supports
only a staged application migration process that goes from a 32­bit machine to a 64­bit machine, including at the intermediary or staged step.
The following procedure uses Microsoft SQL Server as an example.
To Migrate an Application to a Third machine
1. Complete all prerequisites listed in Are You Ready to Migrate an Application, and then tether your application to the intermediary machine using the instructions in To
Migrate MS SQL Server.
2. Optionally, set the computer name of the intermediary machine to the same computer name as the destination machine.
3. When you have completed the migration, open the Administrative Console by double­clicking the Administrative Console shortcut on your desktop.
4. Click the Undock button if necessary, then click the Compress button. This creates the .cap file.
5. Retrieve the .cap file. Go to:
C:\appliances\<VAA_Name>.cap.
6. Copy the compressed file to the final destination machine in C:\appliances\.
7. On the destination machine, open the Administrative Console.
8. Select the compressed file, and then click Uncompress.
9. If the intermediary and destination machine names are the same, skip this step and go to step 16. Select the uncompressed VAA, and then click the COTF button.
10. Browse to the path of your COTF file. The StandardCOTF.xml file is located in C:\appliances\VAA\scripts.
11. Enter the host name of the intermediary machine in the Arguments field, then click OK.
12. Click the Dock button to dock the VAA.
13. You can now run the SQL rehosting scripts. Right­click the VAA and select Launch Prompt. This opens the AppZero Command Prompt. Type the following:
cd \Program Files\AppZero\EXTRAS\<VAA name>
SQLReHostScript.bat <DB service name>
<DB service name> is the service name. You must specify it as an argument. For instance, for SQL Express:
cd \Program Files\AppZero\EXTRAS\SQLServer
SQLRehostScript.bat MSSQL$EXPRESS
Once the script has completed, the second command prompt window that appeared will close automatically.
http://docs.stage.appzero.com/book/export/html/812
20/45
17/12/2014
AppZero Application Migration Guide
14. Test the application. See Running and Exercising Your Application for information.
15. When you are satisfied that the application is performing correctly, run Dissolve:
>appzdissolve Appliance [/A] /M:<SID_in_appliance>=<SID_in_host>,...][/M:?] [/V] [/F]
Advanced Filtering Options
Using the sourceid namespace and an exclusion filter, you can exclude a specific path and the files this path contains from migration if you do not want to
copy particular files from the source machine. For example, you might want to exclude log files from being copied from the source machine during a migration, in
order to make the migration process go more quickly.
For information about how to create namespace exclusion filters, see Controlling Namespace Access via Filters and Creating Namespace Access Filters in the
AppZero Administration Guide.
Migrating an IIS Application
Are You Ready to Migrate an IIS Application?
Before you migrate an application, make sure that you complete the following technical prerequisites.
Note:
IIS application migration may fail if the configuration of the source server is invalid. Make sure that the configuration of the source server is correct before you
migrate an application. AppZero cannot guarantee successful migration of an application from a source machine with an invalid configuration.
Install AppZero
Install AppZero software on the destination machine. AppZero is not required on the source machine. You must have appropriate credentials to install AppZero.
AppZero must run on a supported version of the Windows Operating System as follows:
Windows Server 2008 (64­bit)
Windows Server 2008 R2
Windows Server 2012
Windows Server 2012 R2
Credentials
The user must be logged in to the remote machine as a member of the Administrators Group. A user may proceed with a migration if:
For Windows Server 2003 source machines, they are a member of the Administrators Group
For Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2 , they are a member of the Administrators Group
AND if User Account Control (UAC) is enabled, the registry key
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\LocalAccountTokenFilterPolicy
is set to 1 to allow the user to be elevated.
Alternatively, you can add the key value by means of a .reg file located in the extras folder. Copy
add_LocalAccountTokenFilterPolicy.reg to the source machine and then double­click the file. To remove the key value, copy
remove_LocalAccountTokenFilterPolicy.reg to the source machine and then double­click the file.
For assistance with administrator credentials, contact your system administrator.
Start Windows "Server" Service
http://docs.stage.appzero.com/book/export/html/812
21/45
17/12/2014
AppZero Application Migration Guide
The Windows Server service supports file, print, and named­pipe sharing over the network for a computer. If this service is stopped, these
functions will be unavailable. If this service is disabled, any services that depend on it will fail to start. The Server service must be started on the source
machine before you start a migration.
Connectivity ­ Open Ports 445 and 80
Check that there is connectivity end­to­end from the destination server to the source on port 445; end­to­end means that that the port is open at the Windows
firewalls, at the cloud­instance firewalls, and at any perimeter firewalls between the two servers. For IIS migrations, make sure that port 80 is open because it is
required by Web Deploy.
If use of port 445 is not permitted on the network or a concern, use a virtual private network (VPN) to establish connectivity between the destination and source
machines.
Open Ports on the Destination Machine Firewall
Open appropriate ports on the destination machine firewall to ensure that the application can be reached once it is migrated. SQL Server, for example, requires
port 1433 by default. Microsoft IIS applications use port 80 by default. Other applications or database servers may require different ports. For more information,
consult application documentation and/or contact AppZero Support.
Security Options
The destination machine may require that the "LAN Manager authentication level" setting be set to "Send LM & NTLM responses". This setting may be required
if :
a machine has been removed from the domain, OR
Active Directory is unavailable, AND
the source machine is Windows Servier 2000 and 2003
You can test whether this prerequisite applies to your situation. From the destination machine, try to access the UNC path to the source machine (i.e., \\
<sourcemachine>\c$). You will be prompted for credentials to connect to the source machine. If authentication is successful and you can see the C: drive of
the source machine, then AppZero Tether connection will succeed and you may ignore this prerequisite.
1. At the Start menu, type secpol.msc in the search line and press Enter. The Local Security Policy editor opens.
2. Double­click Local Policies.
3. Click Security Options.
4. Double­click Network Security: LAN Manager authentication level.
5. Select Send LM & NTLM responses, and then click OK.
6. Close the Local Security Policy editor.
Antivirus Software
Do not install antivirus software or "endpoint security" agents on the destination machine. These agents interfere with AppZero software. Remote services will not
be retrieved if communication with the source machine is interrupted during the tethering process (for example, if the firewall on the source machine is enabled
while tether is in progress).
Do not install such software on the destination machine until after the migration, including Dissolve, is complete. After you have run Dissolve successfully on the
final destination machine, you can install antivirus software.
Each time you dock a VAA, AppZero performs an antivirus check and alerts you if antivirus software is found. This alert does not interfere with the docking
process.
You can view the Precheck Report in the AppZero directory if you want to see the result of the antivirus check.
For example:
Local Antivirus Installed: Yes
*Ad­Aware Antivirus
http://docs.stage.appzero.com/book/export/html/812
22/45
17/12/2014
AppZero Application Migration Guide
Destination Server Capacity
Make sure that the destination server or servers have adequate capacity to run the application you are migrating. That is, the destination servers must have
equivalent or greater capacity than the source server:
equal or greater number of CPU cores
equal or greater available memory (RAM)
equal or greater available disk space, or if you will be running Dissolve, twice the available disk space
same number of disks, each of them with equal or greater size and with the same drive letter as on the source server
Make sure that the drive on the destination server where the VAA will be created (by default, C:\appliances), has enough space to contain the entire
application, meaning the sum of the above drive capacities actually required by the application.
Operating System Compatibility
The operating systems of the source and destination machines must both be server operating systems. AppZero does not support IIS migrations to desktop
operating systems (Windows XP, Windows Vista, Windows 7, Windows 8, Windows 8.1).
AppZero supports 64­bit operating systems destinations.
The source application to be migrated must reside on a supported source machine operating system. The following versions of Windows are supported as source
machine environments:
Windows Server 2003 (32­bit and 64­bit)
Windows Server 2003 R2 (32­bit and 64­bit)
Windows Server 2008 (32­bit and 64­bit)
Windows Server 2008 R2
Windows Server 2012
Windows Server 2012 R2
The operating system version of the destination machine must be greater than the source operating system version, as follows.
Version
Build
Number
Number
Windows Server 2012 R2
6.3
.9600
Windows Server 2012
6.2
.9200
Windows Server 2008 R2
64­bit
6.1
.7601
Windows Server 2008
6.0
.7601
Operating System
Cross­Architecture Tethering
AppZero supports 64­bit operating systems destinations.
You can tether an application that is installed on a machine running Windows Server 2003 Service Pack 2 x86 to a destination machine running Windows Server
2008 x64, 2008 R2 x64, Windows 2012 x64, or Windows 2012 R2 x64. AppZero does not support migrating an application in the reverse direction, that is, from a
64­bit machine to a 32­bit machine.
.NET Framework 4.0
Verify whether .NET Framework version 4.0 or greater is installed on the source machine. If so, you must install .NET Framework 4.0 or 4.5 on the destination
machine before you perform a migration. On Windows Server 2012 R2, it is not possible to install version 4.0: you must install version 4.5.
Web Deploy 3.5
Web Deploy 3.5 is a tool that simplifies migration, management, and deployment of IIS web servers and web applications. If Web Deploy is required to migrate
an IIS application, AppZero will install it on the destination machine.
If you experience problems with Web Deploy (for example, Web Deployment Agent Service (MsDepSvc) does not start), see Web Deployment Agent Does Not
Start in the AppZero Troubleshooting Guide.
http://docs.stage.appzero.com/book/export/html/812
23/45
17/12/2014
AppZero Application Migration Guide
Microsoft URL Rewrite Module 2.0
The Microsoft URL Rewrite Module 2.0 may be required to migrate an application. URL Rewrite Module 2.0 provides a rule­based rewriting mechanism for
changing requested URLs before they are processed by a web server and for modifying response content before it gets served to a HTTP client.
If the URL Rewrite Module is required, AppZero will automatically install it.
Domain Name
Check the domain name on the source machine. If the application that you want to migrate has users that authenticate through the domain, then add the destination
machine to this domain.
Applications on a Remote or Removable Drive
The application that you want to include in the VAA must reside on the computer where AppZero is installed. It may not reside on a remote server and its
components may not be accessed via mapped network drives, UNC locations, or removable drives.
Multiple VAAs from Different Source Machines
You can have multiple VAAs from different source machines on one machine and multiple VAAs that use IIS on one machine; however, only one VAA can run
at a time.
Schedule a Maintenance Window for Your Application
Schedule a maintenance window for the application you will migrate so that the application can be stopped and shut down just prior to migration.
Running a Pre­Migration Check for an IIS Application Migration
You can run a command line utility called appzprecheck.exe to verify whether the source and destination machines comply with the prerequisites listed in
Are You Ready to Migrate an IIS Application? Run this command before you migrate an application.
appzprecheck is also run automatically when you attempt to connect to the source machine using the Tether Console or the Administrative Console. If
appzprecheck fails, an error message is displayed. You can view the Precheck Report to determine what the problem is as follows:
click the link displayed in the Tether Console, or
open the Precheck report in the appliance ctrack/log folder, or
click the Precheck Report tab in the Appliance Logs tab in the Administrative Console
What If There's a Problem in the Precheck Report?
If the Precheck Report lists a problem or problems that will impede application migration, see Precheck Report in the AppZero Troubleshooting Guide for
guidance about how to resolve specific issues.
To Run appzprecheck
1. Double­click the AppZero CLI shortcut on your desktop. A command prompt window opens.
2. Run the following command:
appzrecheck server username password [/O OutputDirectory]
Where
server is the IP address or machine name of the remote machine
username is the username for the Administrator account on the remote machine.
password is the password for the Administrator account on the remote machine.
outputDirectory is the directory to which you want to write the file. Optional.
After you run the command, any issues are listed in the PreCheckReport.txt file located in the AppZero directory.
http://docs.stage.appzero.com/book/export/html/812
24/45
17/12/2014
AppZero Application Migration Guide
About Migrating an IIS Application
This topic provides information about how to migrate an Internet Information Server (IIS) application.
You can virtualize IIS­based applications using a set of scripts and the procedure in this topic.
The scripts put IIS into a tethered VAA and allow the VAA to pull configuration information from a remote system.
You can use the resulting VAA to migrate the IIS configuration and data from the source machine. The VAA with the new configuration can then be dissolved to
the underlying operating system; configuration files will be either overwritten or merged, depending on the application.
AppZero does not support IIS migrations to desktop operating systems (Windows XP, Windows Vista, Windows 7, Windows 8, and Windows 8.1).
Support for Up­Level Migration of IIS Applications
You can migrate IIS configuration and data from IIS 5.0, 6.0, IIS 7.0 and IIS 7.5 to a destination that is the same or higher IIS version, up to IIS 8.5.
The following versions of IIS are supported.
Operating System
IIS Version
Windows Server 2012 R2
8.5
Windows Server 2012
8.0
Windows Server 2008R2
7.5
Windows Server 2008
7.0
http://docs.stage.appzero.com/book/export/html/812
25/45
17/12/2014
AppZero Application Migration Guide
Windows Server 2003
6.0
Windows Server 2000
5.0
To Migrate an IIS Application Using AppZero Tether Console
IMPORTANT!
You must be logged in as the System Administrator on the destination machine.
Before you migrate an application, complete the requirements listed in Are You Ready to Migrate an IIS Application?
Notes
Remote services will not be retrieved if communication with the source machine is interrupted during the tethering process. This may occur for a number of
reasons; for example, if the firewall on the source machine is enabled while tethering is in progress. If remote services are not retrieved, try any of the
following: disable the firewall on the source machine; make sure that the Remote Registry service is enabled on the source machine; make sure that the user
credentials you specify to connect to the source machine are correct; check the Tether log. Once you have identified the issue, connect to the source
machine again.
Some products or product components do not appear in the Remote Products tab in the Tether Console. For example, Oracle 11g does not appear in the list
because Windows does not understand it as an installed product. Oracle 11g does not register itself or leverage any Windows mechanisms related to
installation and is therefore not recognized by the operating system as being installed. Therefore, Oracle 11g will not appear in the Remote Products list but
will be listed in Remote Services and Remote Accounts lists on the Tether Console. Make sure that you select services for such a product in the Remote
Services list.
If you are migrating from a Windows 2000 Server source machine that has an atypical setup, some of the default paths for the scripts required to migrate an
IIS application will not work and ISS migration will fail. In this case, follow the instructions in Migrating from a Windows 2000 Server with an Atypical
Setup before you perform the steps in this topic.
To Migrate an IIS Application
1. Double­click the Tether Console desktop shortcut icon on your desktop or click Start>AppZero>AppZero Tether Console. AppZero Tether Console
opens.
2. In the VAA Name field, enter the full path and name of the VAA you want to create:
C:\appliances\VAA
Where VAA is the name of the VAA. Click outside the VAA Name field.
3. In the Source Name field, specify the IP address of the source machine you want to connect to. Specify only an Administrator account. Alternatively, click
the Query Networks button to display all machines on your network, and then select a machine to populate the Source Name field.
4. In the Administrator Username field, type the password of the local administrator account on the source machine you specified in step 3. The default
username is Administrator.
http://docs.stage.appzero.com/book/export/html/812
26/45
17/12/2014
AppZero Application Migration Guide
5. To tether the application based on IIS, click the Find Applications button. If credentials are valid, this retrieves all remote applications, services, and
user/group account information and displays this information in the tabs in the bottom half of the AppZero Tether Console window. If credentials fail or
prerequisites have not been met for tethering, an error message is displayed. You can view the precheck report in the AppZero folder to determine what
the problem is and check the Migration log in appliances\<VAA>\ctrack\log\migration.log.
6. In the Remote Products tab, review the list of remote applications. You can right­click the list and then click Details to see a legend that explains whether
AppZero supports the migration of products as follows:
Green: the application is supported
Yellow: the application can be migrated using scripts
Red: AppZero does not support migration of the application
Blue: unknown
7. Select Web Server (IIS) in the Remote Products list. When you click away from this tab, AppZero Tether automatically selects all user/group accounts,
services, and executables associated with the installed application and displays these in the Remote Services and Remote Accounts tabs.
8. Click the Remote Services tab and review the services that were automatically selected for the VAA.
Select more services as appropriate. Do not select IIS services, as they will already be selected.
Edit the User Name and Password for a service as appropriate. Note that you are setting a password only; AppZero does not validate a password against the
original password associated with the source machine. You cannot edit passwords after you click Start Tether. Service User Names must be in the format
domain\uid, where uid is the user identifier. This is a restriction of the Microsoft Win32 functions for working with the Service Control Manager
(SCM), which is used by AppZero.
If you select a service and the service is started on the remote machine, the row will be red and the Remote Status column will display "Started". Stop the
service before tethering by right­clicking the service and then selecting Stop Remote Service. If you do not stop the remote service, tethering will not
succeed in step 13.
If you select a service and the service already exists on the underlying operating system, the row will be grey and the Remote Status column will display
"CONFLICT". Resolve the conflict and then press F5 to refresh the list.
If you hover over a service in the list, a tool tip will display which selected service, if any, requires this service.
9. Click the Remote Accounts tab. The group account IIS_IUSRS in the case of Windows Server 2008 or higher is automatically selected; the group account
IIS_WPG in the case of Windows Server 2003 is automatically selected. Select additional accounts for the VAA as required. If you select user accounts
that do not correspond to a service, these accounts will be imported to the operating system of the destination machine with the default password
"1password!" when you dock the VAA. AppZero recommends that you change the passwords of these accounts at the earliest opportunity.
10. Optionally, specify a Config­on­the­fly (COTF) file by enabling any of the following radio buttons:
Standard ­ AppZero Tether loads the standard COTF file (StandardCOTF.xml) and passes to the file the source name you specified in step 3.
Custom ­ select or specify a customized COTF file, for example: MyCustomCOTF.xml.
AppZero supports paths that are relative to the VAA folder. That is, AppZero supports:
".\scripts\StandardCOTF.xml"
or the absolute full path:
"C:\appliance\VAAName\scripts\MyCustomCOTF.xml"
You can also specify only the file name of the COTF file if the file is in the scripts folder. For example:
"StandardCOTF.xml"
11. When you are ready to tether, click the Start Tether button. Note that the pre­populate procedure may take some time.
http://docs.stage.appzero.com/book/export/html/812
27/45
17/12/2014
AppZero Application Migration Guide
12. Click the Launch Application button, and then select IIS Manager. Note that ODBC Manager is available in the Select an Application window if
required for your application.
The IIS Manager window opens.
13. In Tether Console, click the Remote Services tab. Right­click each service in the list and select Start.
14. If you need to make changes to the VAA, click the Reset button. Click Yes at the prompt. This stops services, undocks the VAA, and removes Tether
information from the VAA and returns it to the condition it was in before tethering. Repeat steps 7 to 13 as required.
Note: If you want to connect to the source machine with a different set of credentials after you have found applications, you must first make sure that any VAAs
tethered to the source machine are undocked then log out of the current Windows session. You can then use the Administrative Console to modify your VAA.
Alternatively, log out, discard your VAA and start again using Tether Console.
15. You are now ready to launch the application so you can exercise the main components of the application and test the application while it is tethered. Click
the Launch Application button to select an application associated with a selected remote product or to open the AppZero command prompt. The Select an
Application window opens. Do one of the following:
Select an application from the list, and then click Select. The selected application opens.
Select AppZero Command Prompt. The AppZero command prompt opens.
16. Exercise the application by connecting to the localhost with a browser. Verify that the features of the application are functioning properly. See Running and
Exercising Your Application for more information.
17. As required, use AppZero Tether Monitor to monitor Tether activity and get an idea of when application components have been fully copied from the
source machine. For more information, see Monitoring Migration.
18. When you are satisfied that the main components of your application have been migrated, do the following:
Close your application.
Click the Remote Services tab, and then right­click each service and select Stop.
19. Click the Finish Tether button. This exits AppZero Tether Console.
20. You are now ready to Dissolve the VAA. Before you run Dissolve, you must use the Windows Service Control Manager on the destination machine to stop
all IIS services. For information about dissolving IIS applications, see About Dissolve and To Dissolve an Application.
To Migrate an IIS Application Using the AppZero CLI
IMPORTANT!
You must be logged in as the System Administrator on the destination machine.
Before you migrate an application, complete the requirements listed in Are You Ready to Migrate an IIS Application?
http://docs.stage.appzero.com/book/export/html/812
28/45
17/12/2014
AppZero Application Migration Guide
Notes
Both destination and source machines must be server machines. AppZero does not support IIS migrations to desktop operating systems (Windows XP,
Windows Vista, Windows 7, Windows 8).
Remote services will not be retrieved if communication with the source machine is interrupted during the tethering process. This may occur for a number of
reasons; for example, if the firewall on the source machine is enabled while tethering is in progress. If remote services are not retrieved, try any of the
following: disable the firewall on the source machine; make sure that the Remote Registry service is enabled on the source machine; make sure that the user
credentials you specify to connect to the source machine are correct; check the Tether log. Once you have identified the issue, connect to the source
machine again.
If you are migrating from a Windows 2000 Server source machine that has an atypical setup, some of the default paths for the scripts required to migrate an
IIS application will not work and ISS migration will fail. In this case, follow the instructions in Migrating from a Windows 2000 Server with an Atypical
Setup before you perform the steps in this topic.
To Start Remote Registry Service on the Source Machine
Remote Registry Service must be started on the source machine to migrate an application.
Membership in the local Administrators group, or equivalent, on the remote computer is the minimum required to complete this procedure.
1. On the source machine, open a command prompt window.
2. Execute:
sc <name of server> start RemoteRegistry
To Migrate an IIS Application Using the AppZero CLI
1. Create a VAA. At the command prompt, enter the full path and name of the VAA. For example:
>appzcreate C:\appliances\<VAA> /E
2. At the command prompt, specify a default application for the VAA:
>appzpedit C:\appliances\<VAA> CPROP_DEFAULT_APP C:\Windows\System32\inetsrv\InetMgr.exe
3. Synchronize roles and features between the source machine and destination machine. Run the following at the command prompt:
>appzmigrate /P hostname username password VAA
where hostname is the name of the source machine, username is the name of the Administrator account on the source machine,
password is the password of the Administrator account;
VAA is the full path and name of the VAA.
4. Check for migration errors and resolve any errors.
5. Note the IIS services listed in the uos_services file in the VAA scripts folder, so you can include them in steps 9 and 18 below.
6. At the command prompt, enable Tether:
>appzpedit C:\appliances\<VAA>
CPROP_USE_TETHER Y <source> <username> <password>
7. As appropriate, specify the path to the Config­on­the­fly (COTF) file:
appzpedit C:\appliances\<VAA>
CPROP_CONFIG_FILE <path to config file> <parameters>
A standard COTF file is located in C:\appliances\<name of VAA>\scripts\StandardCOTF.xml. If you do not specify the complete
path for the COTF file, AppZero automatically looks for it in the VAA\scripts directory. For example, you can specify:
"StandardCOTF.xml" CPROP_SRC_NODENAME
8. List VAA services:
>appzsvc c:\appliances\<VAA> list
9. Add VAA services:
>appzsvc c:\appliances\<VAA> add <application service>
10. As appropriate, list user accounts on the source machine:
appzuser /L server username password
11. If you need to export user accounts to the VAA, enter the following:
>appzuser /X server username password account [appliance]
If you select user accounts that do not correspond to a service, these accounts will be imported to the operating system of the destination machine with the
default password "1password!" when you dock the VAA. AppZero recommends that you change the passwords of these accounts at the earliest
opportunity.
http://docs.stage.appzero.com/book/export/html/812
29/45
17/12/2014
AppZero Application Migration Guide
12. As required, specify user credentials for services:
>appzsc C:\appliances\<VAA> config <services_name> /U <services_user> /P <password>
13. List the group accounts on the source machine:
>appzgroup /L server username password
15. If you need to export group accounts (in addition to IIS_IUSRS or IIS_WPG, which are added automatically by AppZero) to the VAA, enter their SIDs
and then export the group accounts:
>appzgroup /X server username password account [appliance]
16. Import the group accounts you exported in step 15 to the destination machine as follows:
>appzgroup /I bundle path
17. Dock the VAA:
>appzdock c:\appliances\<VAA>
18. Start VAA services:
>appzstart c:\appliances\<VAA> <application services>
19. Run IIS Manager by executing the exerciseInetmgr.bat file, which is located in C:\Program Files\AppZero\Extras\IIS\. To do this, open a command
prompt outside the VAA context and execute:
<Path_to_script>\exerciseInetmgr.bat <VAA_Path>
20. Close IIS Manager.
21. Open a web browser and go to:
http://localhost/
22. Browse to the application's page:
http://localhost/<app name>/
You are now ready to test the VAA to make sure that it performs correctly, and then run Dissolve. Before you run Dissolve, you must use the Windows Service
Control Manager on the destination machine to stop all IIS services. You can also identify IIS services by looking in the uos_services file in the VAA
scripts folder. For information about dissolving IIS applications, see Are You Ready to Migrate an IIS Application? and To Dissolve an Application.
For more information about appzmigrate, see appzmigrate in the AppZero Reference Guide.
Performing a Staged IIS Application Migration
You can migrate an IIS application from a source machine to an intermediary machine, and from the intermediary machine move the application (via a
compressed VAA, called a .cap file) to a destination machine.
Note:
You cannot migrate an application from a 32­bit machine to an intermediary 32­bit machine and then on to a final 64­bit destination machine; AppZero supports
only a staged application migration process that goes from a 32­bit machine to a 64­bit machine, including at the intermediary or staged step.
To Perform a Staged IIS Application Migration
1. Complete all prerequisites listed in Are You Ready to Migrate an IIS Application, and then tether your application to the intermediary machine using the
instructions in To Migrate an IIS Application Using AppZero Tether Console or To Migrate an IIS Application using the AppZero CLI.
2. Double­click the AppZero CLI desktop shortcut, and then execute the following command:
>appzcompress <VAA_PATH>\<VAA_NAME>
This creates a .cap file.
3. Retrieve the .cap file. Go to:
C:\appliances\<VAA_Name>.cap
4. Copy the compressed file to the final destination machine in C:\appliances\.
5. Double­click the AppZero CLI desktop shortcut, and then execute the following command:
>appzuncompress c:\appliances\<VAA_NAME>
6. Double­click the Administrative Console desktop shortcut to open the AppZero Administrative Console.
7. If the intermediary and destination machine names are not the same, select the uncompressed VAA, and then click the COTF button. If they are the same,
skip this step and continue to step 9.
http://docs.stage.appzero.com/book/export/html/812
30/45
17/12/2014
AppZero Application Migration Guide
Browse to the path of your COTF file. The StandardCOTF.xml file is located in C:\appliances\VAA\scripts.
Enter the host name of the intermediary machine in the Arguments field, then click OK.
8. Click the Dock button to dock the VAA.
9. Click the Services tab. Start database services as well as the IIS services by right­clicking each service and selecting Start.
10. Once services are started, right­click the appliance and select Launch Prompt.
11. Run IIS Manager:
c:\windows\system32\inersrv\inetmgr.exe
12. In IIS Manager, expand the application pools and web site tree structure.
13. Open a browser and navigate to your website.
Migrating an IIS Server on a Web Farm
IMPORTANT!
You must be logged in as the System Administrator on the destination machine.
Before you migrate an application, complete the requirements listed in Are You Ready to Migrate an IIS Application?
The procedure in this example includes:
a domain controller with an SQL database (Windows Server 2008 R2)
a machine with Application Request Routing (ARR) and network load balancing (NLB) (Windows Server 2008 R2)
two IIS web servers (both Windows Server 2003)
The two IIS web servers are in a load balanced cluster. In this example, we migrate Red Critter Tracker, which is using the SQL database located on the domain
controller. The destination is a Windows Server 2008 R2 machine.
To Migrate an IIS Web Server
1. On the destination machine, manually install the NLB feature. For information about how to install NLB, see
http://www.iis.net/learn/extensions/configuring­application­request­routing­%28arr%29/achieving­high­availability­and­scalability­arr­and­nlb.
2. On the destination machine, double­click the Tether Console desktop shortcut icon on your desktop or click Start>AppZero>AppZero Tether Console.
AppZero Tether Console opens.
3. Set up tether credentials for one of the two IIS web servers and complete tether instructions in To Migrate an IIS Application Using AppZero Tether
Console.
4. When required services have started, open html://localhost/redcrittertracker/ in the web browser.
5. On the NLB/ARR machine:
Open NLB.
Add the destination machine to the cluster.
6. Test the migration:
Take down both IIS web servers.
Open http://cluster/redcrittertracker on the domain controller.
You should be able to see the Red Critter Tracker web page.
Configuration Sharing
In the above example, if the web site data is shared, it will also be shared on the migrated VAA. However, configuration sharing is not available in IIS 6.0. If you
are using IIS 6.0, you must perform sharing manually as follows.
To Set Up Shared Configuration
In your web browser, go to the following address and follow the instructions:
http://www.iis.net/learn/web­hosting/configuring­servers­in­the­windows­web­platform/shared­configuration_211
Migrating an IIS Web Site that Uses HTTPS (SSL)
You must perform extra steps when migrating a web site that uses Hypertext Transfer Protocol Secure (HTTPS), because HTTPS must be configured to use a
security certificate. Security certificates are created for a specific machine and are encrypted, and so AppZero cannot use the source server's security certificate on
the destination server. You must therefore create a new certificate for the destination server and then register it with the bindings.
The following procedure explains how to create a self­signed certificate, which should be used for testing purposes only. You will need to create a new certificate
by contacting a certificate licensing authority.
1. Complete the prerequisites listed in Are You Ready to Migrate an IIS Application? and perform steps 1 to 11 inclusive in To Migrate an IIS Application
http://docs.stage.appzero.com/book/export/html/812
31/45
17/12/2014
AppZero Application Migration Guide
Using AppZero Tether Console.
2. Double­click the AppZero CLI desktop shortcut to open an AppZero command prompt window.
3. At the command prompt, type:
c:\windows\system32\inetsrv\inetmgr.exe
4. In IIS Manager, click on the server in the left pane.
5. In the middle pane, right­click Server Certificates, and select Create Self­Signed Certificate.
6. Enter a name for the certificate.
7. Expand the server, then expand Sites and click on your web site.
8. In the right pane, click Bindings.
9. Double­click the binding for HTTPS.
10. Select your new certificate at the bottom of the window.
11. Test the web site.
Migrating from a Windows 2000 Server Source with an Atypical Setup
If you are migrating from a Windows 2000 Server source machine that has an atypical setup, some of the default paths for the scripts required to migrate an IIS
application will not work. In this case, you will get the following message:
IIS Admin script (adsutil.vbs) not found!
To resolve this issue, perform the following steps:
On the source machine:
Find the directory where adsutil.vbs is located.
On the destination machine:
1. Using Notepad, open the migration.config file (located in the VAA/scripts directory; this file is created when you execute appzmigrate
/C).
2. Fnd the node iis5 and modify the attribute adminScriptPath: update it with the directory you found on the source machine above.
You can then proceed with migrating your IIS application as described in this guide. Note that changes to the migration.config file will be implemented
when you execute appzmigrate /A.
To View the IIS Migration Log
You can view the IIS Migration log, which is located as follows:
appliances\VAA_folder\ctrack\Log\migration.log
You can also view it using the Administrative Console once application migration is complete and AppZero Tether Console is closed.
To View the IIS Migration Log Using the Administrative Console
1. In Administrative Console, select the VAA and then click the Appliance Logs tab.
2. Click the IIS Migration tab. IIS Migration log messages are displayed.
http://docs.stage.appzero.com/book/export/html/812
32/45
17/12/2014
AppZero Application Migration Guide
3. To reload IIS Migration logs, click the Reload button.
4. To export messages to a comma­separated values (CSV) file, click the Export to CSV File button.
Advanced IIS Migration Features
Adding Parameters to Web Deploy
You can add extra parameters to Web Deploy if required. You can add parameters to the extraction process or the creation process.
You add parameters by modifying the migration.config file, which is located in the VAA\scripts folder. The file is copied to the scripts folder
when you execute appzmigrate /C <VAA>. Note that the migration.config file is not created in an empty VAA; you must execute appzmigrate
/C after you create a VAA before you look for the migration.config file. For information about appzmigrate, see appzmigrate in the AppZero
Reference Guide.
Changes that you make to the migration.config file will be implemented when you execute appzmigrate /A.
To Add Parameters to the Package Extraction
1. Open the migration.config file in the VAA\scripts folder.
2. Add the following attribute to the webDeploy node:
extractExtraParams="my new extra parameters"
3. Save the file.
http://docs.stage.appzero.com/book/export/html/812
33/45
17/12/2014
AppZero Application Migration Guide
Example
<webDeploy bypassAgentServer="false" extractExtraParams="­disableRule:DependencyCheckAppPoolExists" />
To Add Parameters to the Creation Process
1. Open the migration.config file in the VAA\scripts folder.
2. Add the following attribute to the webDeploy node:
createPackageExtraParams="my new extra parameters"
3. Save the file.
Decrypting ASP.NET 1.1 Files
You can decrypt web.config files encrypted with ASP.NET 1.1 to migrate websites that don't use ASP.NET 2.0 or higher.
You use appzxmlcrypt.exe to decrypt the files. Currently appzxmlcrypt can be used only with Data Protection application programming interface (DPAPI).
To Decrypt web.config files Encrypted with ASP.NET 1.1
1. Copy appzxmlcrypt.exe and AppZero.XmlEncryption.dll to the source machine.
2. In a command prompt window, run the following:
appzxmlcrypt.exe /C path_of_the_web_config_file
3. Run the following:
appzxmlcrypt.exe /D xmlEncryption.config
This creates a file called path_of_the_web_config_file.decrypted.
4. Copy path_of_the_web_config_file.decrypted to the destination machine.
5. Copy xmlEncryption.config to the destination machine.
6. On the destination machine, rename xmlEncryption.conf (remove .decrypted from the file name).
7. In a command prompt window, run the following:
appzxmlcrypt.exe /E xmlEncryption.config
This creates a file called path_of_the_web_config_file.encrypted.
8. Rename path_of_the_web_config_file.encrypted (remove .encrypted from the file name).
9. Copy this file to the VAA and overwrite the old web.config file.
Performing a Migration without Web Deploy
You can perform an application migration without using Web Deploy. To do this, manually remove the following lines of code from the migrate.config file:
<webDeploy bypassAgentService="false">
<stagedMigration pkgSource="scripts" />
</webDeploy>
Removing a Migration Module
You can remove a migration that you don't want to run from the migrate.config file. To do this, remove a node from the migrate.config file.
Example:
<migrationManager debugLogs="" >
<defaultMigrationsToRun>
<add name="Feature" />
<add name="IIS_Test" />
<add name="Rewrite_Module" />
<add name="IIS" />
<add name="ASP.NET" />
<add name="Account" />
<add name="PHP" />
<add name="Binding" />
</defaultMigrationsToRun>
</migrationManager>
To remove the "Binding" migration, remove the line:
<add name="Binding" />
http://docs.stage.appzero.com/book/export/html/812
34/45
17/12/2014
AppZero Application Migration Guide
Using Application Discovery (PACE)
Application Discovery (PACE) simplifies migration of applications from:
a single source to a single destination, or
multiple sources to multiple destinations
Using the appzpace command line tool, you can list products installed on a local or remote machine, as well as a generate a list of installed components for
each of those products. This list of components can contain file paths, registry paths, and side­by­side information.
For information about PACE, see Using Application Discovery (PACE) in the AppZero Reference Guide.
Running and Exercising Your Application
Tether copies Windows Start menu items from the source machine to the underlying operating system of the destination machine. The Start menu location of a
VAA on the destination machine is as follows:
Start>All programs>AppZero VAA <VAA Name>
You can use the Windows Start menu to find your application on the destination machine. The application name is the same name as the one on the source
machine, except that it displays the AppZero icon.
When you undock a VAA, its Start Menu item is removed; when you dock the VAA again, its Start Menu item is available once again.
Applications are tethered when they are exercised via the Start Menu. Note that the presence of the Start Menu items is not an indication that the applications have
been migrated.
Alternatively, you can use a command prompt to run your VAA application on the destination machine, or to run several executables associated with an
application.
To Run a VAA Application on the Destination Machine
Click Start, and then select your VAA.
To Run a VAA Application Via the Command Prompt
1. In the Administrative Console, select the VAA for which you enabled Tether.
2. Click the Dock command button. If tethering was not successful, the dock operation will not succeed.
3. Right­click the VAA, and then select Launch Prompt. This opens a command window in the VAA context.
http://docs.stage.appzero.com/book/export/html/812
35/45
17/12/2014
AppZero Application Migration Guide
4. At the command prompt in the VAA context, change the directory to the location of the VAA application on the source machine.
5. Run the application executable. The application runs on the destination machine.
Exercising Your Application
The more you use the tethered application, the more AppZero learns about it. Exercise the application as much as possible before you disable Tether. Many
registry keys and files do not get pulled across unless certain parts of the application are exercised. For example, right­click operations in SQL Management
Studio will not work untethered if they were not exercised while tethered.
Note:
An application may run more slowly than you are used to when it is tethered. This is temporary; the application will run as usual on the destination machine once
you have exercised the application and completed Tether.
Monitoring Migration
Monitoring Migration
You can monitor AppZero Application Migration and tethered VAAs using AppZero Tether Monitor, which is located in the Windows Taskbar.
You can use AppZero Tether Monitor to:
monitor the activity of a tethered VAA
view the live Tether log for a tethered VAA in order to view activity and any errors
The Tether Monitor icon spins when information is being copied from the source machine to the destination machine, for the duration of the activity. If you place
your cursor over the static icon, a popup displays when the last activity occurred.
A VAA must be docked and tethered to monitor it.
You must show icons in the Taskbar and allow tray icon notifications to use AppZero Tether Monitor.
To Show the Tether Monitor Taskbar Icon and Allow Notifications
1. Right­click the Taskbar, and then select Properties.
2. Turn the icon for Tether Monitor On.
3. Click Customize Notification Icons.
4. Click Show Icon and Notifications for Tether Monitor.
5. Click OK.
To Access AppZero Tether Monitor
Do one of the following:
Click the AppZero icon in the Windows System Tray, or
http://docs.stage.appzero.com/book/export/html/812
36/45
17/12/2014
AppZero Application Migration Guide
Click Start>AppZero>AppZero Tether Monitor.
To Monitor a Tethered VAA
1. Click the Tether Monitor icon in the Taskbar.
2. Select the tethered VAA in the Tether Monitor list, and then select Live Tether Log. The live tether log is displayed for the selected VAA.
3. Do any of the following as appropriate:
To view the live Tether log for another tethered VAA, select another VAA; the Tether log toggles to the other VAA.
To view when the last activity occurred for a tethered VAA, place your cursor over the Tether Monitor Icon in the Taskbar. The last activity is displayed in
a popup.
To Exit AppZero Tether Monitor
1. Click the AppZero icon in the Windows System Tray.
2. Select Exit.
Tether Logging
You can enable or disable logging of Tether activities and set logging values for Tether using the Administrative Console. For more information, see the AppZero
Administration Guide.
The default logging level for Tether is Errors Only.
Viewing the Tether Log
Error or debugging messages are output to the Windows Event Viewer, in the category AppZero.
You can view the live Tether log for a tethered application. See Monitoring Migration.
To view the Migrate log for an IIS application migration, see To View the IIS Migration Log.
You can also view the Tether log using the Administrative Console.
To View the Tether Log Using the Administrative Console
1. In the Administrative Console, select the VAA for which you enabled Tether, and then click the Appliance Logs tab.
2. Click the Tether tab. Tether log messages are displayed.
http://docs.stage.appzero.com/book/export/html/812
37/45
17/12/2014
AppZero Application Migration Guide
3. To reload Tether logs, click the Reload button.
4. To export messages to a comma­separated values (CSV) file, click the Export to CSV File button.
Dissolving Your Application
About Dissolve
Dissolve is an AppZero CLI utility that lets you remove AppZero encapsulation from the appliance application and transfer it to the underlying operating system
of the destination machine so that the application will behave as if natively installed.
There is no limit to the number of times that you can run the appzdissolve command on an appliance. If your AppZero license key does not include Dissolve,
contact your AppZero Sales Representative to inquire about evaluating the Dissolve function. See Dissolve License for more information.
The Dissolve Process
The following diagrams illustrate the Dissolve process. Example 1 illustrates Dissolving in a basic scenario, where you migrate an application from Machine A to
Machine B and Dissolve the VAA application on Machine B. Example 2 ilustrates Dissolve in a scenario where you migrate an application to Machine A,
compress the VAA application and move it to Machine B, and then uncompress the VAA application and Dissolve it on the final destination machine (Machine
B).
Dissolve Example 1
Dissolve Example 2
http://docs.stage.appzero.com/book/export/html/812
38/45
17/12/2014
AppZero Application Migration Guide
Application­Specific User and Group Accounts
Your application may require user and group account information in order to run correctly. If you selected user and group accounts during the VAA creation
process, this information is stored in the following directory:
C:\appliances\<VAA>\cstore\accounts
The Dissolve process begins by adding these user and group accounts to the system.
Dissolve and Drive Letters
AppZero does not provide the ability to remap drive letters during migrations. Therefore, AppZero requires that drive letters that are present on the source
machine also be present on the destination server before you begin a migration. The Windows system drive (that is, the drive that contains %WINDIR%) MUST
also be the same on the source and destination machines.
If you require specific drive assignations as part of your IT policy requirements, you can change drive letters using standard Windows operating system methods
after you dissolve your VAA. Note that you may have to manually change the configuration of specific applications to get them to work after you perform this
drive letter change.
To view your drive letter assignments, perform the following:
Note:
You cannot reassign the drive letter for the system drive.
On Windows 2003:
1. Right­click My Computer> Manage.
2. Select Storage>Disk Management.
3. To assign a different drive letter, right­click the partition in question and select Change Drive Letter and Paths....
On Windows 2008 / 2008 R2:
1. Open Server Manager.
2. Go to Storage>Disk Management.
3. To assign a different drive letter, right­click the partition in question and select Change Drive Letter and Paths...
On Windows 2008 / 2008 R2:
1. Open Server Manager.
2. Go to Tools>Computer Management.
3. Go to Storage>Disk Management.
4. To assign a different drive letter, right­click the partition in question and select Change Drive Letter and Paths...
Dissolve and vdrives
To dissolve a VAA that contains additional vdrives (e.g., cstore_D, cstore_E) to a destination computer, the destination computer must include matching
drives.
If a matching drive does not exist, a message displays which virtual drives are not available as physical drives on the destination computer.
If a matching physical drive is not available, you can create a substitute drive mapping on the destination operating system. The appzdissolve command will
treat the substitute drive as a physical drive and dissolve the VAA successfully.
SUBST:
SUBST [drive1: [drive2:]path]
Associates a path with a drive letter.
SUBST drive1: /D
http://docs.stage.appzero.com/book/export/html/812
39/45
17/12/2014
AppZero Application Migration Guide
drive1:
Specifies a virtual drive to which you want to assign a
path.
[drive2:]path
Specifies a physical drive and path you want to assign to
a virtual drive.
/D
Deletes a substituted (virtual) drive.
To display a list of current virtual drives, type the following with no parameters:
SUBST
For more information about SUBST, see:
http://technet.microsoft.com/en­us/library/bb491006.aspx
Using Config­on­the­fly with Dissolve
Your VAA may contain configuration information from another system; this information may not be compatible with the current system. You can use a Config­
on­the­fly file to update the configuration information so that it works with the current system. You may need to update the settings in the configuration file with
information from the current system.
You specify the Config­on­the­fly file using the following property:
CPROP_CONFIG_FILE
To Enable Config­on­the­fly Using the Administrative Console
1. In the Administrative Console, select the VAA, and then click the Appliance Settings tab.
2. In the Config file path field, click the browse button to find the location of the Config­on­the­fly file.
Alternatively, you can use the appzpedit command line utility to enable Config­on­the­fly. For information about appzpedit, see the AppZero Reference
Guide.
For information about the Config­on­the­fly file, see the AppZero Reference Guide.
Config­on­the­fly on Demand and Dissolve
You can execute Config­on­the­fly on demand after you dissolve a VAA, using the Administrative Console or the command line utility appzcotf. See Config­
on­the­fly on Demand for more information. See the AppZero Reference Guide for information about appzcotf.
Dissolving IIS Applications
Before you run Dissolve for an IIS application, you must use the Windows Service Control Manager on the destination machine to stop all IIS services.
AppZero recommends that you use the appzdissolve /F flag if you are using a clean destination machine (one that did not have IIS applications before the
Tether operation).
Enabling Dissolve for an Existing Installation
You can enable Dissolve for an existing AppZero installation that is not currently licensed for Dissolve.
To Enable Dissolve for an Existing AppZero Installation
1. Contact [email protected] to obtain a license key that enables Dissolve.
2. In the Administrative Console, choose Help>Update License Key.
3. Enter your company name in the Company Name field.
4. Enter the license key in the License Key field.
5. Click Save.
6. Exit the Administrative Console.
Dissolve License
If your AppZero license key does not include Dissolve, contact your AppZero Sales Representative to inquire about evaluating the Dissolve function.
To see whether your license key includes Dissolve, select Help>About in the Administrative Console. The features that are included in the license key are listed
in the License Details field.
http://docs.stage.appzero.com/book/export/html/812
40/45
17/12/2014
AppZero Application Migration Guide
Dissolve Syntax
The following is the appzdissolve command usage:
appzdissolve appliance /M:<SID_in_appliance>=<SID_in_host>,...][/M:?] [/V] [/F]
appliance
The full path of the appliance.
/M:<SID_in_appliance>=
<SID_in_host>,...
Merge the appliance user SID with the local computer's user SID.
/M:?
Show the default SID mappings.
/V
Dissolve by moving files.
/F
Overwrite existing files without checking the file timestamp.
The user profile registry keys are the user SIDs under the HKEY_USERS registry hive. When an appliance is moved from one computer to another, the user
profiles in the appliance may not exist in the current computer. Use the /M option to specify how the appliance user SIDs are mapped to the user SIDs in the local
registry.
By default, Dissolve copies files from the VAA to the system. Use the /V option to move files from the VAA to the system. This option speeds up the processing
of files significantly if the VAA is on a local drive; otherwise, Dissolve automatically uses the copy option. All files except the winsxs folder in the VAA use the
option; the winsxs, the registry keys, and the services are created with the appropriate win API calls.
Notes:
If you use the /V option, do not use the VAA after the Dissolve process because the VAA's file set will be incomplete. Before you dissolve a VAA, use
appzcompress to compress the VAA into a .cap file so that a backup is available.
If you use the /F option, an existing file will be overwritten even if this file is newer. If the file is in use, the file will be flagged as not dissolved in the
appzdissolve report.
Example: /M Option
appzdissolve C:\appliances\myappliance /M:S­1­5­21­1245603311­985339519­2248657795­500=S­1­5­21­340003980­
143421898­98567310­500
Assume that there are three sub­hives: "Control Panel", "Keyboard Layout", and "Software" for the user SID S­1­5­21­1245603311­985339519­
2248657795­500 in the appliance. The example above indicates that the sub­hives will be merged into the sub­hives of HKEY_USERS into the user SID S­1­
5­21.
If you do not specify the /M option, the Dissolve process tries to map the user SID to the current user SID only if the user SID belongs to the local administrator.
/M:? shows the default user SID mappings used by Dissolve. For example, the SID S­1­5­21­2044088009­675635282­661446963­500 of
‘Administrator\Windows5’ will be mapped to the SID S­1­5­21­3266840309­1294144750­3567850867­500 of ‘Administrator\LocalHost’. Unmapped user
profiles will be discarded by the process, but you can import them manually later.
Example Usage
http://docs.stage.appzero.com/book/export/html/812
41/45
17/12/2014
AppZero Application Migration Guide
To Dissolve an Application
Note:
If you wish to run Dissolve for an IIS application, you must first use the Windows Service Manager on the destination machine to stop all IIS services.
To Prepare for Dissolve
1. Uncompress the VAA if it is compressed: in the Administrative Console, select the VAA, and then click Uncompress.
2. If services are associated with the selected VAA and these services are running, click the Services tab, then right­click each service and select Stop to stop
the services.
3. Click Undock.
4. Click the Tether tab.
5. Disable Tether if it is enabled: de­select the Enable Tether check box.
6. Click Save.
7. At the prompt, click Yes or No to regenerate the VAA template as appropriate.
To Dissolve an Application
1. Dissolve the VAA using the appzdissolve command. In a command prompt window, execute:
appzdissolve appliance [/A] /M:<SID_in_appliance>=<SID_in_host>,...][/M:?] [/V] [/F]
2. Review the Dissolve report for the VAA, located in the following directory:
c:\appliances\<VAA>\AppzDissolve_Report.html
3. Resolve any issues or errors listed in the Dissolve report. If you resolved issues, run Dissolve again. Run Dissolve as many times as required to successfully
dissolve the application.
4. Restart your computer. If you do not restart, services may not start correctly and may not display correctly in the Services Control Manager.
http://docs.stage.appzero.com/book/export/html/812
42/45
17/12/2014
AppZero Application Migration Guide
To Modify Config­on­the­Fly When Dissolving
Dissolving a VAA Without Using Config­on­the­Fly
You can opt to dissolve a VAA without using Config­on­the­Fly (COTF). This is useful when you create a VAA and dissolve it on a destination machine
(Machine A), without compressing and moving the VAA to a second destination machine (Machine B). COTF is not required in this case.
Use pedit to change the CPROP_CONFIG_FILE property. For example:
>appzpedit c:\appliances\MyVAA CPROP_CONFIG_FILE ""
Modifying Config­on­the­Fly
Let's say that you create a VAA, compress it into a .cap file, move the compressed file from one destination machine (Machine A) to a second destination machine
(Machine B), and then dissolve the VAA. In this scenario, you will edit the $cotf0 argument using appzpedit.exe to change it from Machine A to
Machine B.
Change the CPROP_CONFIG_FILE property as follows, for example:
>appzpedit c:\appliances\myVAA CPROP_CONFIG_FILE "C:\appliances\myVAA\scripts\StandardCOTF.xml" "SQLSERVER2"
Dissolve Report
Running the appzdissolve command generates two HTML Dissolve reports, which contain information about the number of files, keys, and services
processed, dissolved, and not dissolved:
AppzDissolve_ShortReport.html ­ the general report, which lists a summary and only the components that were not dissolved in order to
minimize the file size
AppzDissolve_Report.html ­ the detailed report, which lists a summary as well as the dissolved and undissolved components
The contents of AppzDissolve_ShortReport.html are as follows:
summary
users, groups dissolved
winsxs dissolved
services dissolved
users, groups not dissolved
winsxs not dissolved
services not dissolve
files not dissolved
keys not dissolved
The contents of AppzDissolve_Report.html are as follows:
summary
users, groups dissolved
winsxs dissolved
services dissolved
files dissolved
keys dissolved
users, groups not dissolved
winsxs not dissolved
services not dissolve
files not dissolved
keys not dissolved
The reports are located in the same folder as the VAA:
http://docs.stage.appzero.com/book/export/html/812
43/45
17/12/2014
AppZero Application Migration Guide
c:\appliances\<VAA>\AppzDissolve_ShortReport.html
c:\appliances\<VAA>\AppzDissolve_Report.html
Be sure to review a Dissolve report after you run Dissolve. Address any issues or errors raised in the report, and then dissolve the VAA again and as many times
as required until the VAA is successfully dissolved to the underlying operating system.
Sample Dissolve Report
The following illustrates part of a sample AppzDissolve_Report.html report:
Viewing the Dissolve Report
You can view a Dissolve report in the c:\appliances\<VAA> folder.
To View a Dissolve Report using the Administrative Console
1. After you dissolve the VAA, click the Appliance Logs tab.
2. Click the Dissolve tab.
3. Click either of the following buttons:
View General Dissolve Report
View Detailed Dissolve Report
http://docs.stage.appzero.com/book/export/html/812
44/45
17/12/2014
AppZero Application Migration Guide
The Dissolve report is displayed in your browser.
Dissolve Logging
You can specify logging settings for Dissolve using the Administrative Console. For information, see the AppZero Administration Guide.
Uninstalling and Upgrading Dissolved Applications
If you uninstall a dissolved application from Programs and Features in an up­architecture migration (a migration from x86 to x64), there may still be files left
behind after the product is uninstalled. For this reason AppZero does not support uninstallation or upgrading of up­architecture products; you may experience
issues if you try to uninstall an up­architecture product after a Dissolve. You may also experience issues when applying patches and performing upgrades
concerning up­architecture products.
Dissolve Error Messages
Matching Drive Does Not Exist
To dissolve a VAA that contains additional vdrives (e.g., cstore_D, cstore_E) to a destination computer, the destination computer must include matching
drives.
If a matching drive does not exist, a message displays which virtual drives are not available as physical drives on the destination computer. For example:
Host OS version:
Microsoft Windows Server 2008 R2 64­bit (build 7600)
VAA source OS version: Microsoft Windows Server 2008 R2 64­bit (build 7600) C:\appliances\apacheDissolveTest\cstore_C will be
mapped to C:\ drive.
ERROR: Cannot map C:\appliances\apacheDissolveTest\cstore_D to a drive. Drive D does not exist on the host.
ERROR: Cannot proceed to dissolve the appliance
C:\appliances\<vaaname>
Creating a VAA by Tethering to a VAA Template
You can create a VAA by tethering to an existing VAA template. All the content described in the VAA template will be copied from the source machine to the
destination machine.
For information about how to create a VAA by tethering to a VAA template, see the AppZero Reference Guide.
http://docs.stage.appzero.com/book/export/html/812
45/45