Migrating from Self-Hosted Classic Edition (Docker) to Standard Edition

You can migrate the tenant unit configuration data from the Classic Edition (Docker) host to the Self-Hosted Standard Edition host. The tenant unit configuration data includes user settings, dashboards, events, alerts, application perspectives, EUM websites and mobile apps, and so on.

The analytics and metrics data from your Instana agents cannot be migrated.

You cannot migrate directly from Classic Edition (Docker) to Standard Edition multi-node deployment. You must first migrate to Standard Edition single-node deployment. Then, you can migrate from a single-node deployment to a multi-node deployment.

Important:

You can use the same license of your Classic Edition (Docker) to migrate to the Standard Edition.

Prerequisites

You cannot migrate your Classic Edition (Docker) data to a host on which Standard Edition is already installed. You must use a new host.

Complete the following prerequisites:

  • Prepare your new host as mentioned in Preparing your environment.
    • For DNS settings, use the tenant and unit names of your Classic Edition (Docker) environment. Since the tenant and unit names are part of the unit domain name, these names must be present in the DNS record for the Standard Edition environment. This is also necessary for logging into Standard Edition using LDAP authentication, as LDAP configurations are also migrated.
  • Install the stanctl binary. For more information, see Installing stanctl command-line tool.
  • Ensure that you upgrade the Instana backend on your Classic Edition (Docker) to release 271. See Upgrading Classic Edition (Docker). The Instana backend version on your Classic Edition (Docker) and Standard Edition must be the same.
  • For air-gapped migration, create an air-gapped package and transfer the package to your Standard Edition air-gapped host.

Migrating to Standard Edition

To migrate the data, complete the following steps:

  1. On your Classic Edition (Docker) host, extract the tenant unit configuration data from the Postgres data store:

    instana dump config-data
    

    A dump.tar.gz file is created in the current directory. This file contains the tenant unit configuration data in the form of executable SQL queries.

  2. Do one of the following steps:

    • Online migration: Transfer the dump.tar.gz package from the Classic Edition (Docker) host to your new Standard Edition host.
    • Air-gapped migration: Transfer the dump.tar.gz package from the Classic Edition (Docker) host to your new Standard Edition air-gapped host, by using the bastion host.
  3. On your Standard Edition host, migrate the data from the dump.tar.gz file by running one of the following commands:

    • Online migration:

      stanctl migrate -f </path/to/dump.tar.gz>
      
    • Air-gapped migration:

      stanctl migrate --air-gapped -f </path/to/dump.tar.gz>
      

    The following prompt is displayed:

    ? Choose installation type:
    demo <
    production
    
  4. Choose your preferred installation type.

  5. Install Standard Edition with the tenant unit configuration data that you migrated from your Classic Edition (Docker):

    If you want to configure additional settings such as custom certificates, SMTP configuration, proxies, and so on, see Instana backend configurations. At this stage, you can run the stanctl up command:

    Run one of the following commands:

    • Online migration:

      stanctl up <--configuration_flags_if_any>
      
    • Air-gapped migration:

      stanctl up --air-gapped <--configuration_flags_if_any>
      

    After the installation is successfully completed, a message similar to the following example is displayed:

    ****************************************************************
    * Successfully installed Instana Self-Hosted Standard Edition! *
    *                                                              *
    * URL: https://instana.example.com                             *
    * Username: admin@instana.local                                *
    ****************************************************************
    

You can sign in to the new Standard Edition UI by using the same tenant password that you used in your Classic Edition (Docker) setup.

Post-migration steps

After you complete the Instana migration, complete the following steps:

  • New Standard Edition instance will not be connected to any agents by default. To connect your agents to Standard Edition and Classic Edition (Docker) backends, see Configuring multiple backends.

  • After the migration, when the Classic Edition (Docker) and Standard Edition environments are connected to your agents, both the Instana environments will generate alerts. To avoid duplicate alerts, you can set a maintenance window on one of your Instana instances, see Scheduling maintenance windows.

  • Feature flags that were enabled in your old Classic Edition (Docker) environment are not migrated. You must manually enable the feature flags again in your new Standard Edition environment. For more information, see Optional features.

The following restrictions are applicable for simultaneous reporting into two Instana backends:

  • The Kubernetes sensor in the Instana agent does not support two Instana backend configurations. See Report to multiple backends for Kubernetes monitoring.
  • The EUM (end-user monitoring) clients do not support reporting to two Instana backends.
  • Serverless client implementations do not support reporting to two Instana backends.
  • Configuration changes made after the migration are not automatically synchronized between the two Instana backends.

Troubleshooting

You might encounter issues after migration, if you are unable to resolve these issues, contact IBM Support.

Unable to access Standard Edition using old password

If you used an environment file (.env) to install your Standard Edition and specified a 'STANCTL_UNIT_INITIAL_ADMIN_PASSWORD', the password is ignored. See the following example.

STANCTL_UNIT_INITIAL_ADMIN_PASSWORD=instana1

Instead, the admin password of your Classic Edition (Docker) that you migrated from is used as the initial admin password.

If you don't have access to the admin password of your old Classic Edition (Docker), you can reset the admin password. For more information, see Resetting a user's password.

Resetting IdP configuration

To reset your IdP configuration after migrating to the Standard Edition, see Resetting the IdP configuration.