Released on April 6, 2016.

New Features

Improvements

Bug Fixes

Updates

Upgrade Instructions

As this version contains an update to a new major version of Elasticsearch, it is only possible to directly upgrade from a Squirro version bigger than 2.3. If you are currently running a version smaller than 2.3 please contact support. 

If you are using Squirro in a Box, then there are additional steps involved. In this case, please contact support.

 

Step 1: Prepare the upgrade

It is not possible to update to this version without a service interruption.

The upgrade will re-index your data, therefore you need at least 50% of the disk space available on your storage nodes.

The order of the following steps is important, do not skip any step. If a step fails, do not continue before resolving the issue.

Step 2: Stop Squirro

On each cluster node, run:

root$ monit stop sqclusterd

Step 3: Update the Elasticsearch templates

On each storage node, one after the other, run:

root$ rpm -Uvh --nodeps $(repoquery --location squirro-elasticsearch-templates)

This will update the templates and re-index all indices with the new mapping v6. This may take a while.  

Warning: Do not use yum update squirro-elasticsearch-templates as this tries to update Elasticsearch at the same time.

Step 4: Update Elasticsearch

 

root$ rpm -Uvh --nodeps $(repoquery --location elasticsearch)

Elasticsearch will not start as there are configuration conflicts between the two versions that need to be fixed manually:

 

warning: /etc/elasticsearch/elasticsearch.yml created as /etc/elasticsearch/elasticsearch.yml.rpmnew
warning: /etc/init.d/elasticsearch created as /etc/init.d/elasticsearch.rpmnew
warning: /etc/sysconfig/elasticsearch created as /etc/sysconfig/elasticsearch.rpmnew
warning: /usr/lib/systemd/system/elasticsearch.service created as /usr/lib/systemd/system/elasticsearch.service.rpmnew

 

Networking behaviour changed with ES2. Make sure you add the following to the /etc/elasticsearch/elasticsearch.yml file:

 

network.bind_host: _eth0_,127.0.0.1
network.publish_host: _eth0_

File permissions:

  • Ensure /etc/elasticsearch/* is readable by the elastic user. 
  • Ensure that /var/log/elasticsearch/ is readable and writable by the elastic user.

Resolve these issues and then start Elasticsearch:

 

root$ service elasticsearch start

 

Ensure Elasticsearch is running before continuing. Depending on your configuration, Elasticsearch might not come up until you updated a second storage node as it requires at least one slave to be present.

 

Step 5: Update Elasticsearch plugins and all other packages

root$ yum update 

Step 6: Upgrade Cluster Nodes

On each cluster node, run:

[squirro@clusternode01 ~] sudo yum update
[squirro@clusternode01 ~] sudo monit start all