Hi !
It’s JulyOT time, and I need to update this post. A lot of amazing IoT content here:
https://julyot.dev/
And let’s go with the updated version.
The base steps for this posts are described in the official page [Install or uninstall Azure IoT Edge for Linux] (see references). In the official documentation, you can also find the prerequisites and links on additional steps.
An important note here is to mention:
By June 30, 2022 we will retire Raspberry Pi OS Stretch from the Tier 1 OS support list. To avoid potential security vulnerabilities update your host OS to Bullseye.
I’ll start here when you already have an Azure IoT environment, a connection string for an Edge Device and a Raspberry Pi 4 with Raspberry Pi OS installed. Let’s go.
Let’s prepare your device to access the Microsoft installation packages.
curl https://packages.microsoft.com/config/debian/stretch/multiarch/prod.list > ./microsoft-prod.list
Copy the generated list to the sources.list.d directory.
sudo cp ./microsoft-prod.list /etc/apt/sources.list.d/
Install the Microsoft GPG public key.
curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg
sudo cp ./microsoft.gpg /etc/apt/trusted.gpg.d/
Now that we added the Microsoft sources, it’s time to update our package lists
sudo apt-get update
[Bruno] I also did a full update using the following command
curl https://packages.microsoft.com/config/debian/11/packages-microsoft-prod.deb > ./packages-microsoft-prod.deb
sudo apt install ./packages-microsoft-prod.deb
[Bruno] and before install the docker engine (moby-engine), I installed this specific version of libssl
sudo apt-get install libssl1.0.2
Install the Moby engine.
sudo apt-get update; \
sudo apt-get install moby-engine
[Bruno] Time to update again the packages
sudo apt-get update
And time to install the most recent version of IoT Edge
sudo apt-get update; \
sudo apt-get install aziot-edge
Provision the device with its cloud identity
From here and on, you can check the official documentation on how to add your device connection string to register the device. Once the device is registered the following command will help us to check the service
sudo iotedge system status
An output similar to this one is a great OK message !
However, there are scenarios where you may find that edgeHub is not running locally.
A quick fix is to set the edgeHub version to 1.2
And, when we list the current running modules, we will have both !
Happy coding!
Greetings
El Bruno
More posts in my blog ElBruno.com.