On this page:

Related pages:

This topic describes how to migrate a Controller from a physical or virtual machine to a new physical machine.

Before Starting

Migrating the Controller often results from the need to move the Controller to new hardware in response to increased load. Before starting, make sure that the new hardware meets the AppDynamics requirements as described in Controller System Requirements. Specifically, review the Controller hardware performance profiles and the hardware requirements per profile information to verify that the target Controller hardware meets the RAM size and Disk I/O requirements. 

You will need to update the MAC address associated with your license since licenses are tied to the machine MAC addresses. You can also acquire new license files for the new Controller hardware. Send the MAC addresses to salesops@appdynamics.com and request a new license file or two new licenses if upgrading to an HA pair. See Applying or Updating a License File for more information. 

If you are performing a migration and upgrade for a 4.3 version Controller or earlier, then you should migrate the Controller first. Then you can upgrade the Controller to 4.4 by installing the Enterprise Console and using the Discover & Upgrade feature. This also applies to migrations involving different OS environments.

VMotioning, or migrating a VMware guest with a running Controller inside it from one host to another, is not supported. Doing so will lead to dropped metrics and UI performance problems.

Migrating a Controller

Migrate a Linux Controller

You can use the high availability features provided by the Enterprise Console to, in effect, migrate a Controller from one machine to another. The following steps outline a high-level workflow for the process.

They assume that the Controller you need to migrate is already managed by the Enterprise Console's, that is, it has been installed or discovered by the Enterprise Console. See Enterprise Console for more information. 

The general steps involve adding the new host as an HA pair to the old host, setting the new host as active, and then removing (that is, decommissioning) the old host. When finished the Controller will be running on the new host. Before starting, review requirements and concepts related to Controller High Availability

In detail, the steps are:

  1. Log in to the Enterprise Console UI interface.
  2. Click on the Platform that has the host you want to migrate. 
  3. In the Hosts page, add the new host (the one to serve as the new target host) and provide the credentials for connecting to that host.
  4. In the Controller page, click Add Secondary and select the new target host. Provide the DB root password and Controller root password and click Submit
  5. In the controller page, click HA failover.
    Now the Primary controller should be running on the new host. 
  6. Update the license MAC address or apply a new license for the new machine. See Before Starting for more information. 
  7. Decommission the old, now passive Controller from the Controller page:
    1. Click Remove Controller, or run the following command on the Enterprise Console host:

      platform-admin.sh submit-job --job remove --service controller --args removeBinaries=false
    2. Select the remove binaries option. (Do not select Remove entire cluster.)
    The Controller is now running on the newly provisioned host.

You can keep the same access key from the old Controller. To migrate or update your access key, see Controller Secure Credential Store. Note that the license rule access keys still need to be updated.

Migrate a Windows Controller

Since high availability features are not available on Windows, you must use an alternative procedure to migrate a Controller from one machine to another. The following steps outline a high-level workflow for the process. 

The general steps involve using the Enterprise Console to manually install and move the .appd.scskeystore and the datadir from the old host to the new host. When finished the Controller will be running on the new host. Before starting, review requirements and concepts related to Controller High Availability 

In detail, the steps are:

  1. Install the Enterprise Console on the new Controller host that you are running on the existing Controller host.

  2. Use the Enterprise Console to install the same version of the Controller on your new Controller host with the same passwords that you are using on the existing Controller host.

  3. Shut down the Controller Appserver and database on both Controller hosts.

  4. Move <controller_home>/.appd.scskeystore and the Controller's MySQL datadir on the new host.

  5. Copy <controller_home>/.appd.scskeystore and the Controller's MySQL datadir from the old host to the correct locations on the new host.

  6. Start up the Controller Appserver and database on the new host.
    The Controller is now running on the newly provisioned host.

You can keep the same access key from the old Controller. To migrate or update your access key, see Controller Secure Credential Store. Note that the license rule access keys still need to be updated.