mqtt-exporter
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
commonchart 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