Skip to main content
Skip table of contents

Upgrade to 5.1

This document walks you through the process of upgrading your thingsHub Installation to the version 5.1.x. We outline the features and changes that this version brings in the What’s New page. Any breaking changes that this version brings can be seen in the Breaking Changes page.
You can directly upgrade the thingsHub installation from versions 5.0.x to the 5.1.x. For versions older than 5.0, firstly upgrade to at least 5.0.x before continuing with this document. Please refer to upgrade-to-5.0.x document to upgrade thingsHub Installation to 5.0.x. This document outlines only the incremental changes required from version 5.0.x.

Before You Begin

  • Make sure to read the What’s New for the release 5.1.x.

  • Checkout the Breaking Changes page to see if this version has any major breaking changes.

  • Make sure the thingsHub Installation to be upgraded is in the version 5.0.x.

  • Make sure all the Prerequisites have been setup.

Prerequisites

This section lists all the new prerequisites that need to be setup before doing the upgrade.

  • Notifier:
    Notifier is a cluster-level central service that provides an in-tenant notification service. This service is a must for trackinghub mode of installation but is optional for thingshub mode of the installation.
    Please refer to notifier installation guide to set it up in your kubernetes cluster.

Determine which version to upgrade to

This section shows how you can list all the available patch versions available for this thingsHub minor version i.e. 5.1. You can select the patch version you want to upgrade your thingsHub Installation to. We recommend using the latest available patch version to not miss out on any bug fixes and security patches.

BASH
!#/bin/bash

helm3 repo add smartmakers http://helm.smartmakers.de
helm3 repo update
helm3 search repo smartmakers/th-tenant --version 5.1 --versions
image-20240613-044642.png

Update Tenant Configuration

This section outlines all the changes that you need to do and that are available in the tenant configuration file. These changes, however, only encompass incremental changes required from the oldest release you can upgrade from i.e. 5.0.x.

  • Add the notifer block to the tenant configuration file:

    tenant_configuration.yaml

    YAML
    global
      name: thub_tenant
      tenant_mode: trackinghub
      
      ...
      
      radar:
        enabled: false
      temporal:
        enabled: false
      ...
      
      notifier:
        enabled: true
        notifier_url: < kube-dns address to the notifier deployment in the same cluster >
        api_key: < `token` from the tenant credentials block in notifier config file >
      ...
      
    ...


    notifier_config.yaml

    YAML
    global:
      ...
      stream:
        prefix: notifier
      tenant_credentials: 
        thub_tenant:
          token: Randomly generated token to be put in `api_key` of the notifier block in tenant config
          api_key: API_Key_From_thub_tenant_Tenant
          comment: tenant credentials for thub_tenant

Backup Databases

Before applying the upgrade, back up all your data from both the time-series database and the relational database. This section explains how you can backup and restore you databases.

  • Postgres

    BASH
    !#/bin/bash
    
    # backup:
    pg_dump -U <your-user> -h <address-to-your-db> -p <port> --database <your-database> --no-owner --format=t --verbose  >sql.dmp
    
    # restore:
    pg_restore -d <database> -h <address-to-your-db> -p <port> -U <your-user> --no-owner --role=<your-user> sql.dmp

  • InfluxDB
    Make sure that influxdb is port-forwarded to port 8086 in the system where you’re running the shell commands.

    BASH
    !#/bin/bash
    
    # backup:
    influxd backup -portable -db things_hub ./influxdata/
    
    # restore:
    influxd restore -portable -db things_hub ./influxdata/

If you have setup any other backing-up mechanisms in your infrastructure, you can leverage that as well for the backups in place of the one mentioned above.

Apply the Upgrade

After setting up the everything, we can proceed to upgrade the thingsHub Installation.

BASH
!#/bin/bash

helm3 repo update
helm3 upgrade <your-thingshub-installation> --namespace <your-thingshub-namespace> smartmakers/th-tenant --version 5.1.8 -f <tenant_configuration.yaml> --atomic

Post Upgrade Steps

There are no explicit things, for this version, that you need to do after the upgrade of your thingsHub Installation. However, we recommend doing smoke testing on your thingsHub Installation after the upgrade to ensure that the system is functioning smoothly.
Based on your use-case, we recommend checking the functionality of incoming device data, integrations, dashboards and tracked assets' position update.


Notes

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.