Files

mqtt-exporter

Version: 1.1.2 AppVersion: 1.0.0

Simple and generic Prometheus exporter for MQTT. Tested with Mosquitto MQTT and Xiaomi sensors.

This chart is not maintained by the upstream project and any issues with the chart should be raised here

Source Code

Requirements

Kubernetes: >=1.16.0-0

Dependencies

Repository Name Version
https://library-charts.k8s-at-home.com common 4.5.2

TL;DR

helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm repo update
helm install mqtt-exporter k8s-at-home/mqtt-exporter

Installing the Chart

To install the chart with the release name mqtt-exporter

helm install mqtt-exporter k8s-at-home/mqtt-exporter

Uninstalling the Chart

To uninstall the mqtt-exporter deployment

helm uninstall mqtt-exporter

The command removes all the Kubernetes components associated with the chart including persistent volumes and deletes the release.

Configuration

Read through the values.yaml file. It has several commented out suggested values. Other values may be used from the values.yaml from the common library.

Specify each parameter using the --set key=value[,key=value] argument to helm install.

helm install mqtt-exporter \
  --set env.TZ="America/New York" \
    k8s-at-home/mqtt-exporter

Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.

helm install mqtt-exporter k8s-at-home/mqtt-exporter -f values.yaml

Custom configuration

N/A

Values

Important: When deploying an application Helm chart you can add more values from our common library chart here

Key Type Default Description
env object See below environment variables. See image docs for more details.
env.LOG_LEVEL string "INFO" Logging level
env.MQTT_ADDRESS string "127.0.0.1" IP or hostname of MQTT broker
env.MQTT_IGNORED_TOPICS string nil Comma-separated lists of topics to ignore. Accepts wildcards.
env.MQTT_KEEPALIVE int 60 Keep alive interval to maintain connection with MQTT broker
env.MQTT_PASSWORD string nil Password which should be used to authenticate against the MQTT broker
env.MQTT_PORT int 1883 TCP port of MQTT broker
env.MQTT_TOPIC string "#" Topic path to subscribe to
env.MQTT_USERNAME string nil Username which should be used to authenticate against the MQTT broker
env.PROMETHEUS_PORT int 9000 HTTP server PORT to expose Prometheus metrics
env.PROMETHEUS_PREFIX string "mqtt_" Prefix added to the metric name, example: mqtt_temperature
env.TOPIC_LABEL string "topic" Define the Prometheus label for the topic, example temperature{topic="device1"}
env.TZ string "UTC" Set the container timezone
env.ZIGBEE2MQTT_AVAILABILITY string "False" Normalize sensor name for device availability metric added by Zigbee2MQTT
image.pullPolicy string "IfNotPresent" image pull policy
image.repository string "kpetrem/mqtt-exporter" image repository
image.tag string "latest" image tag
ingress.main object See values.yaml Enable and configure ingress settings for the chart under this key.
metrics.enabled bool See values.yaml Enable and configure a Prometheus serviceMonitor for the chart under this key.
metrics.serviceMonitor.interval string "30s" Interval at which Prometheus should scrape metrics
metrics.serviceMonitor.labels object {} Additional labels for the Kubernetes ServiceMonitor object
metrics.serviceMonitor.scrapeTimeout string "10s" Timeout after which the scrape is ended
persistence object See values.yaml Configure persistence settings for the chart under this key.
securityContext.capabilities.drop[0] string "ALL"
securityContext.readOnlyRootFilesystem bool true
securityContext.runAsNonRoot bool true
securityContext.runAsUser int 65534
service object See values.yaml Configures service settings for the chart.

Changelog

Version 1.1.2

Added

N/A

Changed

  • Upgraded common chart dependency to version 4.5.2

Fixed

N/A

Older versions

A historical overview of changes can be found on ArtifactHUB

Support


Autogenerated from chart metadata using helm-docs v0.1.1