High-level guideline for a switchover migration

The following sequence of steps captures the scenario of migrating your version 7 or 8 assets to version 9, then switching traffic from your previous environment to version 9.

Plan and prepare for migration

First, you migrate your development environment, configure your container technology and deployment strategy, deploy the migrated customizations from your development environment to your production environment, then migrate your production database.
Note: Use the following high-level steps as a guideline only.
  1. Schedule training, if necessary, on any new technologies that you want to use on the new HCL Commerce version. For example, your team might want to learn about the CI/CD pipeline.
  2. Familiarize yourself with the HCL Commerce migration process.
  3. Create a regression test plan for the site.
  4. Review and update any custom scripts that you might use in your HCL Commerce site, including build, deployment, and data load scripts.
  5. Back up your existing assets across all development, testing, staging, and production environments.
  6. If you are migrating from version 7, update to Feature Pack 8.
  7. If you are migrating from version 8, upgrade to HCL Commerce Version 8, Mod Pack 1 or higher.
  8. Upgrade your Db2 to version or higher.
  9. Install your version 9 development environment.
    Note: The migration process involves creating a version 9 development environment, then moving your previous assets over to that version 9 development environment.

Build your container platform and CI/CD pipeline

  1. Determine which software you want to use to build a container platform that can support the HCL Commerce application.
  2. Create your strategy for frequently deploying new features, updates, or fixes to your production environment.
  3. Implement your container platform and CI/CD pipeline, including your staging and production environments.
  4. Configure the HCL Commerce Build (WCB) tool.

Migrate to HCL Commerce Version 9

  1. Migrate your site security.
  2. Migrate your configuration files.
  3. Migrate your development database.
    1. Back up your previous development database.
    2. Copy your previous development database back up to your version 9 development environment.
    3. Restore your previous development database copy on version 9 development environment.
    4. Migrate your development database.
  4. Migrate your custom Aurora store project.
  5. Migrate Search.
  6. Migrate your EJBs to Java Persistence API.
  7. Migrate your custom Physical Service Data Objects.
  8. Migrate your command and data bean objects.
  9. Migrate Management Center.
  10. Test and verify your migrated assets on your version 9 development environment.
  11. Build and deploy your customized containers.
    1. Apply any WCB property customizations that you might have had in your previous build server.
    2. Create a WCB package that contains your migrated custom assets.
    3. Deploy your customized application to your runtime environments, including production.
    4. Test your migrated customizations at runtime, while tuning for production site traffic volumes.
  12. Migrate an offline version of your production database.
    1. Take a backup of your previous production database.
    2. Restore the copy of your previous production database on version 9 production environment..
    3. Clean up database for migration.
    4. Migrate restored database.
    5. Deploy your customizations from your migrated version 9 development environment to your version 9 environment by using your CI/CD pipeline.
    6. Test your migrated customizations at runtime, while tuning for production site traffic volumes.
  13. Migrate your live production database.

    By this stage in the migration process, you created your containers and executed on your deployment strategy. You also have a version 9 production environment ready and tested with your migrated customizations. The final piece to the migration is migrating your production database, and switching traffic from your previous production environment to your version 9 environment. The following sequence is designed so that you prepare version 9 production environment in parallel to serving live traffic, which is how you achieve minimal downtime during the database migration.

    1. Back up your live database.
    2. Put your live store into maintenance mode to prevent the occurrence of new transactions taking place during migration.
    3. Point your version 9 environment to the live database.
    4. Migrate the live database.
    5. Switch traffic to version 9.
    6. Update SITE table on live database.