Skip to content
Stand with Ukraine flag

Minikube

This guide covers setting up TBMQ in cluster mode using Minikube.

  • A running Kubernetes cluster with kubectl configured to communicate with it. If you don’t have Minikube installed, follow these instructions.
Terminal window
git clone -b release-2.3.0 https://github.com/thingsboard/tbmq.git
cd tbmq/k8s/minikube

Run the installation script:

Terminal window
./k8s-install-tbmq.sh

Deploy TBMQ:

Terminal window
./k8s-deploy-tbmq.sh

Once 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:

Terminal window
minikube ip

You should see the TBMQ login page. Use the default System Administrator credentials:

Username:

Password:

sysadmin

On first login, you are prompted to change the default password and re-login with the new credentials.

To view TBMQ node logs:

  1. List running TBMQ pods:

    Terminal window
    kubectl get pods -l app=tbmq
  2. Fetch logs for a specific pod:

    Terminal window
    kubectl logs -f TBMQ_POD_NAME

    Where TBMQ_POD_NAME is the pod name from the list above.

To check the state of all pods, services, deployments, and statefulsets:

Terminal window
kubectl get pods
kubectl get services
kubectl get deployments
kubectl get statefulsets

See the kubectl Cheat Sheet for more details.

To delete TBMQ nodes:

Terminal window
./k8s-delete-tbmq.sh

To delete all resources including databases:

Terminal window
./k8s-delete-all.sh
  1. Check the version-specific notes below for any preparation your target version requires.
  2. Back up your database (optional but recommended).
  3. 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.

Backing up your PostgreSQL database before upgrading is highly recommended but optional. For guidance, follow the backup and restore instructions.

This 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.

This 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) — usually false

Once the file is verified, proceed with the upgrade.

This 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):

ServicePrevious versionUpdated version
Redis7.07.2.5
PostgreSQL15.x16.x
Kafka3.5.13.7.0

After addressing third-party service versions, proceed with the upgrade.

Pull the latest changes from the release branch:

Terminal window
git pull origin release-2.3.0

Note: Make sure any custom changes are not lost during the merge.

After pulling, run the upgrade script:

Terminal window
./k8s-upgrade-tbmq.sh