-
Notifications
You must be signed in to change notification settings - Fork 33
Support for local MQTT broker (preview) #345
Copy link
Copy link
Open
Description
Currently, when attempting to enable the experimental local MQTT broker I'm seeing issues with edgeHub not able to start and complaining about missing environment variables. I got about 6 deep trying to supply these env vars manually before giving up on that route.
Repro steps:
sudo iotedgehubdev setup -c "<CONNECTION STRING>"
iotedgehubdev start -d deployment.json
Example deployment manifest:
{
"$schema-template": "1.0.0",
"modulesContent": {
"$edgeAgent": {
"properties.desired": {
"schemaVersion": "1.1",
"runtime": {
"type": "docker",
"settings": {
"minDockerVersion": "v1.25",
"loggingOptions": "",
"registryCredentials": {}
}
},
"systemModules": {
"edgeAgent": {
"type": "docker",
"settings": {
"image": "mcr.microsoft.com/azureiotedge-agent:1.2",
"createOptions": "{}"
}
},
"edgeHub": {
"type": "docker",
"status": "running",
"restartPolicy": "always",
"settings": {
"image": "mcr.microsoft.com/azureiotedge-hub:1.2",
"createOptions": "{\"HostConfig\":{\"PortBindings\":{\"5671/tcp\":[{\"HostPort\":\"5671\"}],\"8883/tcp\":[{\"HostPort\":\"8883\"}],\"443/tcp\":[{\"HostPort\":\"443\"}],\"1883/tcp\":[{\"HostPort\":\"1883\"}]}}}"
},
"env": {
"experimentalFeatures__mqttBrokerEnabled": {
"value": "true"
},
"experimentalFeatures__enabled": {
"value": "true"
},
"RuntimeLogLevel": {
"value": "debug"
}
}
}
},
"modules": {
}
}
},
"$edgeHub": {
"properties.desired": {
"schemaVersion": "1.2",
"routes": {
"Upstream": "FROM /messages/* INTO $upstream"
},
"storeAndForwardConfiguration": {
"timeToLiveSecs": 7200
},
"mqttBroker": {
"authorizations": [
{
"identities": ["{{iot:identity}}"],
"allow": [
{
"operations": ["mqtt:connect"]
}
]
},
{
"identities": ["{{iot:identity}}"],
"allow": [
{
"operations": ["mqtt:publish", "mqtt:subscribe"],
"resources": ["test_topic"]
}
]
}
]
}
}
}
}
}
Example error:
...
at Microsoft.Azure.Devices.Edge.Hub.Service.Program.Main() in /home/vsts/work/1/s/edge-hub/core/src/Microsoft.Azure.Devices.Edge.Hub.Service/Program.cs:line 36
Error: IOTEDGE_DEVICEID
Caused by:
environment variable not found
Removing the 'experimentalFeatures__mqttBrokerEnabled' env variable allows edgeHub to start normally.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels