Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Install Cassandra 3.11.x and Teamwork Cloud 19.0 (SP4 or SP3) on an external (migration) server to create the v19 database schema.
  2. Uninstall Teamwork Cloud 19.0 (SP4 or SP3) on the migration server.
  3. Stop Cassandra service on the migration server.
  4. Perform the initial data move from the production (source) database to the migration server without stopping work on the production server. To do this, execute the following command in any cluster node on the production server:

    Code Block
    rsync –av /data/data/esi user@target:/data/data/esi-new


    Note
    titleNote

    In the command above, user is the OS user of the migration server, target is the migration server address, and esi-new is a temporary production data location on the migration server.

    Ensure that the user has the write permission in the esi-new directory.


  5. Carry out the final data move of the production database while stopping work on the production server:

    1. Stop Teamwork Cloud services on both the production and migration servers.

    2. Execute the following commands on any of the production database Cassandra cluster nodes:

      Code Block
      nodetool repair
      nodetool flush
      nodetool drain


    3. Stop Cassandra services on all cluster nodes of the production server.

    4. Copy the remaining newly created data from the production server to the migration server. To do this, execute the following command on any of the production cluster nodes:

      Code Block
      rsync –av /data/data/esi/ user@target:/data/data/esi-new/ --delete


      Note
      titleNote

      In the commands above, user is the OS user of the migration server, target is the migration server address, and esi-new is a temporary production data location on the migration server.


  6. Restart Teamwork Cloud and Cassandra on the production server so that users could continue their work.
  7. Slip-stream the data from the "esi-new" keyspace to the "esi" keyspace on the migration server by running the convert_esi.sh script. Now the migration server has the current data of the production database (the "esi" keyspace).
  8. Install Teamwork Cloud 2021x on the migration server. The "twc" keyspace will be created.

  9. Launch the migration tools and perform initial database migration. Users can continue working on the production server as usual.

    Note
    titleImportant

    When performing initial database migration, make sure that the Remove resources after successful migration check-box is cleared in the resource migration wizard. For more information, see step 6 in Migrating database.


  10. Carry out the final move of the data that was newly created since the previous migration iteration from the production server:

    1. Stop Teamwork Cloud services on both the production and migration servers.

    2. Execute the following commands on any of the production database Cassandra cluster nodes:

      Code Block
      nodetool repair
      nodetool flush
      nodetool drain


    3. Stop Cassandra services on all cluster nodes of the production and migration servers.

    4. Copy the newly created data from the production server to the migration server while stopping work on the production server. To do this, execute the following command on the production server:

      Code Block
      rsync –av /data/data/esi/ user@target:/data/data/esi-new/ --delete


      Note
      titleNote

      In the commands above, user is the OS user of the migration server, target is the migration server address, and esi-new is a temporary production data location on the migration server.


    5. Re-run the convert_esi.sh script on the migration server to slip-stream data.

    6. Restart Cassandra and Teamwork Cloud 2021x on the migration server.

    7. Perform the final migration of the newly created data moved from the production server.

      Note
      titleImportant

      When performing final migration, make sure that the Remove resources after successful migration check-box is selected in the resource migration wizard. For more information, see step 6 in Migrating database.


  11. On the production server, start Cassandra nodes and make a backup of the "esi" keyspace.

  12. Drop the "esi" keyspace and remove the "esi" directory with commit logs by executing the following commands:

    Code Block
    nodetool flush
    cqlsh
    drop keyspace esi;
    exit
    nodetool clearsnapshot -- esi


    Note
    titleNote

    With the Cassandra service stopped, the "esi" directory and commit logs need to be removed on each of the production nodes by executing the following commands:

    rm –fr /data/data/esi/*
    rm –fr /logs/commitlog/*


  13. Uninstall Teamwork Cloud 19.0 (SP3 or SP4) on all the nodes of the production server.

  14. Install Teamwork Cloud 2021x on the production server to create the "twc" keyspace and initial database schema on all cluster nodes.

  15. With Teamwork Cloud, Authentication server, and Web Application Platform being shut down, execute the commands below, then stop Cassandra.

    Code Block
    nodetool flush
    nodetool drain


  16. Move the migrated data from the migration server "twc" keyspace to every node of the production cluster by executing the following command on the migration server:

    Code Block
    rsync –av /data/data/twc/ user@target:/data/data/twc-new/


    Note
    titleNote

    In the command above, user is the OS user of the production server, target is the production server address, and twc-new is a temporary production data location on the production server.

    Ensure that the user has the write permission in the twc-new directory.


  17. Start Cassandra and run the create_migration_table.cql script by executing the commands below. If needed, enter the required credentials to ensure successful cqlsh connection. This will create an empty table on the production server.

    Code Block
    cqlsh
    SOURCE '/opt/create_migration_table.cql'
    exit


  18. Stop Cassandra on all nodes of the production server including Teamwork Cloud by executing the following commands:

    Code Block
    nodetool flush
    nodetool drain
    systemctl stop Cassandra


  19. Slip-stream data from the "twc-new" keyspace to the "twc" keyspace in every node of the production cluster by running the convert_twc.sh script.

  20. Power up Cassandra and Teamwork Cloud 2021x services in the production cluster.

...