MQTT Notification Settings

This page documents settings for configuring an MQTT service as a target for Bucket Notifications. See Publish Events to MQTT for a tutorial on using these settings.

You can establish or modify settings by defining:

  • an environment variable on the host system prior to starting or restarting the AIStor Server. Refer to your operating system’s documentation for how to define an environment variable.
  • a configuration setting using mc admin config set.

If you define both an environment variable and the similar configuration setting, AIStor uses the environment variable value.

Some settings have only an environment variable or a configuration setting, but not both.

Each configuration setting controls fundamental AIStor behavior and functionality. Test configuration changes in a lower environment, such as DEV or QA, before applying to production.

With these settings, MINIO_NOTIFY_MQTT_ENABLE_PRIMARY indicates the environment variable is associated to an MQTT service endpoint with an ID of PRIMARY.

Settings

Enable

Specify on to enable publishing bucket notifications to an MQTT endpoint. Defaults to off.

Broker

Specify the MQTT server/broker endpoint. AIStor supports TCP, TLS, or Websocket connections to the server/broker URL. For example:

  • tcp://mqtt.example.net:1883
  • tls://mqtt.example.net:1883
  • ws://mqtt.example.net:1883
version changed
Changed in version RELEASE.2023-05-27T05-56-19Z: AIStor checks the health of the specified URL (if it is resolvable and reachable) prior to adding the target. AIStor adds offline targets without blocking.

Topic

Specify the name of the MQTT topic to associate with events published by AIStor to the MQTT endpoint.

Username

Specify the MQTT username AIStor should use to authenticate to the MQTT server/broker.

Password

Specify the password for the MQTT username AIStor uses to authenticate to the MQTT server/broker.

version changed
Changed in version RELEASE.2023-06-23T20-26-00Z: AIStor redacts this value when returned as part of mc admin config get.

QoS

Specify the Quality of Service priority for the published events. Defaults to 0.

Keep alive interval

Specify the keep-alive interval for the MQTT connections. AIStor supports the following units of time measurement:

  • s - seconds, “60s”
  • m - minutes, “60m”
  • h - hours, “24h”
  • d - days, “7d”

Reconnect interval

Specify the reconnect interval for the MQTT connections. AIStor supports the following units of time measurement:

  • s - seconds, “60s”
  • m - minutes, “60m”
  • h - hours, “24h”
  • d - days, “7d”

Queue dir

Specify the directory path to enable MinIO’s persistent event store for undelivered messages, such as /opt/minio/events.

AIStor stores undelivered events in the specified store while the MQTT server/broker is offline and replays the stored events when connectivity resumes.

Queue limit

Specify the maximum limit for undelivered messages. Defaults to 100000.

Comment

Specify a comment to associate with the MQTT configuration.

All rights reserved 2024-Present, MinIO, Inc.