Upgrades for Squirro 3.2.0 and later

These upgrade instructions explain how to update an existing Linux-based Squirro installation to the current version.

Only follow these instructions if a specific Squirro release notes document references these as the correct upgrade instructions.

Please ensure that your current version is 3.1.0 or later. Directly upgrading from previous versions is not supported and needs to be done with a stepped approach. Please contact support if you are on a Squirro release older than 3.1.0.

Table of Contents

Before Upgrading

Maintenance window

A Squirro upgrade requires a downtime. This is typically quite short, but will still affect user experience for a moment. As a result, upgrades to production systems should only be run in a maintenance window.

Storage vs. Cluster Nodes

Squirro distinguishes between storage and cluster nodes. These can be installed on the same server or split up. Both can also be horizontally scaled and have multiple instances. For full details see https://squirro.atlassian.net/wiki/spaces/DOC/pages/25591826/How+Squirro+Scales.

Independent of the setup, in the instructions below always execute all the storage node updates first, and only then do the cluster node updates. This applies independent of whether cluster and storage node are on the same system, whether they are split into one server each, or if they have multiple instances each.

Offline Repository

If you have used the offline installation, or have an internal mirror of the Squirro yum repository, please make sure this is updated prior to starting the Squirro update.

Upgrading

Storage nodes

Run these instructions on every single server that has storage nodes installed before moving on to the cluster nodes.

1 2 3 4 5 yum update java-1.8.0-openjdk yum update squirro-storage-node-users # Update storage node yum update squirro-storage-node

Cluster nodes

1 2 3 4 yum update java-1.8.0-openjdk yum update squirro-cluster-node-users yum update "squirro-*"

At this point you will have to check if any *.rpmnew files have been created in /etc/squirro. See https://squirro.atlassian.net/wiki/spaces/DOC/pages/47841281/Configuration+Conflicts for how to handle those.

Finally, restart the services:

1 2 systemctl reload nginx squirro_restart

Remove all orphaned python 2 packages:

1 yum erase squirro-python27*

And validate if everything is coming up (this may have to be run a few times until everything stabilizes):

1 squirro_status