Star

Installation

Documentation for installation and configuration of ThingsBoard IoT Platform.

Upgrade instructions

In order to update ThingsBoard PE please follow these instructions

Upgrading to 3.1.1

Ubuntu/CentOS

NOTE: These upgrade steps are applicable for ThingsBoard version 3.1. In order to upgrade to 3.1.1 you need to upgrade to 3.1 first.

ThingsBoard package download

resources/3.1.1/thingsboard-ubuntu-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v3.1.1/thingsboard-3.1.1.deb
resources/3.1.1/thingsboard-centos-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v3.1.1/thingsboard-3.1.1.rpm

ThingsBoard service upgrade

resources/3.1.1/thingsboard-ubuntu-installation.sh
sudo dpkg -i thingsboard-3.1.1.deb
resources/3.1.1/thingsboard-centos-installation.sh
sudo rpm -Uvh thingsboard-3.1.1.rpm

NOTE: Package installer will ask you to merge your thingsboard configuration. It is preferred to use merge option to make sure that all your previous parameters will not be overwritten.
Please make sure that you set database.ts.type parameter value (in the file /etc/thingsboard/conf/thingsboard.yml) to “cassandra” instead of “sql” if you are using Cassandra database for timeseries data:

database:
  ts_max_intervals: "${DATABASE_TS_MAX_INTERVALS:700}" # Max number of DB queries generated by single API call to fetch telemetry records
  ts:
    type: "${DATABASE_TS_TYPE:sql}" # cassandra, sql, or timescale (for hybrid mode, DATABASE_TS_TYPE value should be cassandra, or timescale)

Execute regular upgrade script:

# Execute regular upgrade script
$ sudo /usr/share/thingsboard/bin/install/upgrade.sh --fromVersion=3.1.0

Start the service

$ sudo service thingsboard start

Windows

NOTE: These upgrade steps are applicable for ThingsBoard version 3.1. In order to upgrade to 3.1.1 you need to upgrade to 3.1 first.

ThingsBoard package download

Download ThingsBoard installation archive for Windows: thingsboard-windows-3.1.1.zip.

ThingsBoard service upgrade

net stop thingsboard
database:
  ts_max_intervals: "${DATABASE_TS_MAX_INTERVALS:700}" # Max number of DB queries generated by single API call to fetch telemetry records
  ts:
    type: "${DATABASE_TS_TYPE:sql}" # cassandra, sql, or timescale (for hybrid mode, DATABASE_TS_TYPE value should be cassandra, or timescale)

NOTE Scripts listed above should be executed using Administrator Role.

Execute regular upgrade script:

C:\thingsboard>upgrade.bat --fromVersion=3.1.0

Start the service

net start thingsboard

Upgrading to 3.1

Ubuntu/CentOS

NOTE: These upgrade steps are applicable for ThingsBoard version 3.0.1. In order to upgrade to 3.1 you need to upgrade to 3.0.1 first.

ThingsBoard package download

resources/3.1/thingsboard-ubuntu-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v3.1/thingsboard-3.1.deb
resources/3.1/thingsboard-centos-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v3.1/thingsboard-3.1.rpm

ThingsBoard service upgrade

resources/3.1/thingsboard-ubuntu-installation.sh
sudo dpkg -i thingsboard-3.1.deb
resources/3.1/thingsboard-centos-installation.sh
sudo rpm -Uvh thingsboard-3.1.rpm

NOTE: Package installer will ask you to merge your thingsboard configuration. It is preferred to use merge option to make sure that all your previous parameters will not be overwritten.
Please make sure that you set database.ts.type parameter value (in the file /etc/thingsboard/conf/thingsboard.yml) to “cassandra” instead of “sql” if you are using Cassandra database for timeseries data:

database:
  ts_max_intervals: "${DATABASE_TS_MAX_INTERVALS:700}" # Max number of DB queries generated by single API call to fetch telemetry records
  ts:
    type: "${DATABASE_TS_TYPE:sql}" # cassandra, sql, or timescale (for hybrid mode, DATABASE_TS_TYPE value should be cassandra, or timescale)

NOTE: Cassandra database does not support advanced filters. If you were using Cassandra database for timeseries data please make sure that database.ts_latest.type parameter value (in the file /etc/thingsboard/conf/thingsboard.yml) is “sql”:

database:
...
  ts_latest:
    type: "${DATABASE_TS_LATEST_TYPE:sql}" # cassandra, sql, or timescale (for hybrid mode, DATABASE_TS_TYPE value should be cassandra, or timescale)

and execute the following migration script:

# Execute script to migrate latest timeseries data from Cassandra to PostgreSQL
$ sudo /usr/share/thingsboard/bin/install/upgrade.sh --fromVersion=3.0.1-cassandra

Execute regular upgrade script:

# Execute regular upgrade script
$ sudo /usr/share/thingsboard/bin/install/upgrade.sh --fromVersion=3.0.1

Start the service

$ sudo service thingsboard start

Windows

NOTE: These upgrade steps are applicable for ThingsBoard version 3.0.1. In order to upgrade to 3.1 you need to upgrade to 3.0.1 first.

ThingsBoard package download

Download ThingsBoard installation archive for Windows: thingsboard-windows-3.1.zip.

ThingsBoard service upgrade

net stop thingsboard
database:
  ts_max_intervals: "${DATABASE_TS_MAX_INTERVALS:700}" # Max number of DB queries generated by single API call to fetch telemetry records
  ts:
    type: "${DATABASE_TS_TYPE:sql}" # cassandra, sql, or timescale (for hybrid mode, DATABASE_TS_TYPE value should be cassandra, or timescale)

NOTE Scripts listed above should be executed using Administrator Role.

NOTE: If you were using Cassandra database for entities data execute the following migration script:

C:\thingsboard>upgrade.bat --fromVersion=3.0.1-cassandra

Execute regular upgrade script:

C:\thingsboard>upgrade.bat --fromVersion=3.0.1

Start the service

net start thingsboard

Upgrading to 3.0.1

Ubuntu/CentOS

NOTE: These upgrade steps are applicable for ThingsBoard version 3.0. In order to upgrade to 3.0.1 you need to upgrade to 3.0 first.


Important note before upgrading to ThingsBoard 3.0

  • ThingsBoard UI was rewritten from AngularJS 1.5.8 to use Angular 9.
    • What does it mean?
      • Generally speaking, it means: state of the art application, easier development of front-end elements, performance improvements and more flexibility with UI customizations.
    • How to upgrade?
      • You are safe to upgrade if you do NOT use custom widgets or custom actions in the dashboards.
      • New JS framework may not support your current code — custom widgets and custom actions, so they need to be refactored a bit. Thus we encourage you to test your customizations using our cloud environments or your dev instances.
  • Migration from pure Cassandra to Hybrid DB Approach
    • We still support Cassandra for storing telemetry data but not the entities like devices, customers, tenants, etc.
    • What does it mean?
      • This will simplify maintenance and future improvements that will enable advanced search capabilities in v3.1.
    • How to upgrade?
      • If you are using pure PostgreSQL setup or PostgreSQL (for entities) + Cassandra (for telemetry), you are not affected.
      • If you are using pure Cassandra - the upgrade procedure is automatic but takes some time. The downtime depends on the number of devices, attributes, alarms and relations. If you have less than 10 million of those entities the upgrade should take a few minutes and depends on the database performance.

FYI: we will continue support of v2.5 until May 1st 2021, so no need to rush with the migration. Our team is ready to support you on the way, let’s make your upgrade process stressless.


Since ThingsBoard 3.0 only PostgreSQL database is supported for entities data

ThingsBoard package download

resources/3.0.1/thingsboard-ubuntu-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v3.0.1/thingsboard-3.0.1.deb
resources/3.0.1/thingsboard-centos-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v3.0.1/thingsboard-3.0.1.rpm

ThingsBoard service upgrade

resources/3.0.1/thingsboard-ubuntu-installation.sh
sudo dpkg -i thingsboard-3.0.1.deb
resources/3.0.1/thingsboard-centos-installation.sh
sudo rpm -Uvh thingsboard-3.0.1.rpm

NOTE: Package installer will ask you to merge your thingsboard configuration. It is preferred to use merge option to make sure that all your previous parameters will not be overwritten.
Please make sure that you set database.ts.type parameter value (in the file /etc/thingsboard/conf/thingsboard.yml) to “cassandra” instead of “sql” if you are using Cassandra database for timeseries data:

database:
  ts_max_intervals: "${DATABASE_TS_MAX_INTERVALS:700}" # Max number of DB queries generated by single API call to fetch telemetry records
  ts:
    type: "${DATABASE_TS_TYPE:sql}" # cassandra, sql, or timescale (for hybrid mode, DATABASE_TS_TYPE value should be cassandra, or timescale)

NOTE: If you were using Cassandra database for entities data execute the following migration script:

# Execute migration script from Cassandra to PostgreSQL
$ sudo /usr/share/thingsboard/bin/install/upgrade.sh --fromVersion=2.5.0-cassandra

Otherwise execute regular upgrade script:

# Execute regular upgrade script
$ sudo /usr/share/thingsboard/bin/install/upgrade.sh --fromVersion=2.5.0

Start the service

$ sudo service thingsboard start

Windows

NOTE: These upgrade steps are applicable for ThingsBoard version 3.0. In order to upgrade to 3.0.1 you need to upgrade to 3.0 first.


Important note before upgrading to ThingsBoard 3.0

  • ThingsBoard UI was rewritten from AngularJS 1.5.8 to use Angular 9.
    • What does it mean?
      • Generally speaking, it means: state of the art application, easier development of front-end elements, performance improvements and more flexibility with UI customizations.
    • How to upgrade?
      • You are safe to upgrade if you do NOT use custom widgets or custom actions in the dashboards.
      • New JS framework may not support your current code — custom widgets and custom actions, so they need to be refactored a bit. Thus we encourage you to test your customizations using our cloud environments or your dev instances.
  • Migration from pure Cassandra to Hybrid DB Approach
    • We still support Cassandra for storing telemetry data but not the entities like devices, customers, tenants, etc.
    • What does it mean?
      • This will simplify maintenance and future improvements that will enable advanced search capabilities in v3.1.
    • How to upgrade?
      • If you are using pure PostgreSQL setup or PostgreSQL (for entities) + Cassandra (for telemetry), you are not affected.
      • If you are using pure Cassandra - the upgrade procedure is automatic but takes some time. The downtime depends on the number of devices, attributes, alarms and relations. If you have less than 10 million of those entities the upgrade should take a few minutes and depends on the database performance.

FYI: we will continue support of v2.5 until May 1st 2021, so no need to rush with the migration. Our team is ready to support you on the way, let’s make your upgrade process stressless.

Since ThingsBoard 3.0 only PostgreSQL database is supported for entities data

  • If you are using Cassandra database for entities data please install PostgreSQL database before proceeding upgrade procedure using the following guide:

ThingsBoard package download

Download ThingsBoard installation archive for Windows: thingsboard-windows-3.0.1.zip.

ThingsBoard service upgrade

net stop thingsboard
database:
  ts_max_intervals: "${DATABASE_TS_MAX_INTERVALS:700}" # Max number of DB queries generated by single API call to fetch telemetry records
  ts:
    type: "${DATABASE_TS_TYPE:sql}" # cassandra, sql, or timescale (for hybrid mode, DATABASE_TS_TYPE value should be cassandra, or timescale)

NOTE Scripts listed above should be executed using Administrator Role.

NOTE: If you were using Cassandra database for entities data execute the following migration script:

C:\thingsboard>upgrade.bat --fromVersion=2.5.0-cassandra

Otherwise execute regular upgrade script:

C:\thingsboard>upgrade.bat --fromVersion=2.5.0

Start the service

net start thingsboard

Upgrading to 3.0

NOTE: These upgrade steps are applicable for ThingsBoard version 2.5.4. In order to upgrade to 3.0 you need to upgrade to 2.5.4 first.

Ubuntu/CentOS

Important note before upgrading to ThingsBoard 3.0

  • ThingsBoard UI was rewritten from AngularJS 1.5.8 to use Angular 9.
    • What does it mean?
      • Generally speaking, it means: state of the art application, easier development of front-end elements, performance improvements and more flexibility with UI customizations.
    • How to upgrade?
      • You are safe to upgrade if you do NOT use custom widgets or custom actions in the dashboards.
      • New JS framework may not support your current code — custom widgets and custom actions, so they need to be refactored a bit. Thus we encourage you to test your customizations using our cloud environments or your dev instances.
  • Migration from pure Cassandra to Hybrid DB Approach
    • We still support Cassandra for storing telemetry data but not the entities like devices, customers, tenants, etc.
    • What does it mean?
      • This will simplify maintenance and future improvements that will enable advanced search capabilities in v3.1.
    • How to upgrade?
      • If you are using pure PostgreSQL setup or PostgreSQL (for entities) + Cassandra (for telemetry), you are not affected.
      • If you are using pure Cassandra - the upgrade procedure is automatic but takes some time. The downtime depends on the number of devices, attributes, alarms and relations. If you have less than 10 million of those entities the upgrade should take a few minutes and depends on the database performance.

FYI: we will continue support of v2.5 until May 1st 2021, so no need to rush with the migration. Our team is ready to support you on the way, let’s make your upgrade process stressless.


Since ThingsBoard 3.0 only PostgreSQL database is supported for entities data

ThingsBoard package download

resources/3.0.0/thingsboard-ubuntu-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v3.0/thingsboard-3.0.deb
resources/3.0.0/thingsboard-centos-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v3.0/thingsboard-3.0.rpm

ThingsBoard service upgrade

NOTE: Package installer will ask you to merge your thingsboard configuration. It is preferred to use merge option to make sure that all your previous parameters will not be overwritten.
Please make sure that you set database.ts.type parameter value (in the file /etc/thingsboard/conf/thingsboard.yml) to “cassandra” instead of “sql” if you are using Cassandra database for timeseries data:

database:
  ts_max_intervals: "${DATABASE_TS_MAX_INTERVALS:700}" # Max number of DB queries generated by single API call to fetch telemetry records
  ts:
    type: "${DATABASE_TS_TYPE:sql}" # cassandra, sql, or timescale (for hybrid mode, DATABASE_TS_TYPE value should be cassandra, or timescale)

NOTE: If you were using Cassandra database for entities data execute the following migration script:

# Execute migration script from Cassandra to PostgreSQL
$ sudo /usr/share/thingsboard/bin/install/upgrade.sh --fromVersion=2.5.0-cassandra

Otherwise execute regular upgrade script:

# Execute regular upgrade script
$ sudo /usr/share/thingsboard/bin/install/upgrade.sh --fromVersion=2.5.0

Start the service

$ sudo service thingsboard start

Windows

NOTE: These upgrade steps are applicable for ThingsBoard version 2.5.4. In order to upgrade to 3.0 you need to upgrade to 2.5.4 first.

Important note before upgrading to ThingsBoard 3.0

  • ThingsBoard UI was rewritten from AngularJS 1.5.8 to use Angular 9.
    • What does it mean?
      • Generally speaking, it means: state of the art application, easier development of front-end elements, performance improvements and more flexibility with UI customizations.
    • How to upgrade?
      • You are safe to upgrade if you do NOT use custom widgets or custom actions in the dashboards.
      • New JS framework may not support your current code — custom widgets and custom actions, so they need to be refactored a bit. Thus we encourage you to test your customizations using our cloud environments or your dev instances.
  • Migration from pure Cassandra to Hybrid DB Approach
    • We still support Cassandra for storing telemetry data but not the entities like devices, customers, tenants, etc.
    • What does it mean?
      • This will simplify maintenance and future improvements that will enable advanced search capabilities in v3.1.
    • How to upgrade?
      • If you are using pure PostgreSQL setup or PostgreSQL (for entities) + Cassandra (for telemetry), you are not affected.
      • If you are using pure Cassandra - the upgrade procedure is automatic but takes some time. The downtime depends on the number of devices, attributes, alarms and relations. If you have less than 10 million of those entities the upgrade should take a few minutes and depends on the database performance.

FYI: we will continue support of v2.5 until May 1st 2021, so no need to rush with the migration. Our team is ready to support you on the way, let’s make your upgrade process stressless.

Since ThingsBoard 3.0 only PostgreSQL database is supported for entities data

  • If you are using Cassandra database for entities data please install PostgreSQL database before proceeding upgrade procedure using the following guide:

ThingsBoard package download

Download ThingsBoard installation archive for Windows: thingsboard-windows-3.0.zip.

ThingsBoard service upgrade

net stop thingsboard
database:
  ts_max_intervals: "${DATABASE_TS_MAX_INTERVALS:700}" # Max number of DB queries generated by single API call to fetch telemetry records
  ts:
    type: "${DATABASE_TS_TYPE:sql}" # cassandra, sql, or timescale (for hybrid mode, DATABASE_TS_TYPE value should be cassandra, or timescale)

NOTE Scripts listed above should be executed using Administrator Role.

NOTE: If you were using Cassandra database for entities data execute the following migration script:

C:\thingsboard>upgrade.bat --fromVersion=2.5.0-cassandra

Otherwise execute regular upgrade script:

C:\thingsboard>upgrade.bat --fromVersion=2.5.0

Start the service

net start thingsboard

Upgrading to 2.5.4

Ubuntu/CentOS

NOTE: These upgrade steps are applicable for ThingsBoard version 2.5.3. In order to upgrade to 2.5.4 you need to upgrade to 2.5.3 first.

ThingsBoard package download

resources/2.5.4/thingsboard-ubuntu-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v2.5.4/thingsboard-2.5.4.deb
resources/2.5.4/thingsboard-centos-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v2.5.4/thingsboard-2.5.4.rpm

ThingsBoard service upgrade

resources/2.5.4/thingsboard-ubuntu-installation.sh
sudo dpkg -i thingsboard-2.5.4.deb
resources/2.5.4/thingsboard-centos-installation.sh
sudo rpm -Uvh thingsboard-2.5.4.rpm

NOTE: Package installer will ask you to merge your thingsboard configuration. It is preferred to use merge option to make sure that all your previous parameters will not be overwritten.

Start the service

$ sudo service thingsboard start

Windows

NOTE: These upgrade steps are applicable for ThingsBoard version 2.5.3. In order to upgrade to 2.5.4 you need to upgrade to 2.5.3 first.

ThingsBoard package download

Download ThingsBoard installation archive for Windows: thingsboard-windows-2.5.4.zip.

ThingsBoard service upgrade

net stop thingsboard

Start the service

net start thingsboard

Upgrading to 2.5.3

Ubuntu/CentOS

NOTE: These upgrade steps are applicable for ThingsBoard version 2.5.2. In order to upgrade to 2.5.3 you need to upgrade to 2.5.2 first.

ThingsBoard package download

resources/2.5.3/thingsboard-ubuntu-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v2.5.3/thingsboard-2.5.3.deb
resources/2.5.3/thingsboard-centos-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v2.5.3/thingsboard-2.5.3.rpm

ThingsBoard service upgrade

resources/2.5.3/thingsboard-ubuntu-installation.sh
sudo dpkg -i thingsboard-2.5.3.deb
resources/2.5.3/thingsboard-centos-installation.sh
sudo rpm -Uvh thingsboard-2.5.3.rpm

NOTE: Package installer will ask you to merge your thingsboard configuration. It is preferred to use merge option to make sure that all your previous parameters will not be overwritten.

Start the service

$ sudo service thingsboard start

Windows

NOTE: These upgrade steps are applicable for ThingsBoard version 2.5.2. In order to upgrade to 2.5.3 you need to upgrade to 2.5.2 first.

ThingsBoard package download

Download ThingsBoard installation archive for Windows: thingsboard-windows-2.5.3.zip.

ThingsBoard service upgrade

net stop thingsboard

Start the service

net start thingsboard

Upgrading to 2.5.2

Ubuntu/CentOS

NOTE: These upgrade steps are applicable for ThingsBoard version 2.5.1. In order to upgrade to 2.5.2 you need to upgrade to 2.5.1 first.

ThingsBoard package download

resources/2.5.2/thingsboard-ubuntu-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v2.5.2/thingsboard-2.5.2.deb
resources/2.5.2/thingsboard-centos-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v2.5.2/thingsboard-2.5.2.rpm

ThingsBoard service upgrade

resources/2.5.2/thingsboard-ubuntu-installation.sh
sudo dpkg -i thingsboard-2.5.2.deb
resources/2.5.2/thingsboard-centos-installation.sh
sudo rpm -Uvh thingsboard-2.5.2.rpm

NOTE: Upgrading ThingsBoard to 2.5.2 version in case of using PostgreSQL database require to upgrade the PostgreSQL service to 11.x version.

Please refer to the guides below that will describe how to upgrade your PostgreSQL service on:

NOTE: Package installer will ask you to merge your thingsboard configuration. It is preferred to use merge option to make sure that all your previous parameters will not be overwritten.

# Finally, execute upgrade script and specify your previous ThingsBoard version. 
$ sudo /usr/share/thingsboard/bin/install/upgrade.sh --fromVersion=2.4.3

Start the service

$ sudo service thingsboard start

Windows

NOTE: These upgrade steps are applicable for ThingsBoard version 2.5.1. In order to upgrade to 2.5.2 you need to upgrade to 2.5.1 first.

ThingsBoard package download

Download ThingsBoard installation archive for Windows: thingsboard-windows-2.5.2.zip.

ThingsBoard service upgrade

net stop thingsboard

NOTE Scripts listed above should be executed using Administrator Role.

C:\thingsboard>upgrade.bat --fromVersion=2.4.3

Start the service

net start thingsboard

Upgrading to 2.5.1

These steps are applicable for 2.4.3+ ThingsBoard version.

Ubuntu/CentOS

ThingsBoard package download

resources/2.5.1/thingsboard-ubuntu-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v2.5.1/thingsboard-2.5.1.deb
resources/2.5.1/thingsboard-centos-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v2.5.1/thingsboard-2.5.1.rpm

ThingsBoard service upgrade

resources/2.5.1/thingsboard-ubuntu-installation.sh
sudo dpkg -i thingsboard-2.5.1.deb
resources/2.5.1/thingsboard-centos-installation.sh
sudo rpm -Uvh thingsboard-2.5.1.rpm

NOTE: Upgrading ThingsBoard to 2.5.1 version in case of using PostgreSQL database require to upgrade the PostgreSQL service to 11.x version.

Please refer to the guides below that will describe how to upgrade your PostgreSQL service on:

NOTE: Package installer will ask you to merge your thingsboard configuration. It is preferred to use merge option to make sure that all your previous parameters will not be overwritten.

# Finally, execute upgrade script and specify your previous ThingsBoard version. 
$ sudo /usr/share/thingsboard/bin/install/upgrade.sh --fromVersion=2.4.3

Start the service

$ sudo service thingsboard start

Windows

ThingsBoard package download

Download ThingsBoard installation archive for Windows: thingsboard-windows-2.5.1.zip.

ThingsBoard service upgrade

net stop thingsboard

NOTE Scripts listed above should be executed using Administrator Role.

C:\thingsboard>upgrade.bat --fromVersion=2.4.3

Start the service

net start thingsboard

Upgrading to 2.5

These steps are applicable for 2.4.3 ThingsBoard version.

Ubuntu/CentOS

ThingsBoard package download

resources/2.5/thingsboard-ubuntu-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v2.5/thingsboard-2.5.deb
resources/2.5/thingsboard-centos-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v2.5/thingsboard-2.5.rpm

ThingsBoard service upgrade

resources/2.5/thingsboard-ubuntu-installation.sh
sudo dpkg -i thingsboard-2.5.deb
resources/2.5/thingsboard-centos-installation.sh
sudo rpm -Uvh thingsboard-2.5.rpm

NOTE: Upgrading ThingsBoard from 2.4.3 to 2.5 version in case of using PostgreSQL database require to upgrade the PostgreSQL service to 11.x version.

Please refer to the guides below that will describe how to upgrade your PostgreSQL service on:

NOTE: Package installer will ask you to merge your thingsboard configuration. It is preferred to use merge option to make sure that all your previous parameters will not be overwritten.
Please make sure that you set database.entities.type and database.ts.type parameters values (in the file /etc/thingsboard/conf/thingsboard.yml) to “cassandra” instead of “sql” in order to upgrade your cassandra database:

database:
  ts_max_intervals: "${DATABASE_TS_MAX_INTERVALS:700}" # Max number of DB queries generated by single API call to fetch telemetry records
  entities:
    type: "${DATABASE_ENTITIES_TYPE:sql}" # cassandra OR sql
  ts:
    type: "${DATABASE_TS_TYPE:sql}" # cassandra, sql, or timescale (for hybrid mode, DATABASE_TS_TYPE value should be cassandra, or timescale)

# note: timescale works only with postgreSQL database for DATABASE_ENTITIES_TYPE.

NOTE: If you are using PostgreSql(Sql) for time-series data storage before executing the upgrade script, go to the PostgreSQL terminal(psql) and follow the instructions below:

# Connect to thingsboard database:
\c thingsboard

# Execute the next commands:

# Update ts_kv table constraints:
ALTER TABLE ts_kv DROP CONSTRAINT IF EXISTS ts_kv_unq_key;
ALTER TABLE ts_kv DROP CONSTRAINT IF EXISTS ts_kv_pkey;
ALTER TABLE ts_kv ADD CONSTRAINT ts_kv_pkey PRIMARY KEY (entity_type, entity_id, key, ts);

# Update ts_kv_latest table constraints:
ALTER TABLE ts_kv_latest DROP CONSTRAINT IF EXISTS ts_kv_latest_unq_key;
ALTER TABLE ts_kv_latest DROP CONSTRAINT IF EXISTS ts_kv_latest_pkey;
ALTER TABLE ts_kv_latest ADD CONSTRAINT ts_kv_latest_pkey PRIMARY KEY (entity_type, entity_id, key);

# exit psql terminal 
\q
# Finally, execute upgrade script
$ sudo /usr/share/thingsboard/bin/install/upgrade.sh --fromVersion=2.4.3

Start the service

$ sudo service thingsboard start

Windows

ThingsBoard package download

Download ThingsBoard installation archive for Windows: thingsboard-windows-2.5.zip.

ThingsBoard service upgrade

net stop thingsboard
database:
  ts_max_intervals: "${DATABASE_TS_MAX_INTERVALS:700}" # Max number of DB queries generated by single API call to fetch telemetry records
  entities:
    type: "${DATABASE_ENTITIES_TYPE:sql}" # cassandra OR sql
  ts:
    type: "${DATABASE_TS_TYPE:sql}" # cassandra, sql, or timescale (for hybrid mode, DATABASE_TS_TYPE value should be cassandra, or timescale)

# note: timescale works only with postgreSQL database for DATABASE_ENTITIES_TYPE.

NOTE: If you are using PostgreSql(Sql) for time-series data storage before executing the upgrade script, you need to access the psql terminal. Once you will be logged to the psql terminal, please follow the instructions below:

# Connect to thingsboard database:
\c thingsboard

# Execute the next commands:

# Update ts_kv table constraints:
ALTER TABLE ts_kv DROP CONSTRAINT IF EXISTS ts_kv_unq_key;
ALTER TABLE ts_kv DROP CONSTRAINT IF EXISTS ts_kv_pkey;
ALTER TABLE ts_kv ADD CONSTRAINT ts_kv_pkey PRIMARY KEY (entity_type, entity_id, key, ts);

# Update ts_kv_latest table constraints:
ALTER TABLE ts_kv_latest DROP CONSTRAINT IF EXISTS ts_kv_latest_unq_key;
ALTER TABLE ts_kv_latest DROP CONSTRAINT IF EXISTS ts_kv_latest_pkey;
ALTER TABLE ts_kv_latest ADD CONSTRAINT ts_kv_latest_pkey PRIMARY KEY (entity_type, entity_id, key);

# exit psql terminal 
\q

NOTE Scripts listed above should be executed using Administrator Role.

C:\thingsboard>upgrade.bat --fromVersion=2.4.3

Start the service

net start thingsboard

Upgrading to 2.4.3

These steps are applicable for 2.4.2 and 2.4.2.1 ThingsBoard versions.

Ubuntu/CentOS

ThingsBoard package download

resources/2.4.3/thingsboard-ubuntu-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v2.4.3/thingsboard-2.4.3.deb
resources/2.4.3/thingsboard-centos-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v2.4.3/thingsboard-2.4.3.rpm

ThingsBoard service upgrade

resources/2.4.3/thingsboard-ubuntu-installation.sh
sudo dpkg -i thingsboard-2.4.3.deb
resources/2.4.3/thingsboard-centos-installation.sh
sudo rpm -Uvh thingsboard-2.4.3.rpm

NOTE: Package installer will ask you to merge your thingsboard configuration. It is preferred to use merge option to make sure that all your previous parameters will not be overwritten.
Please make sure that you set database.entities.type and database.ts.type parameters values (in the file /etc/thingsboard/conf/thingsboard.yml) to “cassandra” instead of “sql” in order to upgrade your cassandra database:

    database:
      entities:
        type: "${DATABASE_ENTITIES_TYPE:cassandra}" # cassandra OR sql
      ts:
        type: "${DATABASE_TS_TYPE:cassandra}" # cassandra OR sql (for hybrid mode, only this value should be cassandra)
# Execute upgrade script
$ sudo /usr/share/thingsboard/bin/install/upgrade.sh --fromVersion=2.4.2

Start the service

$ sudo service thingsboard start

Windows

ThingsBoard package download

Download ThingsBoard installation archive for Windows: thingsboard-windows-2.4.3.zip.

ThingsBoard service upgrade

net stop thingsboard

NOTE Scripts listed above should be executed using Administrator Role.

C:\thingsboard>upgrade.bat --fromVersion=2.4.2

Start the service

net start thingsboard

Upgrading to 2.4.2.1

These steps are applicable for 2.4.1 and 2.4.2 ThingsBoard versions.

Ubuntu/CentOS

ThingsBoard package download

resources/2.4.2.1/thingsboard-ubuntu-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v2.4.2.1/thingsboard-2.4.2.1.deb
resources/2.4.2.1/thingsboard-centos-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v2.4.2.1/thingsboard-2.4.2.1.rpm

ThingsBoard service upgrade

resources/2.4.2.1/thingsboard-ubuntu-installation.sh
sudo dpkg -i thingsboard-2.4.2.1.deb
resources/2.4.2.1/thingsboard-centos-installation.sh
sudo rpm -Uvh thingsboard-2.4.2.1.rpm

NOTE: Package installer will ask you to merge your thingsboard configuration. It is preferred to use merge option to make sure that all your previous parameters will not be overwritten.
Please make sure that you set database.entities.type and database.ts.type parameters values (in the file /etc/thingsboard/conf/thingsboard.yml) to “cassandra” instead of “sql” in order to upgrade your cassandra database:

    database:
      entities:
        type: "${DATABASE_ENTITIES_TYPE:cassandra}" # cassandra OR sql
      ts:
        type: "${DATABASE_TS_TYPE:cassandra}" # cassandra OR sql (for hybrid mode, only this value should be cassandra)
# Execute upgrade script
$ sudo /usr/share/thingsboard/bin/install/upgrade.sh --fromVersion=2.4.1 

Start the service

$ sudo service thingsboard start

Windows

ThingsBoard package download

Download ThingsBoard installation archive for Windows: thingsboard-windows-2.4.2.1.zip.

ThingsBoard service upgrade

net stop thingsboard

NOTE Scripts listed above should be executed using Administrator Role.

C:\thingsboard>upgrade.bat --fromVersion=2.4.1

Start the service

net start thingsboard

Upgrading to 2.4.1

These steps are applicable for 2.4.0 ThingsBoard version.

Ubuntu/CentOS

ThingsBoard package download

resources/2.4.1/thingsboard-ubuntu-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v2.4.1/thingsboard-2.4.1.deb
resources/2.4.1/thingsboard-centos-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v2.4.1/thingsboard-2.4.1.rpm

ThingsBoard service upgrade

resources/2.4.1/thingsboard-ubuntu-installation.sh
sudo dpkg -i thingsboard-2.4.1.deb
resources/2.4.1/thingsboard-centos-installation.sh
sudo rpm -Uvh thingsboard-2.4.1.rpm

NOTE: Package installer will ask you to merge your thingsboard configuration. It is preferred to use merge option to make sure that all your previous parameters will not be overwritten.
Please make sure that you set database.entities.type and database.ts.type parameters values (in the file /etc/thingsboard/conf/thingsboard.yml) to “cassandra” instead of “sql” in order to upgrade your cassandra database:

    database:
      entities:
        type: "${DATABASE_ENTITIES_TYPE:cassandra}" # cassandra OR sql
      ts:
        type: "${DATABASE_TS_TYPE:cassandra}" # cassandra OR sql (for hybrid mode, only this value should be cassandra)
# Execute upgrade script
$ sudo /usr/share/thingsboard/bin/install/upgrade.sh --fromVersion=2.4.0 

Start the service

$ sudo service thingsboard start

Windows

ThingsBoard package download

Download ThingsBoard installation archive for Windows: thingsboard-windows-2.4.1.zip.

ThingsBoard service upgrade

net stop thingsboard

NOTE Scripts listed above should be executed using Administrator Role.

C:\thingsboard>upgrade.bat --fromVersion=2.4.0

Start the service

net start thingsboard

Upgrading to 2.4.0

These steps are applicable for 2.3.1 ThingsBoard version.

Ubuntu/CentOS

ThingsBoard package download

resources/2.4.0/thingsboard-ubuntu-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v2.4/thingsboard-2.4.deb
resources/2.4.0/thingsboard-centos-download.sh
wget https://github.com/thingsboard/thingsboard/releases/download/v2.4/thingsboard-2.4.rpm

ThingsBoard service upgrade

NOTE: Package installer will ask you to merge your thingsboard configuration. It is preferred to use merge option to make sure that all your previous parameters will not be overwritten.
Please make sure that you set database.entities.type and database.ts.type parameters values (in the file /etc/thingsboard/conf/thingsboard.yml) to “cassandra” instead of “sql” in order to upgrade your cassandra database:

    database:
      entities:
        type: "${DATABASE_ENTITIES_TYPE:cassandra}" # cassandra OR sql
      ts:
        type: "${DATABASE_TS_TYPE:cassandra}" # cassandra OR sql (for hybrid mode, only this value should be cassandra)
# Execute upgrade script
$ sudo /usr/share/thingsboard/bin/install/upgrade.sh --fromVersion=2.3.1 

Start the service

$ sudo service thingsboard start

Windows

ThingsBoard package download

Download ThingsBoard installation archive for Windows: thingsboard-windows-2.4.zip.

ThingsBoard service upgrade

net stop thingsboard

NOTE Scripts listed above should be executed using Administrator Role.

C:\thingsboard>upgrade.bat --fromVersion=2.3.1

Start the service

net start thingsboard

Next steps