device has an empty configuration for the edge agent / Module edgeHub not found in the current environment

DataSciencentist2021 141 Reputation points
2021-11-22T14:45:22.267+00:00

Hi everyone,

I just installed the latest Azure IoT Edge on my UP squared running Debian 11 (Bullseye) following the official manual (https://learn.microsoft.com/en-us/azure/iot-edge/how-to-provision-single-device-linux-symmetric?view=iotedge-2020-11&tabs=azure-portal).

Unfortunately, there seems to be a problem regarding the deployment manifest and the $edgeHub-module. When checking the Troubleshooting-Page of my $edgeAgent it shows the following error message:

Error 1:

11-22 11:10:01.380 +00:00 [ERR] - Error refreshing edge agent configuration from twin. Microsoft.Azure.Devices.Edge.Agent.Core.ConfigSources.ConfigEmptyException: This device has an empty configuration for the edge agent. Please set a deployment manifest. at Microsoft.Azure.Devices.Edge.Agent.IoTHub.EdgeAgentConnection.UpdateDeploymentConfig(TwinCollection desiredProperties) in /mnt/vss/_work/1/s/edge-agent/src/Microsoft.Azure.Devices.Edge.Agent.IoTHub/EdgeAgentConnection.cs:line 419 at Microsoft.Azure.Devices.Edge.Agent.IoTHub.EdgeAgentConnection.<RefreshTwinAsync>b__39_0(Twin twin) in /mnt/vss/_work/1/s/edge-agent/src/Microsoft.Azure.Devices.Edge.Agent.IoTHub/EdgeAgentConnection.cs:line 328  

Error 2:

2021-11-22 11:12:05.646 +00:00 [WRN] - Error handling request RestartModule System.InvalidOperationException: Module edgeHub not found in the current environment at Microsoft.Azure.Devices.Edge.Agent.Core.Requests.RestartRequestHandler.HandleRequestInternal(Option`1 payloadOption, CancellationToken cancellationToken) in /mnt/vss/_work/1/s/edge-agent/src/Microsoft.Azure.Devices.Edge.Agent.Core/requests/RestartRequestHandler.cs:line 45 at Microsoft.Azure.Devices.Edge.Agent.Core.Requests.RequestHandlerBase`2.HandleRequest(Option`1 payloadJson, CancellationToken cancellationToken) in /mnt/vss/_work/1/s/edge-agent/src/Microsoft.Azure.Devices.Edge.Agent.Core/requests/RequestHandlerBase.cs:line 30 at Microsoft.Azure.Devices.Edge.Agent.Core.Requests.RequestManager.ProcessRequest(String request, String payloadJson) in /mnt/vss/_work/1/s/edge-agent/src/Microsoft.Azure.Devices.Edge.Agent.Core/requests/RequestManager.cs:line 54  

The first error seems to be about the deployment manifest. I found the following page (Deploy module & routes with deployment manifests - Azure IoT Edge | Microsoft Learn) but don’t know which properties I have to change and also where I have to change them. I also couldn’t find a similar case with a solution on GitHub, Stackoverflow etc.. Will this error disappear as soon as I create any module (e.g. Modbus-module)?

Regarding the second error it seems, that there is no $edgeHub-module running. When I check the modules running (sudo iotedge list) it only lists the $edgeAgent:

NAME             STATUS           DESCRIPTION      CONFIG  
edgeAgent        running          Up 2 hours       mcr.microsoft.com/azureiotedge-agent:1.2  
  

When having a look at the Azure Portal it also says, that there is a problem regarding the $edgeHub-module:

151470-1.png

I don’t know why there seems to be no $edgeHub-module and how to install or create it. I thought of creating a new one via “Set modules”, but it seems I can’t change or delete the old one.

It would be great I someone could give me some hints how to solve these problems before I try to reinstall the whole thing :)

Best regards

Azure IoT Edge
Azure IoT Edge
An Azure service that is used to deploy cloud workloads to run on internet of things (IoT) edge devices via standard containers.
388 questions
Azure IoT Hub
Azure IoT Hub
An Azure service that enables bidirectional communication between internet of things (IoT) devices and applications.
695 questions
No comments
{count} votes

Accepted answer
  1. Matthijs van der Veer 3,656 Reputation points MVP
    2021-11-22T14:56:33.527+00:00

    Hi, I understand you've followed the installation instructions, and noticed that the edgeHub is not running. While the edgeHub is a system module, it will not start unless you have specified other modules in your deployment. Because you haven't configured any other modules to run on your device, edgeHub will simply not start.

    If you want, you can quickly verify that your installation is correct by following the steps on this page. It will guide you through the steps of deploying a module (a simulated temperature sensor) and afterwards, you should see the edgeHub starting as well! Let me know if you need any more information!


0 additional answers

Sort by: Most helpful