Upsource 2017.2 Help

Upgrading Upsource cluster

Follow this guide to upgrade your existing Upsource cluster installation to a newer one. Upgrade procedures vary significantly depending on the version increment (i.e. 2017.2.0 to 2017.2.2 vs. 2017.1.X to 2017.2.X) as outlined below.

Minor upgrade

Use this instruction when upgrading to a version that only differs by a build number, for example, when upgrading from 2017.2.1 to 2017.2.2.

  1. Stop Upsource cluster and remove its containers:

    ./cluster.sh -H tcp://<swarm.master.host>:<swarm.master.port> stop ./cluster.sh -H tcp://<swarm.master.host>:<swarm.master.port> rm

  2. Download cluster-config-<major.minor.NewBuildNumber>.zip

    Important! If you've ever changed the following files:

    • cluster.sh
    • docker-compose.yml
    • docker-compose-cluster-init.yml
    • docker-compose-cluster-upgrade.yml

    for example, added new analyzer properties), you need to:

    • Rename the old changed file(s) (e.g. cluster.sh.bak
    • Save the new cluster.sh and docker-compose.yml files in the same directory.
    • Copy changed and added lines from the old files to the new ones.
  3. Check that a correct UPSOURCE_VERSION is set inside cluster.sh

  4. Start Upsource cluster:

    ./cluster.sh -H tcp://<swarm.master.host>:<swarm.master.port> up

Major upgrade

Use this instruction when:

  • upgrading to a new major version, for example, from 2017.1.111 to 2017.2.111

  • migrating from a ZIP or a Docker installation.

  1. Create a backup of your existing installation.

  2. On the host machine where the Cassandra database is running, delete all data from the folder the Cassandra volume is mapped to. The default directory is <cassandra host>/opt/upsource/cassandra. The actual directory is defined in docker-compose.yml

  3. Copy your date-specific backup folder (let's assume the folder containing backup is /upsource/backup/2016 Oct 11 12-18-26) to the node ${UPSOURCE_CLUSTER_INIT_NODE}

  4. Add that backup directory path to the property UPSOURCE_UPGRADE_SOURCE_BACKUP_DIRECTORY located in the file docker-compose-params.env.

  5. Provide access rights to that backup folder:

    chown -R 13001:13001 "/upsource/backup/2016 Oct 11 12-18-26"

  6. Run the following command:

    ./cluster.sh upgrade-cluster -H tcp://<swarm.master.host>:<swarm.master.port>

    This command:

    • Stops Upsource cluster services (if there are any running).
    • Starts the Cassandra database and applies the backup to it.
    • Stops Cassandra.
  7. Check that the command has run successfully. The execution logs are located in the directory /var/log/upsource/cluster-init of the ${UPSOURCE_CLUSTER_INIT_NODE}node.

  8. Download cluster-config-<major.minor.NewBuildNumber>.zip

    Important! If you've ever changed the following files:

    • cluster.sh
    • docker-compose.yml
    • docker-compose-cluster-init.yml
    • docker-compose-cluster-upgrade.yml

    for example, added new analyzer properties), you need to:

    • Rename the old changed file(s) (e.g. cluster.sh.bak
    • Save the new cluster.sh and docker-compose.yml files in the same directory.
    • Copy changed and added lines from the old files to the new ones.
  9. Check that a correct UPSOURCE_VERSION is set inside cluster.sh

  10. Start Upsource cluster:

    ./cluster.sh -H tcp://<swarm.master.host>:<swarm.master.port> up

Last modified: 10 September 2017