Minikube
This guide covers setting up TBMQ in cluster mode using Minikube.
Prerequisites
Section titled “Prerequisites”- A running Kubernetes cluster with
kubectlconfigured to communicate with it. If you don’t have Minikube installed, follow these instructions.
Clone TBMQ repository
Section titled Clone TBMQ repositorygit clone -b release-2.3.0 https://github.com/thingsboard/tbmq.gitcd tbmq/k8s/minikubeInstallation
Section titled “Installation”Run the installation script:
./k8s-install-tbmq.shRunning
Section titled “Running”Deploy TBMQ:
./k8s-deploy-tbmq.shOnce all resources have started, open http://{your-cluster-ip}:30001 in your browser (e.g. http://192.168.49.2:30001).
Check your cluster IP with:
minikube ipYou should see the TBMQ login page. Use the default System Administrator credentials:
Username:
Password:
sysadminOn first login, you are prompted to change the default password and re-login with the new credentials.
Logs, delete statefulsets and services
Section titled “Logs, delete statefulsets and services”To view TBMQ node logs:
-
List running TBMQ pods:
Terminal window kubectl get pods -l app=tbmq -
Fetch logs for a specific pod:
Terminal window kubectl logs -f TBMQ_POD_NAMEWhere
TBMQ_POD_NAMEis the pod name from the list above.
To check the state of all pods, services, deployments, and statefulsets:
kubectl get podskubectl get serviceskubectl get deploymentskubectl get statefulsetsSee the kubectl Cheat Sheet for more details.
To delete TBMQ nodes:
./k8s-delete-tbmq.shTo delete all resources including databases:
./k8s-delete-all.shUpgrading
Section titled “Upgrading”- Check the version-specific notes below for any preparation your target version requires.
- Back up your database (optional but recommended).
- Run the upgrade commands.
For full version history and supported upgrade paths, see the upgrade instructions page. If the documentation does not cover your specific upgrade path, contact us for guidance.
If there are no version-specific notes for your upgrade path, skip directly to Run upgrade.
Backup and restore (optional)
Section titled “Backup and restore (optional)”Backing up your PostgreSQL database before upgrading is highly recommended but optional. For guidance, follow the backup and restore instructions.
Upgrade to 2.3.0
Section titled Upgrade to 2.3.0This release migrates all third-party components from Bitnami images to official open-source alternatives. Review the third-party component updates before proceeding with the upgrade.
Then proceed with the upgrade.
Upgrade to 2.2.0
Section titled Upgrade to 2.2.0This release migrates MQTT authentication from YAML/env configuration into the database.
The upgrade script reads from database-setup.yml. Variables from tb-broker.yml are not applied during the upgrade — only the values in database-setup.yml are used. Ensure this file reflects your active configuration.
Supported variables in database-setup.yml
SECURITY_MQTT_BASIC_ENABLED(true|false)SECURITY_MQTT_SSL_ENABLED(true|false)SECURITY_MQTT_SSL_SKIP_VALIDITY_CHECK_FOR_CLIENT_CERT(true|false) — usuallyfalse
Once the file is verified, proceed with the upgrade.
Upgrade to 2.1.0
Section titled Upgrade to 2.1.0This release adds the Integration Executor microservice and updates third-party service versions.
Add Integration Executor microservice
This release adds support for external integrations via the new Integration Executor microservice.
Pull the updates from the release branch by following the Run upgrade steps up to (but not including) the upgrade script. The new config files will be included automatically.
Update third-party services
This release updates third-party dependency versions ( pull request):
| Service | Previous version | Updated version |
|---|---|---|
| Redis | 7.0 | 7.2.5 |
| PostgreSQL | 15.x | 16.x |
| Kafka | 3.5.1 | 3.7.0 |
After addressing third-party service versions, proceed with the upgrade.
Run upgrade
Section titled “Run upgrade”Pull the latest changes from the release branch:
git pull origin release-2.3.0Note: Make sure any custom changes are not lost during the merge.
After pulling, run the upgrade script:
./k8s-upgrade-tbmq.sh