推送至 MQTT
创立 TelemetryService Yaml 文件
#telemetry_service.yaml
apiVersion: shifu.edgenesis.io/v1alpha1
kind: TelemetryService
metadata:
name: push-endpoint-1 # tag
namespace: devices
spec:
telemetrySeriveEndpoint: http://telemetryservice.shifu-service.svc.cluster.local
serviceSettings:
MQTTSetting:
MQTTServerAddress: 192.168.14.163:1883 # 将其批改为 MQTT Broker 的地址
MQTTTopic: /test/test # 将其批改为你公布数据的主题
telemetrySeriveEndpoint
是 telemetryService 的端点地址。MQTTServerAddress
示意你的 MQTT Broker 的地址。MQTTTopic
示意你公布原始数据的主题。
备注
如果你有多个遥测服务,你能够把它们写在一个文件里,用 — 进行宰割。
编辑 Configmap Yaml 文件
# configmap.yaml
data:
telemetries: |
telemetries:
device_health1:
properties:
instruction: status
pushSettings:
telemetryCollectionService: push-endpoint-1 # 将其批改为你刚创立 TelemetryService 的名字(# tag)
而后编辑 Configmap.yaml 文件,确保 telemetryCollectionService 的值与你在上一步创立的遥测服务的名称雷同。
再次部署 deviceShifu
而后你须要再次部署 deviceShifu,这样 TelemetryService 就会将采集到的数据公布到你的 MQTT Broker 中。
例子
上面是一个例子,帮忙你更好地理解如何应用它。
https://github.com/Edgenesis/…