The upgrade process varies depending on whether Striim is running in CentOS or Ubuntu and whether the metadata repository is hosted on Derby, Oracle, or PostgreSQL. It is important that you follow the instructions exactly and in order.
If possible, use the simpler In-place upgrade method.
An in-place upgrade installs the new version of Striim while keeping the current repository database and Elasticsearch data. You may do an in-place upgrade to Striim 3.10.3 from version 3.9.7 or later. From earlier versions, use the Export-import upgrade method.
Before upgrading, see "Changes that may require modification of your TQL code or workflow" in the release notes (striim/Striim_release_notes_readme.html
) so you will be aware of any changes that may be required to your applications before running them in the new version.
Back up the cluster as described in Backing up and restoring a cluster.
Quiesce and undeploy all running applications with persisted streams. Stop and undeploy all other running and deployed applications.
Stop all Forwarding Agents.
If the metadata repository is hosted on PostgreSQL, export all dashboards and their applications, then drop their namespaces. Alternatively, use the Export-import upgrade method.
-
On each server in the cluster, move the Striim configuration file to
/opt/striim/conf-backup
(or, if you prefer, some other directory) so it will not be removed when you uninstall the old version of Striim:sudo mkdir /opt/striim/conf/conf-backup sudo mv /opt/striim/conf/startUp.properties /opt/striim/conf/conf-backup/
for Centos: on each server in the cluster, download
striim-node-3.10.3-Linux.rpm
and enter the following commands (on CentOS 6, omitsystemctl
):sudo systemctl stop striim-node sudo rpm -e striim-node sudo rpm -ivh striim-node-3.10.3-Linux.rpm
for Ubuntu: on each server in the cluster, download
striim-node-3.10.3-Linux.deb
and enter the following commands (on Ubuntu 14.04, omitsystemctl
):sudo systemctl stop striim-node sudo dpkg --remove striim-node sudo dpkg -i striim-node-3.10.3-Linux.
-
Using a client for your metadata repository host, run the appropriate script:
for Derby:
/opt/striim/conf/UpgradeMetadataReposDerbyTo398.sql
for Oracle:
/opt/striim/conf/UpgradeMetadataReposOracleTo398.sql
for PostgreSQL:
/opt/striim/conf/UpgradeMetadataReposPostgresTo398.sql
-
On each server in the cluster, enter the following command to restore your Striim configuration (adjust as necessary if you backed up your files to a different location):
sudo cp /opt/striim/conf/conf-backup/startUp.properties /opt/striim/conf/
-
f you are upgrading from 3.9.8 or later, skip this step.
On one server, run
sudo su - striim /opt/striim/bin/sksConfig.sh
and enter passwords for the Striim keystore and the admin and sys users. If hosting the metadata repository on Oracle or PostgreSQL, enter that password as well (see Configuring a DBMS to host Striim's metadata repository). If you are using a Bash or Bourne shell, characters other than letters, numbers, and the following punctuation marks must be escaped:, . _ + : @ % / -
-
Copy
sks.jks
snfsksKsy.pwd
from/opt/striim/conf/
on that server to/opt/striim/conf/
on all other servers and assign ownership of those files to Striim:sudo chown striim sks.jks sudo chown striim sksKey.pwd
Start all servers.
If the metadata repository is hosted on PostgreSQL, reload any applications and dashboards you dropped in step 3.
Reload any open processors (see Loading and unloading open processors).
Upgrade and start all Forwarding Agents (see Upgrading Forwarding Agents).
You may use the following process to upgrade from Striim 3.8.4 or later. (For assistance upgrading from earlier versions, contact Striim support.)
Before upgrading, see "Changes that may require modification of your TQL code or workflow" in the release notes (striim/Striim_release_notes_readme.html
) so you will be aware of any changes that may be required to your applications before running them in the new version.
Back up the cluster as described in Backing up and restoring a cluster.
-
On each server in the cluster, copy any .jar files you have added to Striim's
lib
directory to another location. These should be easy to identify since the files installed by Striim all have the same date.Note
Starting in 3.9.6, a custom Cassandra driver is bundled with Striim, so do not copy any
cassandra-
cassandra-jdbc-wrapper-<version>.jar
you installed in an earlier release. -
Applications that have recovery enabled will pick up from the recovery checkpoint when they are restarted after the upgrade. In order for this to work correctly, after the upgrade they must be deployed on the same, unchanged deployment groups with the same options. Make notes as necessary to duplicate your deployment scenarios.
In releases prior to 3.8.6, a flow that was deployed to a group with more than one agent was always deployed to all agents in the group, even when ON ONE was specified. This bug was fixed in 3.8.6, and deployment to agents will be ON ONE or ON ALL as specified in the DEPLOY command. Consequently, after the upgrade is complete, any applications with recovery enabled that were deployed to groups with more than one agent must be deployed ON ALL in order to pick up from the recovery checkpoint correctly.
Quiesce and undeploy all running applications with persisted streams. Stop and undeploy all other running and deployed applications.
-
Open the Striim console and enter the following commands to stop the hidden monitoring applications:
stop application Global.MonitoringSourceApp; undeploy application Global.MonitoringSourceApp; stop application Global.MonitoringProcessApp; undeploy application Global.MonitoringProcessApp; exit;
-
On each server in the cluster, stop the striim-node process:
-
In CentOS 6 or Ubuntu 14.04:
sudo stop striim-node
-
In CentOS 7 or Ubuntu 16.04 or later:
sudo systemctl stop striim-node
-
-
If the metadata repository is hosted on Derby, on the server where Derby is installed, stop it:
-
In CentOS 6 or Ubuntu 14.04:
sudo stop striim-dbms
-
In CentOS 7 or Ubuntu 16.04 or later:
sudo systemctl stop striim-dbms
-
-
Export the metadata.
If the metadata repository is hosted on Derby, on the server that hosts Derby, enter the following commands to export the metadata:
cd /opt/striim sudo bin/tools.sh -A export -F export.json
If the metadata repository is hosted on Oracle, enter the following commands on any server:
cd /opt/striim sudo bin/tools.sh -A export -F export.json -r oracle
If the metadata repository is hosted on PostgreSQL, enter the following commands on any server:
cd /opt/striim sudo bin/tools.sh -A export -F export.json -r postgres
-
Move the Striim configuration file to
/opt/striim/conf-backup
(or, if you prefer, some other directory) so it will not be removed when you uninstall the old version of Striim (sks.jks and sksKey.pwd exist only in 3.9.8 and later):sudo mkdir conf-backup sudo mv conf/startUp.properties conf-backup sudo mv conf/sks.jks sudo mv conf/sksKey.pwd
-
If the metadata repository is hosted on Derby, skip this step.
Remove the old repository tables (which you backed up in step 1):
If the metadata repository is hosted on Oracle, log in to
sqlplus
as the user created in Configuring a DBMS to host Striim's metadata repository and run/opt/striim/conf/DropMetadataReposOracle.sql
.If the metadata repository is hosted on PostgreSQL, log in to
psql
as the user created in Configuring a DBMS to host Striim's metadata repository and run/opt/striim/conf/DropMetadataReposPostgressql.sql
. Continue with Upgrading in CentOS or Upgrading in Ubuntu.
Complete the steps in Preparing to upgrade and exporting the metadata.
-
On each server in the cluster, enter the following commands to uninstall Striim (skip the dbms and samples commands if those packages are not installed on the node):
sudo rpm -e striim-node sudo rpm -e striim-dbms sudo rpm -e striim-samples
-
On each server in the cluster, download
striim-node-3.10.3-Linux.rpm
.If the metadata repository is hosted on Derby, download
striim-dbms-3.10.3-Linux.rpm
to the Derby host.Optionally, download
striim-samples-3.10.3-Linux.rpm
. -
On each server in the cluster, install the node package:
Optionally, also install the sample applications:
sudo rpm -ivh striim-samples-3.10.3-Linux.rpm
If the metadata repository is hosted on Derby, install it on the appropriate server:
sudo rpm -ivh striim-dbms-3.10.3-Linux.rpm
Continue with Importing the metadata and completing the upgrade.
Complete the steps in Preparing to upgrade and exporting the metadata.
-
On each server in the cluster, enter the following commands to uninstall Striim (skip the dbms and samples commands if those packages are not installed on the node):
sudo dpkg -r striim-node sudo dpkg -r striim-dbms sudo dpkg -r striim-samples
-
On each server in the cluster, download
striim-node-3.10.3-Linux.deb
.If the metadata repository is hosted on Derby, download
striim-dbms-3.10.3-Linux.deb
to the Derby host.Optionally, download
striim-node-3.10.3-Linux.deb
. -
On each server in the cluster, install the node package:
sudo dpkg -i striim-node-3.10.3-Linux.deb
Optionally, also install the sample applications:
sudo dpkg -i striim-samples-3.10.3-Linux.deb
If the metadata repository is hosted on Derby, install it on the appropriate server:
sudo dpkg -i striim-dbms-3.10.3-Linux.deb
Continue with Importing the metadata and completing the upgrade.
Complete the steps in Upgrading in CentOS or Upgrading in Ubuntu.
-
If the metadata repository is hosted on Derby, skip this step.
If the metadata repository is hosted on Oracle, log in to
sqlplus
as the user created in Configuring Oracle to host the metadata repository and run the/opt/striim/conf/DefineMetadataReposOracle.sql
script to create new repository tables.If the metadata repository is hosted on PostgreSQL, log in to
psql
as the user created in Configuring PostgreSQL to host the metadata repository and run the/opt/striim/conf/DefineMetadataReposPostgres.sql
script to create new repository tables. -
On each server in the cluster, enter the following command to copy your Striim configuration (adjust as necessary if you backed up your files to a different location):
cp /opt/striim/conf-backup/startUp.properties /opt/striim/conf
If you are upgrading from 3.9.8 or later, also enter the following commands:
cp /opt/striim/conf-backup/sks.jks /opt/striim/conf cp /opt/striim/conf-backup/sksKwy.pws /opt/striim/conf sudo chown striim /opt/striim/conf/sks.jks sudo chown striim /opt/striim/conf/sksKwy.pws
-
f you are upgrading from 3.9.8 or later, skip this step.
On each server in the cluster, edit
/opt/striim/startUp.properties
and delete the lines for WAClusterPassword and WAAdminPassword. -
f you are upgrading from 3.9.8 or later, skip this step.
On one server, run
sudo su - striim /opt/striim/bin/sksConfig.sh
and enter passwords for the Striim keystore and the admin and sys users. If hosting the metadata repository on Oracle or PostgreSQL, enter that password as well (see Configuring a DBMS to host Striim's metadata repository). If you are using a Bash or Bourne shell, characters other than letters, numbers, and the following punctuation marks must be escaped:, . _ + : @ % / -
-
Copy
sks.jks
snfsksKsy.pwd
from/opt/striim/conf/
on that server to/opt/striim/conf/
on all other servers and assign ownership of those files to Striim:sudo chown striim sks.jks sudo chown striim sksKey.pwd
-
Import the metadata. On the server where you exported the metadata when Preparing to upgrade and exporting the metadata, enter the following commands:
If the metadata repository is hosted on Derby:
cd /opt/striim sudo bin/tools.sh -A import -F export.json -f <old version>
For example, if upgrading from 3.8.4:
sudo bin/tools.sh -A import -F export.json -f 3.8.4
If the metadata repository is hosted on Oracle:
cd /opt/striim sudo bin/tools.sh -A import -F export.json -f <old version> -r oracle
If the metadata repository is hosted on PostgreSQL:
cd /opt/striim sudo bin/tools.sh -A import -F export.json -f <old version> -r postgres
-
When import is complete, reboot that system to verify that Striim restarts automatically.
Alternatively, to start without rebooting:
For CentOS 6.x or Ubuntu 14.04, enter the following commands:
If the metadata repository is hosted on Derby, on the Derby host only:
sudo start striim-dbms
-
Wait ten seconds, then enter:
sudo start striim-node sudo tail -F /opt/striim/logs/striim-node.log
For CentOS 7.x or Ubuntu 16.04 or later, enter the following commands:
-
If the metadata repository is hosted on Derby, on the derby host only:
sudo systemctl enable striim-dbms sudo systemctl start striim-dbms
-
Wait ten seconds, then enter:
sudo systemctl enable striim-node sudo systemctl start striim-node sudo tail -F /opt/striim/logs/striim-node.log
When you see the message
Please go to ... to administer, or use console
, Striim is running. Log in to verify that Striim is running, then reboot the other servers in the cluster, or start each server manually using the commands above.
Reload any open processors (see Loading and unloading open processors).
Upgrade and start all Forwarding Agents (see Upgrading Forwarding Agents).
Stop the agent (see Starting and stopping Striim).
-
Uninstall the agent:
If the agent is running as a process, stop the process, copy
agent.conf
and any drivers you added toagent/lib
to another location, and delete theagent
directory.If the agent is running as a service in CentOS, open a terminal and run
rpm -e striim-agent
.If the agent is running as a service in Ubuntu, open a terminal and run
dpkg --remove striim-agent
.If the agent is running as a service in Windows, stop the Striim Agent process, copy
agent.conf
and any drivers you added toagent/lib
to another location, then runAgent/conf/windowsAgent/yajsw_agent/bat/uninstallService.bat
.
Install the new version of the agent as described in Striim Forwarding Agent installation and configuration. If running the agent as a process or as a service in Windows, use the backed-up copy of
agent.conf
, and before starting the agent copy any backed-up drivers toagent/lib
. (If usingrpm
ordpkg
, these files are preserved.)
Comments