iotblackbelt / noderededgemodule

This repo contains the documentation for Azure IoT Edge module to use node-red on IoT Edge.
MIT License
23 stars 18 forks source link

NoderedModule start failure on iMX8 device #9

Closed dvescovi1 closed 3 years ago

dvescovi1 commented 3 years ago

I have verified I can install iotedge version 1.0.8 and deploy this edge module and associated modules on raspberry pi device and all works fine. But when I deploy same on my iMX8 device it fails to start. I have attached several log files for both working raspberry pi device and my failing iMX8 device. The iMX8 device is built using yocto zeus here. I have also verified I can also deploy the same module to the PC based "simulator"(iotedgehubdev) using the same deployment.arm64v8json (with slight change to Bind to map to PC folder) that I am trying to use on my ARM64 based iMX8 device. It also works fine on simulator. For the iMX8 device there is some kind of start up authentication issue (see logs) I can not resolve. Most likely it has something to do with the difference in the moby/docker environment. I am also going to try to enlist help from NXP and maybe someone on the MS iotedge team if we can not get further.

iotedge check pi.txt iotedge module log imx8.txt iotedge module log pi.txt 2020-10-29T22_49_31_646Z-debug.log iotedge check imx8.txt

dvescovi1 commented 3 years ago

I am believing this issue has to do with the way the node-red "user" is mapped in Debian vs. yocto. raspberry pi is desktop debian whereas yocto can read .deb packages (in some cases) but there seems to be major differences on how "users" are mapped and possibly permissions. I know people have node red running on yocto (natively not in a container) so I assume it can be made to work. any insight?

dvescovi1 commented 3 years ago

just now built a yocto zeus for raspberry pi with iotedge 1.0.9.4 included. This also seems to be working fine. So my conclusion is it is something unique to the iMX8 yocto iotedge build.

dvescovi1 commented 3 years ago

I was able to resolve this issue. The default kernel version distributed with the NXP BSP release did not have the file security features enable that are required to run iot Edge. After comparing the raspberry pi kernel options with the NXP iMX8 kernel options I was able to determine the differences.